[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 2/2] CA-162192: Fix rebooting on some EFI-booted systems



>>> On 12.03.15 at 15:07, <andrew.cooper3@xxxxxxxxxx> wrote:
> On 12/03/15 11:44, Jan Beulich wrote:
>> @@ -452,6 +464,7 @@ static struct dmi_system_id __initdata r
>>  
>>  static int __init reboot_init(void)
>>  {
>> +    default_reboot_type();
> 
> This still suffers from the bug Ross fixed in patch 1.  If the user
> provides an override, the dmi quirks should be skipped so the request on
> the command line is honoured.

And I assumed he'd resubmit that patch anyway, i.e. I didn't even
mean to fix this here.

>> @@ -532,6 +550,11 @@ void machine_restart(unsigned int delay_
>>              reboot_type = (((attempt == 1) && (orig_reboot_type == 
>> BOOT_ACPI))
>>                             ? BOOT_ACPI : BOOT_TRIPLE);
>>              break;
>> +        case BOOT_EFI:
>> +            efi_reset_system(reboot_mode != 0);
>> +            reboot_type = acpi_disabled ? BOOT_KBD : BOOT_ACPI;
>> +            *((unsigned short *)__va(0x472)) = reboot_mode;
>> +            break;
> 
> Update the reboot type before calling efi_reset_system()
> 
> That way, if efi_reset_system() does fault, we will reenter
> machine_restart() and take an alternate route.
> 
> The exact symptoms with the reference code is that efi_reset_system()
> causes a #GP fault which breaks back into Xen, and the panic() path
> reenters efi_reset_system() at which point the system wedges and needs a
> hard power cycle.

Good point, flipped.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.