lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 12 Jul 2014 22:08:48 +0800
From:	Jet Chen <jet.chen@...el.com>
To:	Liviu Dudau <Liviu.Dudau@....com>
CC:	Su Tao <tao.su@...el.com>, Fengguang Wu <fengguang.wu@...el.com>,
	Yuanhan Liu <yuanhan.liu@...el.com>, LKP <lkp@...org>,
	"linux-pci@...r.kernel.org" <linux-pci@...r.kernel.org>,
	linux-kernel@...r.kernel.org
Subject: [pci] BUG: unable to handle kernel NULL pointer dereference at 00000064

Hi Liviu,

0day kernel testing robot got the below dmesg and the first bad commit is

git://git.linaro.org/people/cdall/linux-kvm-arm apm_linux_v3.16-rc1
commit 6f99bc949b1c90ff342a7d44ac4122322a7ccb78
Author:     Liviu Dudau <Liviu.Dudau@....com>
AuthorDate: Thu Jun 5 15:20:38 2014 +0530
Commit:     Christoffer Dall <christoffer.dall@...aro.org>
CommitDate: Fri Jul 11 06:34:50 2014 -0700

    pci: Create pci_host_bridge before its associated bus in pci_create_root_bus.
        Before commit 7b5436635800 the pci_host_bridge was created before the root bus.
    As that commit has added a needless dependency on the bus for pci_alloc_host_bridge()
    the creation order has been changed for no good reason. Revert the order of
    creation as we are going to depend on the pci_host_bridge structure to retrieve the
    domain number of the root bus.
        Signed-off-by: Liviu Dudau <Liviu.Dudau@....com>
    Acked-by: Grant Likely <grant.likely@...aro.org>
    Tested-by: Tanmay Inamdar <tinamdar@....com>

+------------------------------------------------------------+------------+------------+
|                                                            | 175e014331 | 6f99bc949b |
+------------------------------------------------------------+------------+------------+
| boot_successes                                             | 60         | 0          |
| boot_failures                                              | 0          | 20         |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference       | 0          | 20         |
| Oops                                                       | 0          | 20         |
| EIP_is_at_pcibios_root_bridge_prepare                      | 0          | 20         |
| WARNING:CPU:PID:at_kernel/smp.c:smp_call_function_single() | 0          | 20         |
| Kernel_panic-not_syncing:Attempted_to_kill_init_exitcode=  | 0          | 20         |
| backtrace:acpi_bus_scan                                    | 0          | 20         |
| backtrace:acpi_scan_init                                   | 0          | 20         |
| backtrace:acpi_init                                        | 0          | 20         |
| backtrace:kernel_init_freeable                             | 0          | 20         |
+------------------------------------------------------------+------------+------------+

[    0.351550] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
[    0.352949] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments]
[    0.353402] acpi PNP0A03:00: _OSC failed (AE_NOT_FOUND); disabling ASPM
[    0.355122] BUG: unable to handle kernel NULL pointer dereference at 00000064
[    0.356666] IP: [<c17b762e>] pcibios_root_bridge_prepare+0xe/0x20
[    0.356666] *pde = 00000000 [    0.356666] Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
[    0.356666] Modules linked in:
[    0.356666] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.16.0-rc1-00005-g6f99bc9 #2
[    0.356666] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
[    0.356666] task: cfc7e010 ti: cfcc0000 task.ti: cfcc0000
[    0.356666] EIP: 0060:[<c17b762e>] EFLAGS: 00010286 CPU: 0
[    0.356666] EIP is at pcibios_root_bridge_prepare+0xe/0x20
[    0.356666] EAX: cfe0a000 EBX: c1d83d20 ECX: 00000000 EDX: 00000000
[    0.356666] ESI: 00000000 EDI: cfe0a000 EBP: cfcc1d20 ESP: cfcc1d20
[    0.356666]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
[    0.356666] CR0: 8005003b CR2: 00000064 CR3: 01e77000 CR4: 000006d0
[    0.356666] Stack:
[    0.356666]  cfcc1da4 c13d7a8b cfcc1dd4 cfe56e00 cfcc1dd4 cfe56d40 cfcc1dd4 cfc00180
[    0.356666]  cfcc1d88 c11a77d2 cfe0a184 00000001 00000000 00000000 c1093cf9 00000246
[    0.356666]  000080d0 00000282 00000010 000080d0 00000020 00000246 c13d5a48 cfcc1dd4
[    0.356666] Call Trace:
[    0.356666]  [<c13d7a8b>] pci_create_root_bus+0x5b/0x340
[    0.356666]  [<c11a77d2>] ? kmem_cache_alloc_trace+0x3a2/0x4b0
[    0.356666]  [<c1093cf9>] ? insert_resource_conflict+0x19/0x40
[    0.356666]  [<c13d5a48>] ? pci_add_resource_offset+0x28/0x60
[    0.356666]  [<c13d5a48>] ? pci_add_resource_offset+0x28/0x60
[    0.356666]  [<c17b750b>] pci_acpi_scan_root+0x25b/0x370
[    0.356666]  [<c1401686>] acpi_pci_root_add+0x223/0x2c9
[    0.356666]  [<c13fc8ed>] ? acpi_bus_get_status_handle+0x18/0x3a
[    0.356666]  [<c13fedb3>] acpi_bus_attach+0xb5/0x160
[    0.356666]  [<c195d60d>] ? mutex_unlock+0xd/0x10
[    0.356666]  [<c1474b9c>] ? device_attach+0x8c/0xa0
[    0.356666]  [<c13fee1c>] acpi_bus_attach+0x11e/0x160
[    0.356666]  [<c195d60d>] ? mutex_unlock+0xd/0x10
[    0.356666]  [<c1474b9c>] ? device_attach+0x8c/0xa0
[    0.356666]  [<c13fee1c>] acpi_bus_attach+0x11e/0x160
[    0.356666]  [<c13feea7>] acpi_bus_scan+0x49/0x59
[    0.356666]  [<c1ddfa74>] acpi_scan_init+0x5b/0x16b
[    0.356666]  [<c1ddf8cc>] acpi_init+0x205/0x220
[    0.356666]  [<c1ddf6c7>] ? acpi_sleep_proc_init+0x23/0x23
[    0.356666]  [<c100044e>] do_one_initcall+0x7e/0x1b0
[    0.356666]  [<c1ddf6c7>] ? acpi_sleep_proc_init+0x23/0x23
[    0.356666]  [<c1da7500>] ? initcall_blacklist+0x23/0x81
[    0.356666]  [<c10ae039>] ? parse_args+0x1d9/0x360
[    0.356666]  [<c10a5361>] ? __usermodehelper_set_disable_depth+0x41/0x50
[    0.356666]  [<c1da7d9c>] kernel_init_freeable+0x1b2/0x249
[    0.356666]  [<c1da755e>] ? initcall_blacklist+0x81/0x81
[    0.356666]  [<c194b840>] kernel_init+0x10/0xe0
[    0.356666]  [<c195f681>] ret_from_kernel_thread+0x21/0x30
[    0.356666]  [<c194b830>] ? rest_init+0x130/0x130
[    0.356666] Code: 8b 45 e0 89 44 24 04 e8 26 ab 19 00 31 c0 e9 8f fd ff ff 8d 76 00 8d bc 27 00 00 00 00 55 89 e5 3e 8d 74 26 00 8b 90 80 01 00 00 <8b> 52 64 8b 52 08 89 90 28 01 00 00 31 c0 5d c3 66 90 55 89 e5
[    0.356666] EIP: [<c17b762e>] pcibios_root_bridge_prepare+0xe/0x20 SS:ESP 0068:cfcc1d20
[    0.356666] CR2: 0000000000000064
[    0.356666] ---[ end trace 849b10f6fad5eb6f ]---
[    0.356666] ------------[ cut here ]------------

git bisect start 263df82c9fb5fc5b3504d294f7ab813c274bf1d1 7171511eaec5bf23fb06078f59784a3a0626b38f --
git bisect  bad 56485a95d9ffdb6b431ea00171e320112a992b40  # 01:09      0-      9  rtc: Fix suspend/resume for APM X-Gene SoC RTC driver
git bisect  bad 2a146bde9a2b55d8d9e98a1f4b72ca694aa67879  # 01:22      0-     19  dt-bindings: pci: xgene pcie device tree bindings
git bisect  bad 6f99bc949b1c90ff342a7d44ac4122322a7ccb78  # 02:11      0-      1  pci: Create pci_host_bridge before its associated bus in pci_create_root_bus.
git bisect good d1eee6a841dd73ecd3cce0e70686152cc5789c91  # 02:14     20+      0  arm64: Add architecture support for PCI
git bisect good ab84a1c5bef2092f87cf22239df5592c68a83978  # 02:17     20+      0  pci: Introduce pci_register_io_range() helper function.
git bisect good 175e0143313927c52fd7b6b5b66c202e3d6ab31c  # 02:39     20+      0  pci: OF: Fix the conversion of IO ranges into IO resources.
# first bad commit: [6f99bc949b1c90ff342a7d44ac4122322a7ccb78] pci: Create pci_host_bridge before its associated bus in pci_create_root_bus.
git bisect good 175e0143313927c52fd7b6b5b66c202e3d6ab31c  # 02:40     60+      0  pci: OF: Fix the conversion of IO ranges into IO resources.
git bisect  bad 263df82c9fb5fc5b3504d294f7ab813c274bf1d1  # 02:40      0-     11  arm64: Add defconfig and dts for Xen on APM X-Gene Mustang board
git bisect good 67b9d76f9e2f9f87f94a11521cc996dc2e43ce14  # 02:45     60+      0  Merge tag 'dm-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
git bisect good b7079aa6ab3e23d080fa9b79d7f414d8287c32b4  # 02:48     60+      0  Add linux-next specific files for 20140711


This script may reproduce the error.

----------------------------------------------------------------------------
#!/bin/bash

kernel=$1

kvm=(
	qemu-system-x86_64
	-cpu kvm64
	-enable-kvm
	-kernel $kernel
	-m 320
	-smp 2
	-net nic,vlan=1,model=e1000
	-net user,vlan=1
	-boot order=nc
	-no-reboot
	-watchdog i6300esb
	-rtc base=localtime
	-serial stdio
	-display none
	-monitor null )

append=(
	hung_task_panic=1
	earlyprintk=ttyS0,115200
	debug
	apic=debug
	sysrq_always_enabled
	rcupdate.rcu_cpu_stall_timeout=100
	panic=10
	softlockup_panic=1
	nmi_watchdog=panic
	prompt_ramdisk=0
	console=ttyS0,115200
	console=tty0
	vga=normal
	root=/dev/ram0
	rw
	drbd.minor_count=8
)

"${kvm[@]}" --append "${append[*]}"
----------------------------------------------------------------------------

Thanks,
Jet


View attachment "dmesg-quantal-ivb41-111:20140712021157:i386-randconfig-r1-0711::" of type "text/plain" (38220 bytes)

Download attachment "i386-randconfig-r1-0711-263df82c9fb5fc5b3504d294f7ab813c274bf1d1-BUG:-unable-to-handle-kernel-NULL-pointer-dereference-14730.log" of type "application/octet-stream" (32078 bytes)

View attachment "config-3.16.0-rc1-00005-g6f99bc9" of type "text/plain" (97439 bytes)

View attachment "Attached Message Part" of type "text/plain" (87 bytes)

Powered by blists - more mailing lists