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

Re: [Xen-devel] Resend: Linux 4.11-rc7: kernel BUG at drivers/xen/events/events_base.c:1221



On 25/04/17 08:42, Juergen Gross wrote:
> On 25/04/17 08:35, Sander Eikelenboom wrote:
>> On 25/04/17 08:14, Juergen Gross wrote:
>>> On 24/04/17 22:15, Boris Ostrovsky wrote:
>>>> On 04/24/2017 12:10 PM, Sander Eikelenboom wrote:
>>>>> On 24/04/17 17:49, Boris Ostrovsky wrote:
>>>>>> On 04/24/2017 10:20 AM, Sander Eikelenboom wrote:
>>>>>>> Hi Boris,
>>>>>>>
>>>>>>> Nope, not that i am aware of.
>>>>>> If you can keep console while running this, can you add these changes
>>>>>> and see if we ever unbind the work vector (you can even add dump_stack()
>>>>>> in __unbind_from_irq() for good measure)? (I added HHH for easy grepping)
>>>>>>
>>>>>> Also do 'grep -i work /proc/interrupts' so that we know which IRQ the
>>>>>> work interrupt is.
>>>>>>
>>>>>> -boris
>>>>> Hmmm i f*cked up and accidently compiled a tree with "for linus 4.12"
>>>>> pulled in and ran that instead of the vanilla 4.11-rc7 (while not naming
>>>>> it "xen-next" as i normally do.
>>>>> So 4.11-rc7 is most probably fine, sorry for that noise.
>>>>>
>>>>> Since your patch doesn't apply the smp part is changed. Seems the
>>>>> problem somewhere lies in there (Vitaly's patches, general x86 stuff
>>>>> being pulled in to base that on). I can see if i can adapt the patch
>>>>> to for linus 4.12 and retest, instead of waiting for it to be pulled in
>>>>> into Linus his tree in the next merge window.
>>>>
>>>> This is trivially reproduced on 4.12 branch with
>>>>
>>>> diff --git a/drivers/xen/sys-hypervisor.c b/drivers/xen/sys-hypervisor.c
>>>> index 84106f9..065728f 100644
>>>> --- a/drivers/xen/sys-hypervisor.c
>>>> +++ b/drivers/xen/sys-hypervisor.c
>>>> @@ -148,7 +148,7 @@ static int __init xen_sysfs_uuid_init(void)
>>>>  }
>>>>  
>>>>  /* xen compilation attributes */
>>>> -
>>>> +void arch_irq_work_raise(void );
>>>>  static ssize_t compiler_show(struct hyp_sysfs_attr *attr, char *buffer)
>>>>  {
>>>>         int ret = -ENOMEM;
>>>> @@ -161,7 +161,7 @@ static ssize_t compiler_show(struct hyp_sysfs_attr
>>>> *attr, char *buffer)
>>>>                         ret = sprintf(buffer, "%s\n", info->compiler);
>>>>                 kfree(info);
>>>>         }
>>>> -
>>>> +      arch_irq_work_raise();
>>>>         return ret;
>>>>  }
>>>>
>>>>
>>>> and then (if you manage to boot):
>>>>
>>>> [root@vm-0238 ~]# grep proc /proc/cpuinfo
>>>> processor       : 0
>>>> [root@vm-0238 ~]#
>>>> [root@vm-0238 ~]# cat /sys/hypervisor/compilation/compiler
>>>> [  502.160472] ------------[ cut here ]------------
>>>> [  502.160491] kernel BUG at drivers/xen/events/events_base.c:1221!
>>>>
>>>>
>>>>
>>>> and the fix is
>>>>
>>>> diff --git a/arch/x86/xen/smp_pv.c b/arch/x86/xen/smp_pv.c
>>>> index c0e3b96..aae3253 100644
>>>> --- a/arch/x86/xen/smp_pv.c
>>>> +++ b/arch/x86/xen/smp_pv.c
>>>> @@ -249,7 +249,7 @@ static void __init xen_pv_smp_prepare_cpus(unsigned
>>>> int max_cpus)
>>>>  
>>>>         xen_pmu_init(0);
>>>>  
>>>> -       if (xen_smp_intr_init(0))
>>>> +       if (xen_smp_intr_init(0) || xen_smp_intr_init_pv(0))
>>>>                 BUG();
>>>>  
>>>>         if (!alloc_cpumask_var(&xen_cpu_initialized_map, GFP_KERNEL))
>>>
>>> Indeed. Can you please send a proper patch with your S-o-b?
>>>
>>>
>>> Juergen
>>>
>>
>> It now at least blows up very very early and reliably ;)
>> So not there yet :)
>>
>> --
>> Sander
>>
>>
>>  \ \/ /___ _ __   | || | / _ \    _   _ _ __  ___| |_ __ _| |__ | | ___ 
>>   \  // _ \ '_ \  | || || (_) |__| | | | '_ \/ __| __/ _` | '_ \| |/ _ \
>>   /  \  __/ | | | |__   _\__, |__| |_| | | | \__ \ || (_| | |_) | |  __/
>>  /_/\_\___|_| |_|    |_|(_)/_/    \__,_|_| |_|___/\__\__,_|_.__/|_|\___|
>>                                                                         
>> (XEN) Xen version 4.9-unstable (root@xxxxxxxxxx) (gcc-4.9.real (Debian 
>> 4.9.2-10) 4.9.2) debug=y  Mon Apr 10 20:03:03 CEST 2017
>> (XEN) Latest ChangeSet: Mon Apr 10 19:56:22 2017 +0200 git:7497f90-dirty
>> (XEN) Bootloader: GRUB 2.02~beta2-22+deb8u1
>> (XEN) Command line: dom0_mem=2048M,max:2048M loglvl=all loglvl_guest=all 
>> console_timestamps=datems vga=gfx-1280x1024x32 no-cpuidle cpufreq=xen 
>> com1=38400,8n1 console=vga,com1 ivrs_ioapic[6]=00:14.0 
>> iommu=on,verbose,debug,amd-iommu-debug conring_size=128k ucode=-1 
>> sched=credit2
>> (XEN) Xen image load base address: 0
>> (XEN) Video information:
>> (XEN)  VGA is graphics mode 1280x1024, 32 bpp
>> (XEN)  VBE/DDC methods: V2; EDID transfer time: 1 seconds
>> (XEN) Disc information:
>> (XEN)  Found 4 MBR signatures
>> (XEN)  Found 4 EDD information structures
>> (XEN) Xen-e820 RAM map:
>> (XEN)  0000000000000000 - 0000000000096400 (usable)
>> (XEN)  0000000000096400 - 00000000000a0000 (reserved)
>> (XEN)  00000000000e4000 - 0000000000100000 (reserved)
>> (XEN)  0000000000100000 - 00000000aff90000 (usable)
>> (XEN)  00000000aff90000 - 00000000aff9e000 (ACPI data)
>> (XEN)  00000000aff9e000 - 00000000affe0000 (ACPI NVS)
>> (XEN)  00000000affe0000 - 00000000b0000000 (reserved)
>> (XEN)  00000000ffe00000 - 0000000100000000 (reserved)
>> (XEN)  0000000100000000 - 0000000550000000 (usable)
>> (XEN) New Xen image base address: 0xaf800000
>> (XEN) ACPI: RSDP 000FB100, 0014 (r0 ACPIAM)
>> (XEN) ACPI: RSDT AFF90000, 0048 (r1 MSI    OEMSLIC  20100913 MSFT       97)
>> (XEN) ACPI: FACP AFF90200, 0084 (r1 7640MS A7640100 20100913 MSFT       97)
>> (XEN) ACPI: DSDT AFF905E0, 9427 (r1  A7640 A7640100      100 INTL 20051117)
>> (XEN) ACPI: FACS AFF9E000, 0040
>> (XEN) ACPI: APIC AFF90390, 0088 (r1 7640MS A7640100 20100913 MSFT       97)
>> (XEN) ACPI: MCFG AFF90420, 003C (r1 7640MS OEMMCFG  20100913 MSFT       97)
>> (XEN) ACPI: SLIC AFF90460, 0176 (r1 MSI    OEMSLIC  20100913 MSFT       97)
>> (XEN) ACPI: OEMB AFF9E040, 0072 (r1 7640MS A7640100 20100913 MSFT       97)
>> (XEN) ACPI: SRAT AFF9A5E0, 0108 (r3 AMD    FAM_F_10        2 AMD         1)
>> (XEN) ACPI: HPET AFF9A6F0, 0038 (r1 7640MS OEMHPET  20100913 MSFT       97)
>> (XEN) ACPI: IVRS AFF9A730, 0110 (r1  AMD     RD890S   202031 AMD         0)
>> (XEN) ACPI: SSDT AFF9A840, 0DA4 (r1 A M I  POWERNOW        1 AMD         1)
>> (XEN) System RAM: 20479MB (20970648kB)
>> (XEN) SRAT: PXM 0 -> APIC 00 -> Node 0
>> (XEN) SRAT: PXM 0 -> APIC 01 -> Node 0
>> (XEN) SRAT: PXM 0 -> APIC 02 -> Node 0
>> (XEN) SRAT: PXM 0 -> APIC 03 -> Node 0
>> (XEN) SRAT: PXM 0 -> APIC 04 -> Node 0
>> (XEN) SRAT: PXM 0 -> APIC 05 -> Node 0
>> (XEN) SRAT: Node 0 PXM 0 0-a0000
>> (XEN) SRAT: Node 0 PXM 0 100000-b0000000
>> (XEN) SRAT: Node 0 PXM 0 100000000-550000000
>> (XEN) NUMA: Allocated memnodemap from 54c43f000 - 54c445000
>> (XEN) NUMA: Using 8 for the hash shift.
>> (XEN) Domain heap initialised
>> (XEN) Allocated console ring of 128 KiB.
>> (XEN) vesafb: framebuffer at 0xd0000000, mapped to 0xffff82c000201000, using 
>> 6144k, total 16384k
>> (XEN) vesafb: mode is 1280x1024x32, linelength=5120, font 8x16
>> (XEN) vesafb: Truecolor: size=0:8:8:8, shift=0:16:8:0
>> (XEN) CPU Vendor: AMD, Family 16 (0x10), Model 10 (0xa), Stepping 0 (raw 
>> 00100fa0)
>> (XEN) found SMP MP-table at 000ff780
>> (XEN) DMI present.
>> (XEN) Using APIC driver default
>> (XEN) ACPI: PM-Timer IO Port: 0x808 (24 bits)
>> (XEN) ACPI: SLEEP INFO: pm1x_cnt[1:804,1:0], pm1x_evt[1:800,1:0]
>> (XEN) ACPI:             wakeup_vec[aff9e00c], vec_size[20]
>> (XEN) ACPI: Local APIC address 0xfee00000
>> (XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
>> (XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
>> (XEN) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x02] enabled)
>> (XEN) ACPI: LAPIC (acpi_id[0x04] lapic_id[0x03] enabled)
>> (XEN) ACPI: LAPIC (acpi_id[0x05] lapic_id[0x04] enabled)
>> (XEN) ACPI: LAPIC (acpi_id[0x06] lapic_id[0x05] enabled)
>> (XEN) ACPI: IOAPIC (id[0x06] address[0xfec00000] gsi_base[0])
>> (XEN) IOAPIC[0]: apic_id 6, version 33, address 0xfec00000, GSI 0-23
>> (XEN) ACPI: IOAPIC (id[0x07] address[0xfec20000] gsi_base[24])
>> (XEN) IOAPIC[1]: apic_id 7, version 33, address 0xfec20000, GSI 24-55
>> (XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
>> (XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
>> (XEN) ACPI: IRQ0 used by override.
>> (XEN) ACPI: IRQ2 used by override.
>> (XEN) ACPI: IRQ9 used by override.
>> (XEN) Enabling APIC mode:  Flat.  Using 2 I/O APICs
>> (XEN) ACPI: HPET id: 0x8300 base: 0xfed00000
>> (XEN) ERST table was not found
>> (XEN) Using ACPI (MADT) for SMP configuration information
>> (XEN) SMP: Allowing 6 CPUs (0 hotplug CPUs)
>> (XEN) IRQ limits: 56 GSI, 1112 MSI/MSI-X
>> (XEN) CPU0: AMD Fam10h machine check reporting enabled
>> (XEN) Using scheduler: SMP Credit Scheduler rev2 (credit2)
>> (XEN) Initializing Credit2 scheduler
>> (XEN)  load_precision_shift: 18
>> (XEN)  load_window_shift: 30
>> (XEN)  underload_balance_tolerance: 0
>> (XEN)  overload_balance_tolerance: -3
>> (XEN)  runqueues arrangement: socket
>> (XEN) load tracking window length 1073741824 ns
>> (XEN) Adding cpu 0 to runqueue 0
>> (XEN)  First cpu on runqueue, activating
>> (XEN) Platform timer is 14.318MHz HPET
>> (XEN) Detected 3200.164 MHz processor.
>> (XEN) Initing memory sharing.
>> (XEN) alt table ffff82d080422ab8 -> ffff82d080424120
>> (XEN) PCI: MCFG configuration 0: base e0000000 segment 0000 buses 00 - ff
>> (XEN) PCI: Not using MCFG for segment 0000 bus 00-ff
>> (XEN) AMD-Vi: Found MSI capability block at 0x54
>> (XEN) AMD-Vi: IVRS Block: Found type 0x10 flags 0x3e len 0xe0 id 0x2
>> (XEN) AMD-Vi: Using IVHD type 0x10
>> (XEN) AMD-Vi: ACPI Table:
>> (XEN) AMD-Vi:  Signature IVRS
>> (XEN) AMD-Vi:  Length 0x110
>> (XEN) AMD-Vi:  Revision 0x1
>> (XEN) AMD-Vi:  CheckSum 0xe9
>> (XEN) AMD-Vi:  OEM_Id AMD  
>> (XEN) AMD-Vi:  OEM_Table_Id RD890S
>> (XEN) AMD-Vi:  OEM_Revision 0x202031
>> (XEN) AMD-Vi:  Creator_Id AMD 
>> (XEN) AMD-Vi:  Creator_Revision 0
>> (XEN) AMD-Vi: IVRS Block: type 0x10 flags 0x3e len 0xe0 id 0x2
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0 -> 0x2
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x10 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0xf00 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0xf00 -> 0xf01
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x18 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xe00 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x28 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xd00 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x30 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xc00 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x48 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xb00 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x50 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0xa00 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0xa00 -> 0xa07
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x58 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0x900 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0x900 -> 0x901
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x60 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x500 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x608 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x800 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x610 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x700 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x68 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x400 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x88 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0x90 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0x90 -> 0x92
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0x98 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0x98 -> 0x9a
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa0 flags 0xd7
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa2 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa3 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa4 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x43 id 0x300 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0x300 -> 0x3ff alias 0xa4
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa5 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa8 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0xa9 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x2 id 0x100 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0xb0 flags 0
>> (XEN) AMD-Vi:  Dev_Id Range: 0xb0 -> 0xb2
>> (XEN) AMD-Vi: IVHD Device Entry: type 0 id 0 flags 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x48 id 0 flags 0xd7
>> (XEN) AMD-Vi: IVHD Special: 0000:00:14.0 variety 0x2 handle 0
>> (XEN) AMD-Vi: IVHD Device Entry: type 0x48 id 0 flags 0
>> (XEN) AMD-Vi: IVHD Special: 0000:00:00.1 variety 0x1 handle 0x7
>> (XEN) AMD-Vi: Disabled HAP memory map sharing with IOMMU
>> (XEN) AMD-Vi: IOMMU 0 Enabled.
>> (XEN) I/O virtualisation enabled
>> (XEN)  - Dom0 mode: Relaxed
>> (XEN) Interrupt remapping enabled
>> (XEN) nr_sockets: 1
>> (XEN) ENABLING IO-APIC IRQs
>> (XEN)  -> Using new ACK method
>> (XEN) ..TIMER: vector=0xF0 apic1=0 pin1=2 apic2=-1 pin2=-1
>> (XEN) [2017-04-24 21:20:46.923] microcode: CPU0 updated from revision 
>> 0x10000bf to 0x10000dc
>> (XEN) [2017-04-24 21:20:46.931] HVM: ASIDs enabled.
>> (XEN) [2017-04-24 21:20:46.938] SVM: Supported advanced features:
>> (XEN) [2017-04-24 21:20:46.946]  - Nested Page Tables (NPT)
>> (XEN) [2017-04-24 21:20:46.953]  - Last Branch Record (LBR) Virtualisation
>> (XEN) [2017-04-24 21:20:46.961]  - Next-RIP Saved on #VMEXIT
>> (XEN) [2017-04-24 21:20:46.969]  - Pause-Intercept Filter
>> (XEN) [2017-04-24 21:20:46.977] HVM: SVM enabled
>> (XEN) [2017-04-24 21:20:46.984] HVM: Hardware Assisted Paging (HAP) detected
>> (XEN) [2017-04-24 21:20:46.992] HVM: HAP page sizes: 4kB, 2MB, 1GB
>> (XEN) [2017-04-24 21:20:47.020] Adding cpu 1 to runqueue 0
>> (XEN) [2017-04-24 21:20:47.028] microcode: CPU1 updated from revision 
>> 0x10000bf to 0x10000dc
>> (XEN) [2017-04-24 21:20:47.057] Adding cpu 2 to runqueue 0
>> (XEN) [2017-04-24 21:20:47.064] microcode: CPU2 updated from revision 
>> 0x10000bf to 0x10000dc
>> (XEN) [2017-04-24 21:20:47.085] Adding cpu 3 to runqueue 0
>> (XEN) [2017-04-24 21:20:47.093] microcode: CPU3 updated from revision 
>> 0x10000bf to 0x10000dc
>> (XEN) [2017-04-24 21:20:47.121] Adding cpu 4 to runqueue 0
>> (XEN) [2017-04-24 21:20:47.129] microcode: CPU4 updated from revision 
>> 0x10000bf to 0x10000dc
>> (XEN) [2017-04-24 21:20:47.158] Adding cpu 5 to runqueue 0
>> (XEN) [2017-04-24 21:20:47.166] Brought up 6 CPUs
>> (XEN) [2017-04-24 21:20:47.174] microcode: CPU5 updated from revision 
>> 0x10000bf to 0x10000dc
>> (XEN) [2017-04-24 21:20:47.187] build-id: 
>> 692df0a6bd7eb5c924588a6c78a5a3e76a9e30c6
>> (XEN) [2017-04-24 21:20:47.196] Running stub recovery selftests...
>> (XEN) [2017-04-24 21:20:47.204] traps.c:3466: GPF (0000): ffff82d0bffff041 
>> [ffff82d0bffff041] -> ffff82d08035bd2a
>> (XEN) [2017-04-24 21:20:47.213] traps.c:813: Trap 12: ffff82d0bffff040 
>> [ffff82d0bffff040] -> ffff82d08035bd2a
>> (XEN) [2017-04-24 21:20:47.222] traps.c:1215: Trap 3: ffff82d0bffff041 
>> [ffff82d0bffff041] -> ffff82d08035bd2a
>> (XEN) [2017-04-24 21:20:47.251] ACPI sleep modes: S3
>> (XEN) [2017-04-24 21:20:47.260] VPMU: disabled
>> (XEN) [2017-04-24 21:20:47.269] MCA: Use hw thresholding to adjust polling 
>> frequency
>> (XEN) [2017-04-24 21:20:47.278] mcheck_poll: Machine check polling timer 
>> started.
>> (XEN) [2017-04-24 21:20:47.287] Xenoprofile: Failed to setup IBS LVT offset, 
>> IBSCTL = 0xffffffff
>> (XEN) [2017-04-24 21:20:47.296] Dom0 has maximum 632 PIRQs
>> (XEN) [2017-04-24 21:20:47.305] NX (Execute Disable) protection active
>> (XEN) [2017-04-24 21:20:47.314] *** LOADING DOMAIN 0 ***
>> (XEN) [2017-04-24 21:20:47.505] ELF: phdr: paddr=0x1000000 memsz=0x1293000
>> (XEN) [2017-04-24 21:20:47.515] ELF: phdr: paddr=0x2400000 memsz=0x136000
>> (XEN) [2017-04-24 21:20:47.524] ELF: phdr: paddr=0x2536000 memsz=0x1ae98
>> (XEN) [2017-04-24 21:20:47.533] ELF: phdr: paddr=0x2551000 memsz=0x2d8000
>> (XEN) [2017-04-24 21:20:47.543] ELF: memory: 0x1000000 -> 0x2829000
>> (XEN) [2017-04-24 21:20:47.552] ELF: note: GUEST_OS = "linux"
>> (XEN) [2017-04-24 21:20:47.561] ELF: note: GUEST_VERSION = "2.6"
>> (XEN) [2017-04-24 21:20:47.571] ELF: note: XEN_VERSION = "xen-3.0"
>> (XEN) [2017-04-24 21:20:47.580] ELF: note: VIRT_BASE = 0xffffffff80000000
>> (XEN) [2017-04-24 21:20:47.590] ELF: note: INIT_P2M = 0x8000000000
>> (XEN) [2017-04-24 21:20:47.599] ELF: note: ENTRY = 0xffffffff82551180
>> (XEN) [2017-04-24 21:20:47.609] ELF: note: HYPERCALL_PAGE = 
>> 0xffffffff81001000
>> (XEN) [2017-04-24 21:20:47.618] ELF: note: FEATURES = 
>> "!writable_page_tables|pae_pgdir_above_4gb"
>> (XEN) [2017-04-24 21:20:47.628] ELF: note: SUPPORTED_FEATURES = 0x801
>> (XEN) [2017-04-24 21:20:47.638] ELF: note: PAE_MODE = "yes"
>> (XEN) [2017-04-24 21:20:47.648] ELF: note: LOADER = "generic"
>> (XEN) [2017-04-24 21:20:47.657] ELF: note: unknown (0xd)
>> (XEN) [2017-04-24 21:20:47.667] ELF: note: SUSPEND_CANCEL = 0x1
>> (XEN) [2017-04-24 21:20:47.677] ELF: note: MOD_START_PFN = 0x1
>> (XEN) [2017-04-24 21:20:47.687] ELF: note: HV_START_LOW = 0xffff800000000000
>> (XEN) [2017-04-24 21:20:47.696] ELF: note: PADDR_OFFSET = 0
>> (XEN) [2017-04-24 21:20:47.706] ELF: note: PHYS32_ENTRY = 0x10002d0
>> (XEN) [2017-04-24 21:20:47.716] ELF: addresses:
>> (XEN) [2017-04-24 21:20:47.726]     virt_base        = 0xffffffff80000000
>> (XEN) [2017-04-24 21:20:47.736]     elf_paddr_offset = 0x0
>> (XEN) [2017-04-24 21:20:47.746]     virt_offset      = 0xffffffff80000000
>> (XEN) [2017-04-24 21:20:47.756]     virt_kstart      = 0xffffffff81000000
>> (XEN) [2017-04-24 21:20:47.767]     virt_kend        = 0xffffffff82829000
>> (XEN) [2017-04-24 21:20:47.777]     virt_entry       = 0xffffffff82551180
>> (XEN) [2017-04-24 21:20:47.788]     p2m_base         = 0x8000000000
>> (XEN) [2017-04-24 21:20:47.798]  Xen  kernel: 64-bit, lsb, compat32
>> (XEN) [2017-04-24 21:20:47.809]  Dom0 kernel: 64-bit, PAE, lsb, paddr 
>> 0x1000000 -> 0x2829000
>> (XEN) [2017-04-24 21:20:47.820] PHYSICAL MEMORY ARRANGEMENT:
>> (XEN) [2017-04-24 21:20:47.830]  Dom0 alloc.:   
>> 0000000438000000->000000043c000000 (501685 pages to be allocated)
>> (XEN) [2017-04-24 21:20:47.841]  Init. ramdisk: 
>> 000000054e7b1000->000000054fffbc00
>> (XEN) [2017-04-24 21:20:47.852] VIRTUAL MEMORY ARRANGEMENT:
>> (XEN) [2017-04-24 21:20:47.863]  Loaded kernel: 
>> ffffffff81000000->ffffffff82829000
>> (XEN) [2017-04-24 21:20:47.874]  Init. ramdisk: 
>> 0000000000000000->0000000000000000
>> (XEN) [2017-04-24 21:20:47.885]  Phys-Mach map: 
>> 0000008000000000->0000008000400000
>> (XEN) [2017-04-24 21:20:47.895]  Start info:    
>> ffffffff82829000->ffffffff828294b4
>> (XEN) [2017-04-24 21:20:47.906]  Page tables:   
>> ffffffff8282a000->ffffffff82843000
>> (XEN) [2017-04-24 21:20:47.917]  Boot stack:    
>> ffffffff82843000->ffffffff82844000
>> (XEN) [2017-04-24 21:20:47.928]  TOTAL:         
>> ffffffff80000000->ffffffff82c00000
>> (XEN) [2017-04-24 21:20:47.939]  ENTRY ADDRESS: ffffffff82551180
>> (XEN) [2017-04-24 21:20:47.950] Dom0 has maximum 6 VCPUs
>> (XEN) [2017-04-24 21:20:47.961] ELF: phdr 0 at 0xffffffff81000000 -> 
>> 0xffffffff82293000
>> (XEN) [2017-04-24 21:20:47.979] ELF: phdr 1 at 0xffffffff82400000 -> 
>> 0xffffffff82536000
>> (XEN) [2017-04-24 21:20:47.990] ELF: phdr 2 at 0xffffffff82536000 -> 
>> 0xffffffff82550e98
>> (XEN) [2017-04-24 21:20:48.001] ELF: phdr 3 at 0xffffffff82551000 -> 
>> 0xffffffff82680000
>> (XEN) [2017-04-24 21:20:49.176] AMD-Vi: Setup I/O page table: device id = 0, 
>> type = 0x6, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.187] AMD-Vi: Setup I/O page table: device id = 
>> 0x2, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.199] AMD-Vi: Setup I/O page table: device id = 
>> 0x10, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.210] AMD-Vi: Setup I/O page table: device id = 
>> 0x18, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.222] AMD-Vi: Setup I/O page table: device id = 
>> 0x28, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.234] AMD-Vi: Setup I/O page table: device id = 
>> 0x30, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.245] AMD-Vi: Setup I/O page table: device id = 
>> 0x48, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.257] AMD-Vi: Setup I/O page table: device id = 
>> 0x50, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.270] AMD-Vi: Setup I/O page table: device id = 
>> 0x58, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.282] AMD-Vi: Setup I/O page table: device id = 
>> 0x60, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.294] AMD-Vi: Setup I/O page table: device id = 
>> 0x68, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.307] AMD-Vi: Setup I/O page table: device id = 
>> 0x88, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.320] AMD-Vi: Setup I/O page table: device id = 
>> 0x90, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.333] AMD-Vi: Setup I/O page table: device id = 
>> 0x92, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.346] AMD-Vi: Setup I/O page table: device id = 
>> 0x98, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.359] AMD-Vi: Setup I/O page table: device id = 
>> 0x9a, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.373] AMD-Vi: Setup I/O page table: device id = 
>> 0xa0, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.386] AMD-Vi: Setup I/O page table: device id = 
>> 0xa2, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.400] AMD-Vi: Setup I/O page table: device id = 
>> 0xa3, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.414] AMD-Vi: Setup I/O page table: device id = 
>> 0xa4, type = 0x5, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.428] AMD-Vi: Setup I/O page table: device id = 
>> 0xa5, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.443] AMD-Vi: Setup I/O page table: device id = 
>> 0xa8, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.457] AMD-Vi: Setup I/O page table: device id = 
>> 0xb0, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.472] AMD-Vi: Setup I/O page table: device id = 
>> 0xb2, type = 0x7, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.487] AMD-Vi: Skipping host bridge 0000:00:18.0
>> (XEN) [2017-04-24 21:20:49.502] AMD-Vi: Skipping host bridge 0000:00:18.1
>> (XEN) [2017-04-24 21:20:49.516] AMD-Vi: Skipping host bridge 0000:00:18.2
>> (XEN) [2017-04-24 21:20:49.531] AMD-Vi: Skipping host bridge 0000:00:18.3
>> (XEN) [2017-04-24 21:20:49.546] AMD-Vi: Skipping host bridge 0000:00:18.4
>> (XEN) [2017-04-24 21:20:49.561] AMD-Vi: Setup I/O page table: device id = 
>> 0x400, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.576] AMD-Vi: Setup I/O page table: device id = 
>> 0x500, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.591] AMD-Vi: Setup I/O page table: device id = 
>> 0x608, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.607] AMD-Vi: Setup I/O page table: device id = 
>> 0x610, type = 0x2, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.622] AMD-Vi: Setup I/O page table: device id = 
>> 0x700, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.638] AMD-Vi: Setup I/O page table: device id = 
>> 0x800, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.655] AMD-Vi: Setup I/O page table: device id = 
>> 0x900, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.671] AMD-Vi: Setup I/O page table: device id = 
>> 0x901, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.687] AMD-Vi: Setup I/O page table: device id = 
>> 0xa00, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.704] AMD-Vi: Setup I/O page table: device id = 
>> 0xa01, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.721] AMD-Vi: Setup I/O page table: device id = 
>> 0xa02, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.738] AMD-Vi: Setup I/O page table: device id = 
>> 0xa03, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.755] AMD-Vi: Setup I/O page table: device id = 
>> 0xa04, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.772] AMD-Vi: Setup I/O page table: device id = 
>> 0xa05, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.790] AMD-Vi: Setup I/O page table: device id = 
>> 0xa06, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.808] AMD-Vi: Setup I/O page table: device id = 
>> 0xa07, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.826] AMD-Vi: Setup I/O page table: device id = 
>> 0xb00, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.844] AMD-Vi: Setup I/O page table: device id = 
>> 0xc00, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.862] AMD-Vi: Setup I/O page table: device id = 
>> 0xd00, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.880] AMD-Vi: Setup I/O page table: device id = 
>> 0xe00, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.899] AMD-Vi: Setup I/O page table: device id = 
>> 0xf00, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.917] AMD-Vi: Setup I/O page table: device id = 
>> 0xf01, type = 0x1, root table = 0x441ddb000, domain = 0, paging mode = 3
>> (XEN) [2017-04-24 21:20:49.943] Scrubbing Free RAM on 1 nodes using 6 CPUs
>> (XEN) [2017-04-24 21:20:50.047] .............................done.
>> (XEN) [2017-04-24 21:20:53.044] Initial low memory virq threshold set at 
>> 0x4000 pages.
>> (XEN) [2017-04-24 21:20:53.063] Std. Loglevel: All
>> (XEN) [2017-04-24 21:20:53.081] Guest Loglevel: All
>> (XEN) [2017-04-24 21:20:53.100] Xen is relinquishing VGA console.
>> (XEN) [2017-04-24 21:20:53.202] *** Serial input -> DOM0 (type 'CTRL-a' 
>> three times to switch input to Xen)
>> (XEN) [2017-04-24 21:20:53.202] Freed 460kB init memory
>> (XEN) [2017-04-24 21:20:53.203] d0v0 Unhandled invalid opcode fault/trap 
>> [#6, ec=ffffffff]
>> (XEN) [2017-04-24 21:20:53.203] domain_crash_sync called from entry.S: fault 
>> at ffff82d080358f70 entry.o#create_bounce_frame+0x145/0x154
>> (XEN) [2017-04-24 21:20:53.203] Domain 0 (vcpu#0) crashed on cpu#0:
>> (XEN) [2017-04-24 21:20:53.203] ----[ Xen-4.9-unstable  x86_64  debug=y   
>> Not tainted ]----
>> (XEN) [2017-04-24 21:20:53.203] CPU:    0
>> (XEN) [2017-04-24 21:20:53.203] RIP:    e033:[<ffffffff8255a485>]
> 
> Can you please tell us symbol+offset for RIP?
> 
> Juergen
> 

Sure:
# addr2line -e vmlinux-4.11.0-rc8-20170424-linus-doflr-xennext-boris+ 
ffffffff8255a485
linux-linus/arch/x86/xen/enlighten_pv.c:288

Which is:
static bool __init xen_check_xsave(void)
{
        unsigned int err, eax, edx;

        /*
         * Xen 4.0 and older accidentally leaked the host XSAVE flag into guest
         * view, despite not being able to support guests using the
         * functionality. Probe for the actual availability of XSAVE by seeing
         * whether xgetbv executes successfully or raises #UD.
         */
HERE -->    asm volatile("1: .byte 0x0f,0x01,0xd0\n\t" /* xgetbv */    
                     "xor %[err], %[err]\n"
                     "2:\n\t"
                     ".pushsection .fixup,\"ax\"\n\t"
                     "3: movl $1,%[err]\n\t"
                     "jmp 2b\n\t"
                     ".popsection\n\t"
                     _ASM_EXTABLE(1b, 3b)
                     : [err] "=r" (err), "=a" (eax), "=d" (edx)
                     : "c" (0));

        return err == 0;
}

--
Sander


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

 


Rackspace

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