Re: [Xen-devel] [PATCH] x86: Use ACPI reboot method for Dell OptiPlex 9020

2017-01-17 Thread Jan Beulich
>>> On 14.12.16 at 14:15,  wrote:
> On 14/12/16 12:58, Jan Beulich wrote:
> On 14.12.16 at 12:12,  wrote:
>>> When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
>>> EFI runtime instead of rebooting.
>> Has it been understood what the #GP is due to? I.e. is it namely
>> not because of a mis-aligned SSE instruction memory reference?
> 
> (XEN) [  349.551011] Hardware Dom0 shutdown: rebooting machine
> (XEN) [  349.553668] APIC error on CPU0: 40(00)
> (XEN) [  349.553675] [ Xen-4.7.0-xs128737-d  x86_64  debug=y  Not tainted 
> ]
> (XEN) [  349.553676] CPU:0
> (XEN) [  349.553677] RIP:e008:[] db7aa368
> (XEN) [  349.553678] RFLAGS: 00010246   CONTEXT: hypervisor
> (XEN) [  349.553680] rax: d48595e0   rbx:    rcx: 
> 5a5a5a5a
> (XEN) [  349.553681] rdx: 1830   rsi:    rdi: 
> 8300ded37bb8
> (XEN) [  349.553682] rbp: 0021   rsp: 8300ded37b68   r8:  
> 
> (XEN) [  349.553682] r9:  0001   r10: 0004   r11: 
> 0200
> (XEN) [  349.553683] r12:    r13: 1830   r14: 
> 0065
> (XEN) [  349.553684] r15: 0010   cr0: 80050033   cr4: 
> 001526e0
> (XEN) [  349.553685] cr3: 00040df7c000   cr2: 7f7186aa1a40
> (XEN) [  349.553686] ds: 002b   es: 002b   fs:    gs:    ss: e010   
> cs: e008
> (XEN) [  349.553687] Xen code around  (db7aa368):
> (XEN) [  349.553688]  08 00 00 b9 5a 5a 5a 5a  50 18 48 8b d8 48 83 f8 1f 
> 74 0f 48 8b 15 dd
> (XEN) [  349.553692] Xen stack trace from rsp=8300ded37b68:
> (XEN) [  349.553693]0700ded37bb8 80022023 83041b92b914 
> 83041b80
> (XEN) [  349.553694] db79f348  
> 
> (XEN) [  349.553696]  000d 
> db7ff870
> (XEN) [  349.553697]  005162b3bf76 
> 
> (XEN) [  349.553698]7cff212c83e7 82d080244f57 0010 
> db7fe671
> (XEN) [  349.553699]8300ded37c38 0206 ded28000 
> 
> (XEN) [  349.553701] db7e0311  
> 
> (XEN) [  349.553702] 080f  
> 
> (XEN) [  349.553703]00040df7c000 82d080101242 ded28000 
> 8300ded37ca8
> (XEN) [  349.553704]82d080352b00 8300ded37ca0  
> fffe
> (XEN) [  349.553706]8300ded37cf8 82d0801956e7 8300ded37cd0 
> 0046
> (XEN) [  349.553707]8300dee1d000   
> 8300ded37dd8
> (XEN) [  349.553709]00fb 005162b3bf76 8300ded37d08 
> 82d080195785
> (XEN) [  349.553710]8300ded37d28 82d080137482 0016 
> 
> (XEN) [  349.553711]8300ded37d38 82d080195de7 8300ded37dc8 
> 82d08017532c
> (XEN) [  349.553713]   
> 
> (XEN) [  349.553714]83040df78c50 8300ded97000 8000dee1d000 
> 
> (XEN) [  349.553715] 83040defc000 8300ded37dc0 
> 005162dd573d
> (XEN) [  349.553717]83040df77010 83040df770e8 005162b3bf76 
> 0010
> (XEN) [  349.553718]7cff212c8207 82d080244f57 0010 
> 005162b3bf76
> (XEN) [  349.553720] Xen call trace:
> (XEN) [  349.553721][] db7aa368
> (XEN) [  349.553721] 
> (XEN) [  349.553722] 
> (XEN) [  349.553723] 
> (XEN) [  349.553723] Panic on CPU 0:
> (XEN) [  349.553724] GENERAL PROTECTION FAULT
> (XEN) [  349.553724] [error_code=]
> (XEN) [  349.553725] 
> (XEN) [  349.553725] 
> (XEN) [  349.553726] Reboot in five seconds...
> (XEN) [  349.553727] Executing kexec image on cpu0
> (XEN) [  349.553728] Shot down all CPUs
> 
> 
> This is caused by callq *0x18(%rax)
> 
> The only #GP fault to be have is if the end of that pointer is
> non-canonical.

Thanks for clarifying - I'm fine with the patch then.

Jan

___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH] x86: Use ACPI reboot method for Dell OptiPlex 9020

2016-12-14 Thread Andrew Cooper
On 14/12/16 13:21, Jan Beulich wrote:
 On 14.12.16 at 14:15,  wrote:
>> On 14/12/16 12:58, Jan Beulich wrote:
>> On 14.12.16 at 12:12,  wrote:
 When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
 EFI runtime instead of rebooting.
>>> Has it been understood what the #GP is due to? I.e. is it namely
>>> not because of a mis-aligned SSE instruction memory reference?
>> (XEN) [  349.551011] Hardware Dom0 shutdown: rebooting machine
>> (XEN) [  349.553668] APIC error on CPU0: 40(00)
>> (XEN) [  349.553675] [ Xen-4.7.0-xs128737-d  x86_64  debug=y  Not 
>> tainted ]
>> (XEN) [  349.553676] CPU:0
>> (XEN) [  349.553677] RIP:e008:[] db7aa368
>> (XEN) [  349.553678] RFLAGS: 00010246   CONTEXT: hypervisor
>> (XEN) [  349.553680] rax: d48595e0   rbx:    rcx: 
>> 5a5a5a5a
>> (XEN) [  349.553681] rdx: 1830   rsi:    rdi: 
>> 8300ded37bb8
>> (XEN) [  349.553682] rbp: 0021   rsp: 8300ded37b68   r8:  
>> 
>> (XEN) [  349.553682] r9:  0001   r10: 0004   r11: 
>> 0200
>> (XEN) [  349.553683] r12:    r13: 1830   r14: 
>> 0065
>> (XEN) [  349.553684] r15: 0010   cr0: 80050033   cr4: 
>> 001526e0
>> (XEN) [  349.553685] cr3: 00040df7c000   cr2: 7f7186aa1a40
>> (XEN) [  349.553686] ds: 002b   es: 002b   fs:    gs:    ss: e010   
>> cs: e008
>> (XEN) [  349.553687] Xen code around  (db7aa368):
>> (XEN) [  349.553688]  08 00 00 b9 5a 5a 5a 5a  50 18 48 8b d8 48 83 f8 
>> 1f 
>> 74 0f 48 8b 15 dd
>> (XEN) [  349.553692] Xen stack trace from rsp=8300ded37b68:
>> (XEN) [  349.553693]0700ded37bb8 80022023 83041b92b914 
>> 83041b80
>> (XEN) [  349.553694] db79f348  
>> 
>> (XEN) [  349.553696]  000d 
>> db7ff870
>> (XEN) [  349.553697]  005162b3bf76 
>> 
>> (XEN) [  349.553698]7cff212c83e7 82d080244f57 0010 
>> db7fe671
>> (XEN) [  349.553699]8300ded37c38 0206 ded28000 
>> 
>> (XEN) [  349.553701] db7e0311  
>> 
>> (XEN) [  349.553702] 080f  
>> 
>> (XEN) [  349.553703]00040df7c000 82d080101242 ded28000 
>> 8300ded37ca8
>> (XEN) [  349.553704]82d080352b00 8300ded37ca0  
>> fffe
>> (XEN) [  349.553706]8300ded37cf8 82d0801956e7 8300ded37cd0 
>> 0046
>> (XEN) [  349.553707]8300dee1d000   
>> 8300ded37dd8
>> (XEN) [  349.553709]00fb 005162b3bf76 8300ded37d08 
>> 82d080195785
>> (XEN) [  349.553710]8300ded37d28 82d080137482 0016 
>> 
>> (XEN) [  349.553711]8300ded37d38 82d080195de7 8300ded37dc8 
>> 82d08017532c
>> (XEN) [  349.553713]   
>> 
>> (XEN) [  349.553714]83040df78c50 8300ded97000 8000dee1d000 
>> 
>> (XEN) [  349.553715] 83040defc000 8300ded37dc0 
>> 005162dd573d
>> (XEN) [  349.553717]83040df77010 83040df770e8 005162b3bf76 
>> 0010
>> (XEN) [  349.553718]7cff212c8207 82d080244f57 0010 
>> 005162b3bf76
>> (XEN) [  349.553720] Xen call trace:
>> (XEN) [  349.553721][] db7aa368
>> (XEN) [  349.553721] 
>> (XEN) [  349.553722] 
>> (XEN) [  349.553723] 
>> (XEN) [  349.553723] Panic on CPU 0:
>> (XEN) [  349.553724] GENERAL PROTECTION FAULT
>> (XEN) [  349.553724] [error_code=]
>> (XEN) [  349.553725] 
>> (XEN) [  349.553725] 
>> (XEN) [  349.553726] Reboot in five seconds...
>> (XEN) [  349.553727] Executing kexec image on cpu0
>> (XEN) [  349.553728] Shot down all CPUs
>>
>>
>> This is caused by callq *0x18(%rax)
>>
>> The only #GP fault to be have is if the end of that pointer is
>> non-canonical.
> Thanks for clarifying - I'm fine with the patch then.

Ok - I will queue it.

~Andrew

___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH] x86: Use ACPI reboot method for Dell OptiPlex 9020

2016-12-14 Thread Andrew Cooper
On 14/12/16 12:58, Jan Beulich wrote:
 On 14.12.16 at 12:12,  wrote:
>> When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
>> EFI runtime instead of rebooting.
> Has it been understood what the #GP is due to? I.e. is it namely
> not because of a mis-aligned SSE instruction memory reference?

(XEN) [  349.551011] Hardware Dom0 shutdown: rebooting machine
(XEN) [  349.553668] APIC error on CPU0: 40(00)
(XEN) [  349.553675] [ Xen-4.7.0-xs128737-d  x86_64  debug=y  Not tainted 
]
(XEN) [  349.553676] CPU:0
(XEN) [  349.553677] RIP:e008:[] db7aa368
(XEN) [  349.553678] RFLAGS: 00010246   CONTEXT: hypervisor
(XEN) [  349.553680] rax: d48595e0   rbx:    rcx: 
5a5a5a5a
(XEN) [  349.553681] rdx: 1830   rsi:    rdi: 
8300ded37bb8
(XEN) [  349.553682] rbp: 0021   rsp: 8300ded37b68   r8:  

(XEN) [  349.553682] r9:  0001   r10: 0004   r11: 
0200
(XEN) [  349.553683] r12:    r13: 1830   r14: 
0065
(XEN) [  349.553684] r15: 0010   cr0: 80050033   cr4: 
001526e0
(XEN) [  349.553685] cr3: 00040df7c000   cr2: 7f7186aa1a40
(XEN) [  349.553686] ds: 002b   es: 002b   fs:    gs:    ss: e010   cs: 
e008
(XEN) [  349.553687] Xen code around  (db7aa368):
(XEN) [  349.553688]  08 00 00 b9 5a 5a 5a 5a  50 18 48 8b d8 48 83 f8 1f 
74 0f 48 8b 15 dd
(XEN) [  349.553692] Xen stack trace from rsp=8300ded37b68:
(XEN) [  349.553693]0700ded37bb8 80022023 83041b92b914 
83041b80
(XEN) [  349.553694] db79f348  

(XEN) [  349.553696]  000d 
db7ff870
(XEN) [  349.553697]  005162b3bf76 

(XEN) [  349.553698]7cff212c83e7 82d080244f57 0010 
db7fe671
(XEN) [  349.553699]8300ded37c38 0206 ded28000 

(XEN) [  349.553701] db7e0311  

(XEN) [  349.553702] 080f  

(XEN) [  349.553703]00040df7c000 82d080101242 ded28000 
8300ded37ca8
(XEN) [  349.553704]82d080352b00 8300ded37ca0  
fffe
(XEN) [  349.553706]8300ded37cf8 82d0801956e7 8300ded37cd0 
0046
(XEN) [  349.553707]8300dee1d000   
8300ded37dd8
(XEN) [  349.553709]00fb 005162b3bf76 8300ded37d08 
82d080195785
(XEN) [  349.553710]8300ded37d28 82d080137482 0016 

(XEN) [  349.553711]8300ded37d38 82d080195de7 8300ded37dc8 
82d08017532c
(XEN) [  349.553713]   

(XEN) [  349.553714]83040df78c50 8300ded97000 8000dee1d000 

(XEN) [  349.553715] 83040defc000 8300ded37dc0 
005162dd573d
(XEN) [  349.553717]83040df77010 83040df770e8 005162b3bf76 
0010
(XEN) [  349.553718]7cff212c8207 82d080244f57 0010 
005162b3bf76
(XEN) [  349.553720] Xen call trace:
(XEN) [  349.553721][] db7aa368
(XEN) [  349.553721] 
(XEN) [  349.553722] 
(XEN) [  349.553723] 
(XEN) [  349.553723] Panic on CPU 0:
(XEN) [  349.553724] GENERAL PROTECTION FAULT
(XEN) [  349.553724] [error_code=]
(XEN) [  349.553725] 
(XEN) [  349.553725] 
(XEN) [  349.553726] Reboot in five seconds...
(XEN) [  349.553727] Executing kexec image on cpu0
(XEN) [  349.553728] Shot down all CPUs


This is caused by callq *0x18(%rax)

The only #GP fault to be have is if the end of that pointer is
non-canonical.

~Andrew

___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH] x86: Use ACPI reboot method for Dell OptiPlex 9020

2016-12-14 Thread Jan Beulich
>>> On 14.12.16 at 12:12,  wrote:
> When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
> EFI runtime instead of rebooting.

Has it been understood what the #GP is due to? I.e. is it namely
not because of a mis-aligned SSE instruction memory reference?

Jan


___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH] x86: Use ACPI reboot method for Dell OptiPlex 9020

2016-12-14 Thread Andrew Cooper
On 14/12/16 11:12, Ross Lagerwall wrote:
> When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
> EFI runtime instead of rebooting. Quirk this hardware to use the ACPI
> reboot method instead.
>
> dmidecode info:
>
> BIOS Information
> Vendor: Dell Inc.
> Version: A15
> Release Date: 11/08/2015
> System Information
> Manufacturer: Dell Inc.
> Product Name: OptiPlex 9020
> Version: 00
>
> Signed-off-by: Ross Lagerwall 

Reviewed-by: Andrew Cooper 

___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel


[Xen-devel] [PATCH] x86: Use ACPI reboot method for Dell OptiPlex 9020

2016-12-14 Thread Ross Lagerwall
When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
EFI runtime instead of rebooting. Quirk this hardware to use the ACPI
reboot method instead.

dmidecode info:

BIOS Information
Vendor: Dell Inc.
Version: A15
Release Date: 11/08/2015
System Information
Manufacturer: Dell Inc.
Product Name: OptiPlex 9020
Version: 00

Signed-off-by: Ross Lagerwall 
---
 xen/arch/x86/shutdown.c | 13 +
 1 file changed, 13 insertions(+)

diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 55f6840..3d669d1 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -128,11 +128,15 @@ static int __init override_reboot(struct dmi_system_id *d)
 {
 enum reboot_type type = (long)d->driver_data;
 
+if ( type == BOOT_ACPI && acpi_disabled )
+type = BOOT_KBD;
+
 if ( reboot_type != type )
 {
 static const char *__initdata msg[] =
 {
 [BOOT_KBD]  = "keyboard controller",
+[BOOT_ACPI] = "ACPI",
 [BOOT_CF9]  = "PCI",
 };
 
@@ -438,6 +442,15 @@ static struct dmi_system_id __initdata reboot_dmi_table[] 
= {
 DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390"),
 },
 },
+{/* Handle problems with rebooting on Dell OptiPlex 9020. */
+.callback = override_reboot,
+.driver_data = (void *)(long)BOOT_ACPI,
+.ident = "Dell OptiPlex 9020",
+.matches = {
+DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020"),
+},
+},
 {/* Handle problems with rebooting on the Latitude E6320. */
 .callback = override_reboot,
 .driver_data = (void *)(long)BOOT_CF9,
-- 
2.7.4


___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel