Re: [Qemu-devel] [PULL v2 46/49] qdev: Add enum property types to QAPI schema

2014-02-18 Thread Paolo Bonzini

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Il 17/02/2014 23:30, Eric Blake ha scritto:
| Oops - we lost the ## header before add_client.  Sounds like a
| followup patch might be called for, unless you are okay tweaking
| the pull request.

Yeah, I can do that with qemu-trivial.

Paolo
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJTAxRgAAoJEBvWZb6bTYby+0kP/jo/84UmFlN6zJssfed++kkm
tffNBa2Aom2oWiPiUv80J8sstiL7QRI44szHrnj9IVew8q/iSuIjHKQSvG9NvdE+
zEB1XKqcm4dlXOpVZ+Jq4w9g2K7BLmtoEJY75oZEE/u8731EI1IMVqmzGJ1dBYsh
/XDS9drIsHfZvDNcqTtRdY7ZhFP4QZo/UrDcX4vHx8ak6QcGWllfTn8sUGmkV3rS
p643v54WCwE+ZhTtfWEHwhTU7c0tUZzr+UxGXZ6bumJ7CXCdgeZltYkqxUc/qOlb
Fg9HEZiFaDxGDtI2IzJu4G2Y67j7twM8h/USSkx1lUqaQNQ2wC7nLDZ3GsnkY8XY
450DfVKfBAN7bAFf8jVT+h2D/AgfX1qYsKrozgOGppxQRmIhU0QlPFm/1/V9paCX
0Nje6oG+89XMUl3KKstyXzKiKGQSnETu2iyVMpeLcQyDUZWdst0c7yh4yME3giIH
sS8354qcdOs2VYE02z7ceRU7M3vwv6sfuGyrN15oeFI/x42CTCseH2B8Unvn815F
Da/hHNqNy58PTgVbMybz/sxYRBKBl8euTvQuxjLyg+2SvOJUtvK040lRuVk9YwTO
Q0RmnVU5bXkO8A27l34zccnekLAbIJVgJKLVzB9tpGdONNLsUuXXwgtfP2Kw+IVI
I0fyhNi64xs6LCER/QI6
=FzxL
-END PGP SIGNATURE-



Re: [Qemu-devel] [PULL v2 46/49] qdev: Add enum property types to QAPI schema

2014-02-17 Thread Eric Blake
On 02/17/2014 03:24 PM, Andreas Färber wrote:
 From: Paolo Bonzini pbonz...@redhat.com
 
 Reviewed-by: Igor Mammedov imamm...@redhat.com
 Reviewed-by: Eric Blake ebl...@redhat.com
 Signed-off-by: Paolo Bonzini pbonz...@redhat.com
 Signed-off-by: Andreas Färber afaer...@suse.de
 ---

 +++ b/qapi-schema.json
 @@ -28,7 +28,65 @@
'data': [ 'GenericError', 'CommandNotFound', 'DeviceEncrypted',
  'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
  
 +
 +##
 +# LostTickPolicy:

...

 +
  ##
 +# BiosAtaTranslation:
 +#

...

 +
  # @add_client

Oops - we lost the ## header before add_client.  Sounds like a followup
patch might be called for, unless you are okay tweaking the pull request.

-- 
Eric Blake   eblake redhat com+1-919-301-3266
Libvirt virtualization library http://libvirt.org



signature.asc
Description: OpenPGP digital signature


[Qemu-devel] [PULL v2 46/49] qdev: Add enum property types to QAPI schema

2014-02-17 Thread Andreas Färber
From: Paolo Bonzini pbonz...@redhat.com

Reviewed-by: Igor Mammedov imamm...@redhat.com
Reviewed-by: Eric Blake ebl...@redhat.com
Signed-off-by: Paolo Bonzini pbonz...@redhat.com
Signed-off-by: Andreas Färber afaer...@suse.de
---
 hw/core/qdev-properties.c | 20 +++-
 hw/i386/kvm/i8254.c   |  6 ++---
 hw/timer/mc146818rtc.c| 14 ++--
 include/hw/block/block.h  |  6 -
 include/qemu-common.h |  8 ---
 qapi-schema.json  | 58 +++
 6 files changed, 71 insertions(+), 41 deletions(-)

diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
index 76a0c4d..0a2ca05 100644
--- a/hw/core/qdev-properties.c
+++ b/hw/core/qdev-properties.c
@@ -449,36 +449,22 @@ PropertyInfo qdev_prop_macaddr = {
 
 /* --- lost tick policy --- */
 
-static const char *lost_tick_policy_table[LOST_TICK_MAX+1] = {
-[LOST_TICK_DISCARD] = discard,
-[LOST_TICK_DELAY] = delay,
-[LOST_TICK_MERGE] = merge,
-[LOST_TICK_SLEW] = slew,
-[LOST_TICK_MAX] = NULL,
-};
-
 QEMU_BUILD_BUG_ON(sizeof(LostTickPolicy) != sizeof(int));
 
 PropertyInfo qdev_prop_losttickpolicy = {
 .name  = LostTickPolicy,
-.enum_table  = lost_tick_policy_table,
+.enum_table  = LostTickPolicy_lookup,
 .get   = get_enum,
 .set   = set_enum,
 };
 
 /* --- BIOS CHS translation */
 
-static const char *bios_chs_trans_table[] = {
-[BIOS_ATA_TRANSLATION_AUTO]  = auto,
-[BIOS_ATA_TRANSLATION_NONE]  = none,
-[BIOS_ATA_TRANSLATION_LBA]   = lba,
-[BIOS_ATA_TRANSLATION_LARGE] = large,
-[BIOS_ATA_TRANSLATION_RECHS] = rechs,
-};
+QEMU_BUILD_BUG_ON(sizeof(BiosAtaTranslation) != sizeof(int));
 
 PropertyInfo qdev_prop_bios_chs_trans = {
 .name = bios-chs-trans,
-.enum_table = bios_chs_trans_table,
+.enum_table = BiosAtaTranslation_lookup,
 .get = get_enum,
 .set = set_enum,
 };
diff --git a/hw/i386/kvm/i8254.c b/hw/i386/kvm/i8254.c
index f8f3021..59373aa 100644
--- a/hw/i386/kvm/i8254.c
+++ b/hw/i386/kvm/i8254.c
@@ -268,9 +268,9 @@ static void kvm_pit_realizefn(DeviceState *dev, Error 
**errp)
 return;
 }
 switch (s-lost_tick_policy) {
-case LOST_TICK_DELAY:
+case LOST_TICK_POLICY_DELAY:
 break; /* enabled by default */
-case LOST_TICK_DISCARD:
+case LOST_TICK_POLICY_DISCARD:
 if (kvm_check_extension(kvm_state, KVM_CAP_REINJECT_CONTROL)) {
 struct kvm_reinject_control control = { .pit_reinject = 0 };
 
@@ -300,7 +300,7 @@ static void kvm_pit_realizefn(DeviceState *dev, Error 
**errp)
 static Property kvm_pit_properties[] = {
 DEFINE_PROP_UINT32(iobase, PITCommonState, iobase,  -1),
 DEFINE_PROP_LOSTTICKPOLICY(lost_tick_policy, KVMPITState,
-   lost_tick_policy, LOST_TICK_DELAY),
+   lost_tick_policy, LOST_TICK_POLICY_DELAY),
 DEFINE_PROP_END_OF_LIST(),
 };
 
diff --git a/hw/timer/mc146818rtc.c b/hw/timer/mc146818rtc.c
index 6fb124f..8509309 100644
--- a/hw/timer/mc146818rtc.c
+++ b/hw/timer/mc146818rtc.c
@@ -185,7 +185,7 @@ static void rtc_periodic_timer(void *opaque)
 if (s-cmos_data[RTC_REG_B]  REG_B_PIE) {
 s-cmos_data[RTC_REG_C] |= REG_C_IRQF;
 #ifdef TARGET_I386
-if (s-lost_tick_policy == LOST_TICK_SLEW) {
+if (s-lost_tick_policy == LOST_TICK_POLICY_SLEW) {
 if (s-irq_reinject_on_ack_count = RTC_REINJECT_ON_ACK_COUNT)
 s-irq_reinject_on_ack_count = 0;  
 apic_reset_irq_delivered();
@@ -708,7 +708,7 @@ static int rtc_post_load(void *opaque, int version_id)
 
 #ifdef TARGET_I386
 if (version_id = 2) {
-if (s-lost_tick_policy == LOST_TICK_SLEW) {
+if (s-lost_tick_policy == LOST_TICK_POLICY_SLEW) {
 rtc_coalesced_timer_update(s);
 }
 }
@@ -749,7 +749,7 @@ static void rtc_notify_clock_reset(Notifier *notifier, void 
*data)
 periodic_timer_update(s, now);
 check_update_timer(s);
 #ifdef TARGET_I386
-if (s-lost_tick_policy == LOST_TICK_SLEW) {
+if (s-lost_tick_policy == LOST_TICK_POLICY_SLEW) {
 rtc_coalesced_timer_update(s);
 }
 #endif
@@ -774,7 +774,7 @@ static void rtc_reset(void *opaque)
 qemu_irq_lower(s-irq);
 
 #ifdef TARGET_I386
-if (s-lost_tick_policy == LOST_TICK_SLEW) {
+if (s-lost_tick_policy == LOST_TICK_POLICY_SLEW) {
 s-irq_coalesced = 0;
 }
 #endif
@@ -835,11 +835,11 @@ static void rtc_realizefn(DeviceState *dev, Error **errp)
 
 #ifdef TARGET_I386
 switch (s-lost_tick_policy) {
-case LOST_TICK_SLEW:
+case LOST_TICK_POLICY_SLEW:
 s-coalesced_timer =
 timer_new_ns(rtc_clock, rtc_coalesced_timer, s);
 break;
-case LOST_TICK_DISCARD:
+case LOST_TICK_POLICY_DISCARD:
 break;
 default:
 error_setg(errp, Invalid lost tick policy.);
@@ -890,7 +890,7 @@ ISADevice *rtc_init(ISABus *bus, int base_year, qemu_irq 
intercept_irq)
 static Property