[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all a
From: |
Anthony Liguori |
Subject: |
Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices |
Date: |
Fri, 26 Apr 2013 11:36:11 -0500 |
User-agent: |
Notmuch/0.15.2+77~g661dcf8 (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu) |
Dominik Dingel <address@hidden> writes:
> 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>
Wouldn't this break the ability to say: "don't every try to boot from
this device?"
As an example, some people want to force PXE boot to not be tried on
certain networks.
Regards,
Anthony Liguori
>
> 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 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, Alexander Graf, 2013/04/26
- Re: [Qemu-devel] [PATCH 01/10] Common: Add a default bootindex for all applicable devices,
Anthony Liguori <=
- 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
Re: [Qemu-devel] [PATCH 00/10] S390: Enhance s390 BIOS to enable bootdevice selection, Alexander Graf, 2013/04/26