mirror of https://github.com/xqemu/xqemu.git
bootindex: add check bootindex function
Determine whether a given bootindex exists or not. If exists, we report an error. Signed-off-by: Gonglei <arei.gonglei@huawei.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
bc74112f7e
commit
694fb857ab
15
bootdevice.c
15
bootdevice.c
|
@ -36,6 +36,21 @@ struct FWBootEntry {
|
||||||
static QTAILQ_HEAD(, FWBootEntry) fw_boot_order =
|
static QTAILQ_HEAD(, FWBootEntry) fw_boot_order =
|
||||||
QTAILQ_HEAD_INITIALIZER(fw_boot_order);
|
QTAILQ_HEAD_INITIALIZER(fw_boot_order);
|
||||||
|
|
||||||
|
void check_boot_index(int32_t bootindex, Error **errp)
|
||||||
|
{
|
||||||
|
FWBootEntry *i;
|
||||||
|
|
||||||
|
if (bootindex >= 0) {
|
||||||
|
QTAILQ_FOREACH(i, &fw_boot_order, link) {
|
||||||
|
if (i->bootindex == bootindex) {
|
||||||
|
error_setg(errp, "The bootindex %d has already been used",
|
||||||
|
bootindex);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void add_boot_device_path(int32_t bootindex, DeviceState *dev,
|
void add_boot_device_path(int32_t bootindex, DeviceState *dev,
|
||||||
const char *suffix)
|
const char *suffix)
|
||||||
{
|
{
|
||||||
|
|
|
@ -213,6 +213,7 @@ void add_boot_device_path(int32_t bootindex, DeviceState *dev,
|
||||||
char *get_boot_devices_list(size_t *size, bool ignore_suffixes);
|
char *get_boot_devices_list(size_t *size, bool ignore_suffixes);
|
||||||
|
|
||||||
DeviceState *get_boot_device(uint32_t position);
|
DeviceState *get_boot_device(uint32_t position);
|
||||||
|
void check_boot_index(int32_t bootindex, Error **errp);
|
||||||
|
|
||||||
QemuOpts *qemu_get_machine_opts(void);
|
QemuOpts *qemu_get_machine_opts(void);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue