[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all appli
From: |
Dominik Dingel |
Subject: |
[Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices |
Date: |
Fri, 26 Apr 2013 14:12:48 +0200 |
Currently only devices with a positive boot index will be pushed in the
fw_boot_order queue, so if no boot index at all will be specified,
the queue ends up empty.
Instead we push exactly as docs/bootindex.txt says the devices with
the lowest possible boot priority at the tail of the queue,
because we give them the highest available boot index.
Signed-off-by: Dominik Dingel <address@hidden>
diff --git a/vl.c b/vl.c
index 6caa5f4..84d7031 100644
--- a/vl.c
+++ b/vl.c
@@ -248,7 +248,7 @@ struct FWBootEntry {
char *suffix;
};
-static QTAILQ_HEAD(, FWBootEntry) fw_boot_order =
+static QTAILQ_HEAD(FWBootOrder, FWBootEntry) fw_boot_order =
QTAILQ_HEAD_INITIALIZER(fw_boot_order);
int nb_numa_nodes;
@@ -1213,10 +1213,21 @@ void add_boot_device_path(int32_t bootindex,
DeviceState *dev,
FWBootEntry *node, *i;
if (bootindex < 0) {
- return;
+ bootindex = INT32_MAX;
+ if (!QTAILQ_EMPTY(&fw_boot_order) &&
+ (QTAILQ_LAST(&fw_boot_order, FWBootOrder)->bootindex == INT32_MAX))
{
+ /* there is a device at the end of the queue, so we need to walk
+ the queue reverse to get the next free bootindex */
+ QTAILQ_FOREACH_REVERSE(i, &fw_boot_order, FWBootOrder, link) {
+ if (i->bootindex != bootindex) {
+ break;
+ }
+ bootindex--;
+ }
+ }
}
- assert(dev != NULL || suffix != NULL);
+ assert(dev != NULL || suffix != NULL || bootindex >= 0);
node = g_malloc0(sizeof(FWBootEntry));
node->bootindex = bootindex;
--
1.7.9.5
- Re: [Qemu-devel] [PATCH 04/10] S390: check if BIOS is available and create links, (continued)
- [Qemu-devel] [PATCH 07/10] s390-ccw.img: Rudimentary error checking., Dominik Dingel, 2013/04/26
- [Qemu-devel] [PATCH 05/10] s390-ccw.img: Detect devices with stsch., Dominik Dingel, 2013/04/26
- [Qemu-devel] [PATCH 10/10] S390: Enabling device and program selection, Dominik Dingel, 2013/04/26
- [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices,
Dominik Dingel <=
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Alexander Graf, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Anthony Liguori, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Dominik Dingel, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Anthony Liguori, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Gleb Natapov, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Dominik Dingel, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Gleb Natapov, 2013/04/27
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices, Christian Borntraeger, 2013/04/26
- [Qemu-devel] [PATCH 02/10] Common: Add quick access to first boot device, Dominik Dingel, 2013/04/26