[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState
From: |
Gonglei |
Subject: |
Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState |
Date: |
Wed, 28 Jan 2015 09:48:02 +0800 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; rv:11.0) Gecko/20120327 Thunderbird/11.0.1 |
On 2015/1/27 18:49, Dinar Valeev wrote:
> On 01/27/2015 10:18 AM, Gonglei wrote:
>> On 2015/1/27 16:57, Dinar Valeev wrote:
>>
>>> On 01/27/2015 03:51 AM, Gonglei wrote:
>>>> On 2015/1/27 7:52, address@hidden wrote:
>>>>
>>>>> From: Dinar Valeev <address@hidden>
>>>>>
>>>>> on sPAPR we need to update boot_order in MachineState in case it
>>>>> got changed on reset.
>>>>>
>>>>> Signed-off-by: Dinar Valeev <address@hidden>
>>>>> ---
>>>>> bootdevice.c | 3 +++
>>>>> 1 file changed, 3 insertions(+)
>>>>>
>>>>> diff --git a/bootdevice.c b/bootdevice.c
>>>>> index 5914417..4f11a06 100644
>>>>> --- a/bootdevice.c
>>>>> +++ b/bootdevice.c
>>>>> @@ -26,6 +26,7 @@
>>>>> #include "qapi/visitor.h"
>>>>> #include "qemu/error-report.h"
>>>>> #include "hw/hw.h"
>>>>> +#include "hw/boards.h"
>>>>>
>>>>> typedef struct FWBootEntry FWBootEntry;
>>>>>
>>>>> @@ -50,6 +51,8 @@ void qemu_register_boot_set(QEMUBootSetHandler *func,
>>>>> void *opaque)
>>>>> void qemu_boot_set(const char *boot_order, Error **errp)
>>>>> {
>>>>> Error *local_err = NULL;
>>>>> + MachineState *machine = MACHINE(qdev_get_machine());
>>>>> + machine->boot_order = boot_order;
>>>>>
>>>>> if (!boot_set_handler) {
>>>>> error_setg(errp, "no function defined to set boot device list
>>>>> for"
>>>>
>>>> Have you registered boot set handler on ppc/sPAPR platform by calling
>>>> qemu_register_boot_set()? Otherwise qemu_boot_set function
>>>> will return error.
>>> No, I set boot_order on each machine reset. My tests are showing it works
>>> without an error.
>>
>> That's interesting. Does this function be called?
> Yes, then simply returns.
>> Would you debug it by setting a breakpoint ?
> I added a trace event.
> if (!boot_set_handler) {
> + trace_qemu_boot_set(boot_order);
> error_setg(errp, "no function defined to set boot device list for"
> " this architecture");
> return;
>
> And I see this now in qemu's monitor. Still I don't see error message.
That's because NULL is passed to this function in restore_boot_order()
the error is ignored (commit f183993). I have seen the previous conversation
about your patch serials. And I think this is the reason which
you moved machine->boot_order = boot_order before
checking boot_set_handler variable based on Alexander's
suggestion, right? But I think this is not a good idea.
Regards,
-Gonglei
- [Qemu-ppc] Update boot_order on reset for sPAPR, dvaleev, 2015/01/26
- [Qemu-ppc] [PATCH 1/2] sPAPR: reread boot_device on reset, dvaleev, 2015/01/26
- [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, dvaleev, 2015/01/26
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Gonglei, 2015/01/26
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Dinar Valeev, 2015/01/27
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Gonglei, 2015/01/27
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Dinar Valeev, 2015/01/27
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Dinar Valeev, 2015/01/27
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState,
Gonglei <=
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Dinar Valeev, 2015/01/28
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Gonglei, 2015/01/28
- Re: [Qemu-ppc] [Qemu-devel] [PATCH 2/2] bootdevice: update boot_order in MachineState, Markus Armbruster, 2015/01/29
- Re: [Qemu-ppc] [Qemu-devel] [PATCH 2/2] bootdevice: update boot_order in MachineState, Alexander Graf, 2015/01/29
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Alexander Graf, 2015/01/29
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Gonglei, 2015/01/29
- Re: [Qemu-ppc] [PATCH 2/2] bootdevice: update boot_order in MachineState, Alexander Graf, 2015/01/29
Re: [Qemu-ppc] [Qemu-devel] Update boot_order on reset for sPAPR, Alexey Kardashevskiy, 2015/01/26