[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140816060851.GA22098@localhost>
Date: Sat, 16 Aug 2014 14:08:51 +0800
From: Fengguang Wu <fengguang.wu@...el.com>
To: Liviu Dudau <Liviu.Dudau@....com>
Cc: Christoffer Dall <christoffer.dall@...aro.org>,
Jet Chen <jet.chen@...el.com>, Su Tao <tao.su@...el.com>,
Yuanhan Liu <yuanhan.liu@...el.com>, LKP <lkp@...org>,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [pcibios_root_bridge_prepare] BUG: unable to handle kernel NULL
pointer dereference
Greetings,
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 | 2af469d82f |
+---------------------------------------------------------+------------+------------+------------+
| boot_successes | 65 | 0 | 0 |
| boot_failures | 15 | 20 | 11 |
| WARNING:CPU:PID:at_mm/early_ioremap.c:__early_ioremap() | 15 | 20 | 10 |
| backtrace:acpi_initialize_tables | 15 | 20 | 10 |
| backtrace:acpi_table_init | 15 | 20 | 10 |
| backtrace:acpi_boot_table_init | 15 | 20 | 10 |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference | 0 | 20 | 11 |
| Oops | 0 | 20 | 11 |
| EIP_is_at_pcibios_root_bridge_prepare | 0 | 20 | 11 |
| Kernel_panic-not_syncing:Fatal_exception | 0 | 20 | 11 |
| backtrace:pcibios_scan_root | 0 | 20 | 10 |
| backtrace:pci_legacy_init | 0 | 20 | 10 |
| backtrace:pci_subsys_init | 0 | 20 | 10 |
| backtrace:kernel_init_freeable | 0 | 20 | 11 |
| backtrace:acpi_bus_scan | 0 | 0 | 1 |
| backtrace:acpi_scan_init | 0 | 0 | 1 |
| backtrace:acpi_init | 0 | 0 | 1 |
+---------------------------------------------------------+------------+------------+------------+
[ 0.167350] PCI: Probing PCI hardware
[ 0.167350] PCI: Probing PCI hardware
[ 0.168140] PCI: root bus 00: using default resources
[ 0.168140] PCI: root bus 00: using default resources
[ 0.169232] PCI: Probing PCI hardware (bus 00)
[ 0.169232] PCI: Probing PCI hardware (bus 00)
[ 0.170009] BUG: unable to handle kernel
[ 0.170009] BUG: unable to handle kernel NULL pointer dereferenceNULL pointer dereference at 00000064
at 00000064
[ 0.171553] IP:
[ 0.171553] IP: [<41726569>] pcibios_root_bridge_prepare+0x9/0x20
[<41726569>] pcibios_root_bridge_prepare+0x9/0x20
[ 0.172863] *pde = 00000000
[ 0.172863] *pde = 00000000
[ 0.173498] Oops: 0000 [#1]
[ 0.173498] Oops: 0000 [#1] DEBUG_PAGEALLOCDEBUG_PAGEALLOC
[ 0.174407] CPU: 0 PID: 1 Comm: swapper Tainted: G W 3.16.0-rc1-00005-g6f99bc9 #1
[ 0.174407] CPU: 0 PID: 1 Comm: swapper Tainted: G W 3.16.0-rc1-00005-g6f99bc9 #1
[ 0.176197] task: 40020d50 ti: 40022000 task.ti: 40022000
[ 0.176197] task: 40020d50 ti: 40022000 task.ti: 40022000
[ 0.177338] EIP: 0060:[<41726569>] EFLAGS: 00010206 CPU: 0
[ 0.177338] EIP: 0060:[<41726569>] EFLAGS: 00010206 CPU: 0
[ 0.178508] EIP is at pcibios_root_bridge_prepare+0x9/0x20
[ 0.178508] EIP is at pcibios_root_bridge_prepare+0x9/0x20
[ 0.179660] EAX: 40076c00 EBX: 40060880 ECX: 00000000 EDX: 00000000
[ 0.179660] EAX: 40076c00 EBX: 40060880 ECX: 00000000 EDX: 00000000
[ 0.180000] ESI: 40076c00 EDI: 00000000 EBP: 40023e14 ESP: 40023e14
[ 0.180000] ESI: 40076c00 EDI: 00000000 EBP: 40023e14 ESP: 40023e14
[ 0.180000] DS: 007b ES: 007b FS: 0000 GS: 00e0 SS: 0068
[ 0.180000] DS: 007b ES: 007b FS: 0000 GS: 00e0 SS: 0068
[ 0.180000] CR0: 8005003b CR2: 00000064 CR3: 01cd8000 CR4: 000006d0
[ 0.180000] CR0: 8005003b CR2: 00000064 CR3: 01cd8000 CR4: 000006d0
git bisect start 2af469d82fdf68c8315d47c424c614f097f34bfe c77dcacb397519b6ade8f08201a4a90a7f4f751e --
git bisect good e854c688381e070be212422fce2cea1fb9d7c2ef # 20:39 20+ 5 arm/arm64: KVM: vgic: Improve handling of GICD_I{CS}PENDRn
git bisect good 1b233bf6034bea4b76c8c0b17e4efd5971689ca9 # 20:44 20+ 0 arm/arm64: KVM: vgic: Clarify and correct vgic documentation
git bisect good e216fd3bc192cc5aadac841938d1eb4c8911d30f # 20:47 20+ 0 WIP: arm/arm64: KVM: Implement support for unqueueing active interrupts
git bisect bad 56485a95d9ffdb6b431ea00171e320112a992b40 # 20:50 0- 20 rtc: Fix suspend/resume for APM X-Gene SoC RTC driver
git bisect bad 2a146bde9a2b55d8d9e98a1f4b72ca694aa67879 # 20:53 0- 20 dt-bindings: pci: xgene pcie device tree bindings
git bisect bad 6f99bc949b1c90ff342a7d44ac4122322a7ccb78 # 20:56 0- 20 pci: Create pci_host_bridge before its associated bus in pci_create_root_bus.
git bisect good d1eee6a841dd73ecd3cce0e70686152cc5789c91 # 21:01 20+ 20 arm64: Add architecture support for PCI
git bisect good 175e0143313927c52fd7b6b5b66c202e3d6ab31c # 21:05 20+ 15 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 # 21:07 60+ 15 pci: OF: Fix the conversion of IO ranges into IO resources.
git bisect bad 2af469d82fdf68c8315d47c424c614f097f34bfe # 21:07 0- 11 Merge remote-tracking branch 'linaro/apm_linux_v3.16-rc1' into mustang/vgic-active-unqueue
git bisect good c9d26423e56ce1ab4d786f92aebecf859d419293 # 21:16 60+ 60 Merge tag 'pm+acpi-3.17-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
git bisect good 7bef919141fc53b780070a0aec3ddd893eeece8f # 21:27 60+ 60 Add linux-next specific files for 20140815
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
load_ramdisk=2
prompt_ramdisk=0
console=ttyS0,115200
console=tty0
vga=normal
root=/dev/ram0
rw
drbd.minor_count=8
)
"${kvm[@]}" --append "${append[*]}"
----------------------------------------------------------------------------
Thanks,
Fengguang
View attachment "dmesg-quantal-lkp-nex04-171:20140815205527:i386-randconfig-ha1-0814::" of type "text/plain" (28384 bytes)
Download attachment "i386-randconfig-ha1-0814-2af469d82fdf68c8315d47c424c614f097f34bfe-BUG:-unable-to-handle-kernel-NULL-pointer-dereference-41839.log" of type "application/octet-stream" (36912 bytes)
View attachment "config-3.16.0-rc1-00005-g6f99bc9" of type "text/plain" (72404 bytes)
Powered by blists - more mailing lists