[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v6 07/27] vl.c: add setter/getter functions for boot
From: |
arei.gonglei |
Subject: |
[Qemu-devel] [PATCH v6 07/27] vl.c: add setter/getter functions for bootindex property |
Date: |
Sat, 30 Aug 2014 18:00:07 +0800 |
From: Gonglei <address@hidden>
when we remove bootindex form qdev.property to qom.property,
we can use those functions set/get bootindex property for all
correlative devices.
Signed-off-by: Gonglei <address@hidden>
---
include/sysemu/sysemu.h | 4 ++++
vl.c | 27 +++++++++++++++++++++++++++
2 files changed, 31 insertions(+)
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 672984c..ca231e4 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -208,6 +208,10 @@ void do_usb_del(Monitor *mon, const QDict *qdict);
void usb_info(Monitor *mon, const QDict *qdict);
void check_boot_index(int32_t bootindex, Error **errp);
+void get_bootindex(int32_t *bootindex, Visitor *v,
+ const char *name, Error **errp);
+void set_bootindex(int32_t *bootindex, Visitor *v,
+ const char *name, Error **errp);
void del_boot_device_path(DeviceState *dev);
void add_boot_device_path(int32_t bootindex, DeviceState *dev,
const char *suffix);
diff --git a/vl.c b/vl.c
index f2c3b2d..4363185 100644
--- a/vl.c
+++ b/vl.c
@@ -1252,6 +1252,33 @@ void check_boot_index(int32_t bootindex, Error **errp)
}
}
+void get_bootindex(int32_t *bootindex, Visitor *v,
+ const char *name, Error **errp)
+{
+ visit_type_int32(v, bootindex, name, errp);
+}
+
+void set_bootindex(int32_t *bootindex, Visitor *v,
+ const char *name, Error **errp)
+{
+ int32_t boot_index;
+ Error *local_err = NULL;
+
+ visit_type_int32(v, &boot_index, name, &local_err);
+
+ if (local_err == NULL) {
+ /* check the bootindex existes or not in fw_boot_order list */
+ check_boot_index(boot_index, &local_err);
+ }
+
+ if (local_err) {
+ error_propagate(errp, local_err);
+ return;
+ }
+ /* change bootindex to a new one */
+ *bootindex = boot_index;
+}
+
static bool is_same_fw_dev_path(DeviceState *src, DeviceState *dst)
{
bool ret = false;
--
1.7.12.4
- [Qemu-devel] [PATCH v6 09/27] e1000: add bootindex to qom property, (continued)
- [Qemu-devel] [PATCH v6 09/27] e1000: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 05/27] bootindex: support to set a existent device's bootindex to -1, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 17/27] net: remove bootindex property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 25/27] virtio-blk: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 21/27] redirect: remove bootindex property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 20/27] vfio: remove bootindex property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 26/27] block: remove bootindex property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 23/27] ide: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 08/27] virtio-net: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 24/27] scsi: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 07/27] vl.c: add setter/getter functions for bootindex property,
arei.gonglei <=
- [Qemu-devel] [PATCH v6 19/27] pci-assign: remove bootindex property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 18/27] host-libusb: remove bootindex property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 27/27] bootindex: delete bootindex when device is removed, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 14/27] spapr_lian: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 03/27] fw_cfg: add fw_cfg_machine_reset function, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 12/27] pcnet: add bootindex to qom property, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 22/27] isa-fdc: remove bootindexA/B property from qdev to qom, arei.gonglei, 2014/08/30
- [Qemu-devel] [PATCH v6 16/27] usb-net: add bootindex to qom property, arei.gonglei, 2014/08/30