[llvmlinux] "make test" for x86_64 target just hung there, why?
Sedat Dilek
sedat.dilek at gmail.com
Sun Sep 6 16:16:40 UTC 2015
On Sun, Sep 6, 2015 at 1:46 PM, Sedat Dilek <sedat.dilek at gmail.com> wrote:
> On Tue, Aug 11, 2015 at 2:43 AM, Peter Teoh <htmldeveloper at gmail.com> wrote:
>>
>>
>> On Tue, Aug 11, 2015 at 7:57 AM, Jan-Simon Moeller <dl9pf at gmx.de> wrote:
>>>
>>> Some progress:
>>>
>>> I bisected from 4.1 to 4.2-rc1 and found this.
>>> Sounds scary with clang in mind. This really assumes gcc ;).
>>>
>>> @David: what do you think? Can clang deal with it ?
>>>
>>>
>>> be6cb02779ca74d83481f017db21578cfe92891c is the first bad commit
>>> commit be6cb02779ca74d83481f017db21578cfe92891c
>>> Author: Ingo Molnar <mingo at kernel.org>
>>> Date: Fri Apr 10 14:08:46 2015 +0200
>>>
>>
>> Thank you Jan, Woodhouse and everyone, tested with the latest reversal patch
>> and it worked:
>>
>> commit 8cb2f092ee1fbfe17cb9c58cd3636ff60a74d88b
>> Author: Jan-Simon Möller <dl9pf at gmx.de>
>> Date: Tue Aug 11 02:20:33 2015 +0200
>>
>> Temporarily revert this patch until we discussed a solution.
>>
>
> Hi Peter,
>
> can you boot your 64-bit also on bare metal (not only in QEMU)?
>
> Which QEMU version do you use and how looks your qemu-line?
>
> I tried Linux v4.2 and v4.1.6 (patches arch/all and arch/x86_64 from
> llvmlinux-git) with my customized kernel-config and LLVM/Clang v3.7.0,
> but it does not boot here.
>
> Thanks in advance.
>
> Regards,
> - Sedat -
Hi,
I just played a bit more with my llvmlinux setup here.
Unfortunately, I killed my important files for Linux v4.2, but I have
the files for v4.1.6 kept.
I played with KVM and QEMU a bit and I got a cool command-line for
QEMU [1] and can see a NULL pointer dereference...
[ 0.000000] Command line: root=/dev/ram0 console=ttyS0
hung_task_panic=1 earlyprintk=ttyS0,115200
root# echo $KPATH
/home/wearefam/src/linux-kernel/archive/dileks-kernels/LATEST-llvmlinux-4.1.y/important-files
root# LC_ALL=C ll $KPATH
total 40292
drwxr-xr-x 2 wearefam wearefam 4096 Sep 6 17:30 ./
drwxr-xr-x 3 wearefam wearefam 4096 Sep 6 13:30 ../
-rw-r--r-- 1 wearefam wearefam 3463333 Sep 6 13:24 System.map
-rw-r--r-- 1 wearefam wearefam 4563728 Sep 6 13:25 bzImage
-rw-r--r-- 1 wearefam wearefam 11893248 Sep 6 14:22 initrd.img
-rwxr-xr-x 1 wearefam wearefam 27376499 Sep 6 13:24 vmlinux*
root# qemu-system-x86_64 -enable-kvm -M pc -kernel $KPATH/bzImage
-initrd $KPATH/initrd.img -m 512 -net none -serial stdio -append
"root=/dev/ram0 console=ttyS0 hung_task_panic=1
earlyprintk=ttyS0,115200"
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 4.1.6-1-llvmlinux-small
(sedat.dilek at gmail.com@fambox) (clang version 3.7.0
(tags/RELEASE_370/final)) #1 SMP Sun Sep 6 13:24:30 CEST 2015
[ 0.000000] Command line: root=/dev/ram0 console=ttyS0
hung_task_panic=1 earlyprintk=ttyS0,115200
[ 0.000000] KERNEL supported cpus:
[ 0.000000] Intel GenuineIntel
[ 0.000000] AMD AuthenticAMD
[ 0.000000] Centaur CentaurHauls
[ 0.000000] e820: BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009f3ff] usable
[ 0.000000] BIOS-e820: [mem 0x000000000009f400-0x000000000009ffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
[ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000001fffcfff] usable
[ 0.000000] BIOS-e820: [mem 0x000000001fffd000-0x000000001fffffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
[ 0.000000] bootconsole [earlyser0] enabled
[ 0.000000] NX (Execute Disable) protection: active
[ 0.000000] SMBIOS 2.4 present.
[ 0.000000] Hypervisor detected: KVM
[ 0.000000] AGP: No AGP bridge found
[ 0.000000] e820: last_pfn = 0x1fffd max_arch_pfn = 0x400000000
[ 0.000000] PAT not supported by CPU.
[ 0.000000] found SMP MP-table at [mem 0x000fdb00-0x000fdb0f]
mapped at [ffff8800000fdb00]
[ 0.000000] Scanning 1 areas for low memory corruption
[ 0.000000] init_memory_mapping: [mem 0x00000000-0x000fffff]
[ 0.000000] init_memory_mapping: [mem 0x1f200000-0x1f3fffff]
[ 0.000000] init_memory_mapping: [mem 0x00100000-0x1f1fffff]
[ 0.000000] init_memory_mapping: [mem 0x1f400000-0x1fffcfff]
[ 0.000000] RAMDISK: [mem 0x1f498000-0x1ffeffff]
[ 0.000000] ACPI: Early table checksum verification disabled
[ 0.000000] ACPI: RSDP 0x00000000000FD9A0 000014 (v00 BOCHS )
[ 0.000000] ACPI: RSDT 0x000000001FFFD7B0 000034 (v01 BOCHS
BXPCRSDT 00000001 BXPC 00000001)
[ 0.000000] ACPI: FACP 0x000000001FFFFF80 000074 (v01 BOCHS
BXPCFACP 00000001 BXPC 00000001)
[ 0.000000] ACPI: DSDT 0x000000001FFFD9B0 002589 (v01 BXPC BXDSDT
00000001 INTL 20100528)
[ 0.000000] ACPI: FACS 0x000000001FFFFF40 000040
[ 0.000000] ACPI: SSDT 0x000000001FFFD910 00009E (v01 BOCHS
BXPCSSDT 00000001 BXPC 00000001)
[ 0.000000] ACPI: APIC 0x000000001FFFD830 000072 (v01 BOCHS
BXPCAPIC 00000001 BXPC 00000001)
[ 0.000000] ACPI: HPET 0x000000001FFFD7F0 000038 (v01 BOCHS
BXPCHPET 00000001 BXPC 00000001)
[ 0.000000] No NUMA configuration found
[ 0.000000] Faking a node at [mem 0x0000000000000000-0x000000001fffcfff]
[ 0.000000] NODE_DATA(0) allocated [mem 0x1fff8000-0x1fffcfff]
[ 0.000000] kvm-clock: Using msrs 4b564d01 and 4b564d00
[ 0.000000] kvm-clock: cpu 0, msr 0:1fff4001, primary cpu clock
[ 0.000000] clocksource kvm-clock: mask: 0xffffffffffffffff
max_cycles: 0x1cd42e4dffb, max_idle_ns: 881590591483 ns
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000000001000-0x0000000000ffffff]
[ 0.000000] DMA32 [mem 0x0000000001000000-0x000000001fffcfff]
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000001000-0x000000000009efff]
[ 0.000000] node 0: [mem 0x0000000000100000-0x000000001fffcfff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000001000-0x000000001fffcfff]
[ 0.000000] ACPI: PM-Timer IO Port: 0xb008
[ 0.000000] IOAPIC[0]: apic_id 1, version 17, address 0xfec00000, GSI 0-23
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level)
[ 0.000000] Using ACPI (MADT) for SMP configuration information
[ 0.000000] ACPI: HPET id: 0x8086a201 base: 0xfed00000
[ 0.000000] smpboot: Allowing 1 CPUs, 0 hotplug CPUs
[ 0.000000] PM: Registered nosave memory: [mem 0x00000000-0x00000fff]
[ 0.000000] PM: Registered nosave memory: [mem 0x0009f000-0x0009ffff]
[ 0.000000] PM: Registered nosave memory: [mem 0x000a0000-0x000effff]
[ 0.000000] PM: Registered nosave memory: [mem 0x000f0000-0x000fffff]
[ 0.000000] e820: [mem 0x20000000-0xfeffbfff] available for PCI devices
[ 0.000000] Booting paravirtualized kernel on KVM
[ 0.000000] clocksource refined-jiffies: mask: 0xffffffff
max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns
[ 0.000000] setup_percpu: NR_CPUS:256 nr_cpumask_bits:256
nr_cpu_ids:1 nr_node_ids:1
[ 0.000000] BUG: unable to handle kernel NULL pointer dereference
at 0000000000000009
[ 0.000000] IP: [<ffffffff81488bd0>] __bitmap_weight+0x20/0x60
[ 0.000000] PGD 0
[ 0.000000] Oops: 0000 [#1] SMP
[ 0.000000] Modules linked in:
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted
4.1.6-1-llvmlinux-small #1
[ 0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
[ 0.000000] task: ffffffff81e164b0 ti: ffffffff81e00000 task.ti:
ffffffff81e00000
[ 0.000000] RIP: 0010:[<ffffffff81488bd0>] [<ffffffff81488bd0>]
__bitmap_weight+0x20/0x60
[ 0.000000] RSP: 0000:ffffffff81e03e10 EFLAGS: 00010006
[ 0.000000] RAX: 0000000000000001 RBX: 0000000000000001 RCX: 0000000000000009
[ 0.000000] RDX: 0000000000000001 RSI: 0000000000000100 RDI: 0000000000000001
[ 0.000000] RBP: ffffffff81e03e88 R08: ffffffff81f16400 R09: 0000000000000004
[ 0.000000] R10: 0000000000000003 R11: 0000000000000001 R12: 000000007fffffff
[ 0.000000] R13: 0000000000000008 R14: 0000000000000001 R15: 0000000000000007
[ 0.000000] FS: 0000000000000000(0000) GS:ffffffff81f22000(0000)
knlGS:0000000000000000
[ 0.000000] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 0.000000] CR2: 0000000000000009 CR3: 0000000001e0f000 CR4: 00000000000000b0
[ 0.000000] Stack:
[ 0.000000] ffffffff81f7d61c ffffffff81e03ea8 0000000000007ff8
0000000000002000
[ 0.000000] 0000000000200000 0000000000000000 0000000000200000
0000004000000001
[ 0.000000] 0000000000000000 0000000000000001 0000000000002000
0000000000007000
[ 0.000000] Call Trace:
[ 0.000000] [<ffffffff81f7d61c>] ? pcpu_build_alloc_info+0x31c/0x6e0
[ 0.000000] [<ffffffff81f59d60>] ? pcpu_cpu_distance+0x80/0x80
[ 0.000000] [<ffffffff81f59ce0>] ? setup_per_cpu_areas+0x290/0x290
[ 0.000000] [<ffffffff81f7ceea>] pcpu_embed_first_chunk+0x3a/0x450
[ 0.000000] [<ffffffff81103335>] ? printk+0x55/0x60
[ 0.000000] [<ffffffff81f59e30>] ? pcpu_fc_alloc+0xd0/0xd0
[ 0.000000] [<ffffffff81f59abd>] setup_per_cpu_areas+0x6d/0x290
[ 0.000000] [<ffffffff81f3d177>] start_kernel+0x197/0x650
[ 0.000000] [<ffffffff818e8177>] ? memblock_reserve+0x57/0x60
[ 0.000000] [<ffffffff81f3c8db>] x86_64_start_kernel+0x26b/0x280
[ 0.000000] Code: b8 01 00 00 00 c3 0f 1f 44 00 00 49 89 f8 31 d2
41 89 f1 41 c1 e9 06 b8 00 00 00 00 74 26 31 d2 45 89 ca 4c 89 c1 0f
1f 44 00 00 <48> 8b 39 e8 e8 c6 00 00 89 d2 48 01 c2 48 83 c1 08 41 ff
ca 75
[ 0.000000] RIP [<ffffffff81488bd0>] __bitmap_weight+0x20/0x60
[ 0.000000] RSP <ffffffff81e03e10>
[ 0.000000] CR2: 0000000000000009
[ 0.000000] ---[ end trace a814ade7fccce039 ]---
[ 0.000000] Kernel panic - not syncing: Attempted to kill the idle task!
[ 0.000000] BUG: unable to handle kernel NULL pointer dereference
at 0000000000000009
[ 0.000000] IP: [<ffffffff81488bd0>] __bitmap_weight+0x20/0x60
[ 0.000000] PGD 0
[ 0.000000] Oops: 0000 [#2] SMP
[ 0.000000] Modules linked in:
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Tainted: G D
4.1.6-1-llvmlinux-small #1
[ 0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
[ 0.000000] task: ffffffff81e164b0 ti: ffffffff81e00000 task.ti:
ffffffff81e00000
[ 0.000000] RIP: 0010:[<ffffffff81488bd0>] [<ffffffff81488bd0>]
__bitmap_weight+0x20/0x60
[ 0.000000] RSP: 0000:ffffffff81e03950 EFLAGS: 00010006
[ 0.000000] RAX: 0000000000000001 RBX: ffffffff81c452f7 RCX: 0000000000000009
[ 0.000000] RDX: 0000000000000001 RSI: 0000000000000100 RDI: 0000000000000001
[ 0.000000] RBP: ffffffff81e03978 R08: ffffffff81f16420 R09: 0000000000000004
[ 0.000000] R10: 0000000000000003 R11: 203a676e69636e79 R12: 0000000000000009
[ 0.000000] R13: 0000000000000000 R14: ffffffff81f16420 R15: 0000000000000000
[ 0.000000] FS: 0000000000000000(0000) GS:ffffffff81f22000(0000)
knlGS:0000000000000000
[ 0.000000] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 0.000000] CR2: 0000000000000009 CR3: 0000000001e0f000 CR4: 00000000000000b0
[ 0.000000] Stack:
[ 0.000000] ffffffff81057fbf 0000000000000000 ffffffff81c452f7
0000000000000000
[ 0.000000] ffffffff81e164b0 ffffffff81e039f8 ffffffff8108d172
0000000000000009
[ 0.000000] 0000000000000000 ffffffff81e164b0 00000000ffffffff
0000000000000000
[ 0.000000] Call Trace:
[ 0.000000] [<ffffffff81057fbf>] ? native_stop_other_cpus+0x3f/0x210
[ 0.000000] [<ffffffff8108d172>] panic+0x112/0x270
[ 0.000000] [<ffffffff81090055>] do_exit+0xb65/0xb90
[ 0.000000] [<ffffffff81107441>] ? rcu_lock_release+0x21/0x30
[ 0.000000] [<ffffffff81106aac>] ? kmsg_dump+0x17c/0x190
[ 0.000000] [<ffffffff8101af6b>] oops_end+0x10b/0x130
[ 0.000000] [<ffffffff81076500>] no_context+0x410/0x460
[ 0.000000] [<ffffffff8110f1e9>] ? debug_lockdep_rcu_enabled+0x9/0x40
[ 0.000000] [<ffffffff810b5756>] ? __kernel_text_address+0x76/0xb0
[ 0.000000] [<ffffffff8101a939>] ? print_context_stack+0x59/0x150
[ 0.000000] [<ffffffff810767c3>] __bad_area_nosemaphore+0x53/0x2a0
[ 0.000000] [<ffffffff8148243a>] ? sprintf+0x4a/0x50
[ 0.000000] [<ffffffff8148106d>] ? vsnprintf+0x8d/0x510
[ 0.000000] [<ffffffff81104ba4>] ? vprintk_emit+0x464/0x6a0
[ 0.000000] [<ffffffff81075f6b>] bad_area_nosemaphore+0x2b/0x40
[ 0.000000] [<ffffffff81075ad2>] __do_page_fault+0x592/0x5b0
[ 0.000000] [<ffffffff81075b62>] do_page_fault+0x72/0xc0
[ 0.000000] [<ffffffff818f2228>] page_fault+0x28/0x30
[ 0.000000] [<ffffffff81488bd0>] ? __bitmap_weight+0x20/0x60
[ 0.000000] [<ffffffff81f7d61c>] ? pcpu_build_alloc_info+0x31c/0x6e0
[ 0.000000] [<ffffffff81f59d60>] ? pcpu_cpu_distance+0x80/0x80
[ 0.000000] [<ffffffff81f59ce0>] ? setup_per_cpu_areas+0x290/0x290
[ 0.000000] [<ffffffff81f7ceea>] pcpu_embed_first_chunk+0x3a/0x450
[ 0.000000] [<ffffffff81103335>] ? printk+0x55/0x60
[ 0.000000] [<ffffffff81f59e30>] ? pcpu_fc_alloc+0xd0/0xd0
[ 0.000000] [<ffffffff81f59abd>] setup_per_cpu_areas+0x6d/0x290
[ 0.000000] [<ffffffff81f3d177>] start_kernel+0x197/0x650
[ 0.000000] [<ffffffff818e8177>] ? memblock_reserve+0x57/0x60
[ 0.000000] [<ffffffff81f3c8db>] x86_64_start_kernel+0x26b/0x280
[ 0.000000] Code: b8 01 00 00 00 c3 0f 1f 44 00 00 49 89 f8 31 d2
41 89 f1 41 c1 e9 06 b8 00 00 00 00 74 26 31 d2 45 89 ca 4c 89 c1 0f
1f 44 00 00 <48> 8b 39 e8 e8 c6 00 00 89 d2 48 01 c2 48 83 c1 08 41 ff
ca 75
[ 0.000000] RIP [<ffffffff81488bd0>] __bitmap_weight+0x20/0x60
[ 0.000000] RSP <ffffffff81e03950>
[ 0.000000] CR2: 0000000000000009
[ 0.000000] ---[ end trace a814ade7fccce03a ]---
If you have any idea please let me know.
Peter, can you try that qemu-line and see if you get some output w/o
the reverted patch?
( Might be I hit a totally different issue. )
I will poke some friends from linux-x86 (maybe on IRC).
Thanks.
Regards,
- Sedat -
[1] https://lkml.org/lkml/2015/4/29/276
More information about the LLVMLinux
mailing list