[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 2/7] bootindex: add del_boot_device_path func
From: |
Eduardo Habkost |
Subject: |
Re: [Qemu-devel] [PATCH v3 2/7] bootindex: add del_boot_device_path function |
Date: |
Fri, 1 Aug 2014 11:06:00 -0300 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Sat, Jul 26, 2014 at 12:45:28PM +0800, address@hidden wrote:
> From: Gonglei <address@hidden>
>
> Introduce a del_boot_device_path() cleanup fw_cfg content
> when hot-unplugging devcie refer to bootindex.
>
> Signed-off-by: Gonglei <address@hidden>
> Signed-off-by: Chenliang <address@hidden>
> ---
> include/sysemu/sysemu.h | 1 +
> vl.c | 17 +++++++++++++++++
> 2 files changed, 18 insertions(+)
>
> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
> index e1b0659..7a79ff4 100644
> --- a/include/sysemu/sysemu.h
> +++ b/include/sysemu/sysemu.h
> @@ -209,6 +209,7 @@ void usb_info(Monitor *mon, const QDict *qdict);
>
> void add_boot_device_path(int32_t bootindex, DeviceState *dev,
> const char *suffix);
> +void del_boot_device_path(DeviceState *dev);
> void modify_boot_device_path(int32_t bootindex, DeviceState *dev,
> const char *suffix);
> char *get_boot_devices_list(size_t *size, bool ignore_suffixes);
> diff --git a/vl.c b/vl.c
> index 3e42eaa..0cdadb4 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -1248,6 +1248,23 @@ void add_boot_device_path(int32_t bootindex,
> DeviceState *dev,
> QTAILQ_INSERT_TAIL(&fw_boot_order, node, link);
> }
>
> +void del_boot_device_path(DeviceState *dev)
> +{
> + FWBootEntry *i;
> +
> + assert(dev != NULL);
> +
> + QTAILQ_FOREACH(i, &fw_boot_order, link) {
> + if (i->dev->id && dev->id && !strcmp(i->dev->id, dev->id)) {
What if the device doesn't have any ID set? I don't see anything on
add_boot_device_path() ensuring that dev->id is always set.
Why you don't just check if i->dev == dev?
> + /* remove all entries of the assigend dev */
> + QTAILQ_REMOVE(&fw_boot_order, i, link);
> + g_free(i->suffix);
> + g_free(i);
> + break;
> + }
> + }
> +}
> +
> void modify_boot_device_path(int32_t bootindex, DeviceState *dev,
> const char *suffix)
> {
> --
> 1.7.12.4
>
>
>
--
Eduardo
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [PATCH v3 2/7] bootindex: add del_boot_device_path function,
Eduardo Habkost <=