[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 0/8] spapr: bootindex support
From: |
Alexey Kardashevskiy |
Subject: |
Re: [Qemu-devel] [PATCH v4 0/8] spapr: bootindex support |
Date: |
Fri, 13 Dec 2013 14:19:04 +1100 |
User-agent: |
Mozilla/5.0 (X11; Linux i686 on x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.1 |
On 12/13/2013 01:05 AM, Michael S. Tsirkin wrote:
> On Wed, Dec 11, 2013 at 09:22:13PM +1100, Alexey Kardashevskiy wrote:
>> With the great help from Paolo, I am presenting yet another try of bootindex
>> support on sPAPR, this time with some QOM fixes. Details are in the commit
>> messages.
>> Please, comment. Thanks.
>>
>> Alexey Kardashevskiy (5):
>> boot: extend get_boot_devices_list() to ignore suffixes
>> spapr-llan: add to boot device list
>> spapr-vio: fix firmware names
>> qdev: introduce FWPathProvider interface
>> spapr: define interface to fix device pathname
>>
>> Hervé Poussineau (1):
>> qom: detect bad reentrance during object_class_foreach
>>
>> Paolo Bonzini (2):
>> qom: do not register interface "types" in the type table
>> vl: allow customizing the class of /machine
>
> Looks good overall.
> But this seems to suffer from the same problem as existing
> bootindex code on x86: you can't add a bootable device
> by hotplug.
Why? The boot list is delivered to SLOF via the device tree which is
composed on a machine reset (spapr_finalize_fdt() calls
get_boot_devices_list() and that's it) so if a bootable device was
hotplugged, then after reset it will be in the list.
> And we really want to fix it on x86 too.
> This might be fixable using FW CFG read callback, and updating
> the bootindex blob dynamically.
> See how e.g. acpi_build_update works.
Sorry, since I do not have good understanding what is happening in x86, I
need more details.
Because I would implement qemu_add_machine_reset_notifier (copied from
qemu_add_machine_init_done_notifier thing) and make fw_cfg_init() register
a reset notifier.
Or just call qemu_add_machine_init_done_notifier() on a machine reset - I
do not really see a code in any of those notifiers which could not be
executed on a machine reset (but again, I am even more ignorant in x86
field than usual :) ).
--
Alexey
- [Qemu-devel] [PATCH v4 4/8] spapr-llan: add to boot device list, (continued)
- [Qemu-devel] [PATCH v4 4/8] spapr-llan: add to boot device list, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 8/8] spapr: define interface to fix device pathname, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 1/8] qom: do not register interface "types" in the type table, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 2/8] qom: detect bad reentrance during object_class_foreach, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 6/8] qdev: introduce FWPathProvider interface, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 7/8] vl: allow customizing the class of /machine, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 3/8] boot: extend get_boot_devices_list() to ignore suffixes, Alexey Kardashevskiy, 2013/12/11
- [Qemu-devel] [PATCH v4 5/8] spapr-vio: fix firmware names, Alexey Kardashevskiy, 2013/12/11
- Re: [Qemu-devel] [PATCH v4 0/8] spapr: bootindex support, Paolo Bonzini, 2013/12/11
- Re: [Qemu-devel] [PATCH v4 0/8] spapr: bootindex support, Michael S. Tsirkin, 2013/12/12
- Re: [Qemu-devel] [PATCH v4 0/8] spapr: bootindex support,
Alexey Kardashevskiy <=