[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141218170349.GC9298@wfg-t540p.sh.intel.com>
Date: Thu, 18 Dec 2014 09:03:49 -0800
From: Fengguang Wu <fengguang.wu@...el.com>
To: Thierry Reding <treding@...dia.com>
Cc: Daniel Vetter <daniel.vetter@...ll.ch>, LKP <lkp@...org>,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Subject: [drm/fb-helper] WARNING: CPU: 1 PID: 1 at lib/idr.c:506 idr_remove()
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://anongit.freedesktop.org/drm-intel topic/core-stuff
commit 7bf2844ed14de049a4ccec26eb3d8b4c3d5c1971
Author: Thierry Reding <treding@...dia.com>
AuthorDate: Wed Dec 17 16:39:59 2014 +0100
Commit: Daniel Vetter <daniel.vetter@...ll.ch>
CommitDate: Wed Dec 17 22:05:08 2014 +0100
drm/fb-helper: Propagate errors from initial config failure
Make drm_fb_helper_initial_config() return an int rather than a bool so
that the error can be properly propagated. While at it, update drivers
to propagate errors further rather than just ignore them.
Cc: David Airlie <airlied@...ux.ie>
Cc: Daniel Vetter <daniel.vetter@...ll.ch>
Cc: Patrik Jakobsson <patrik.r.jakobsson@...il.com>
Cc: Rob Clark <robdclark@...il.com>
Cc: Tomi Valkeinen <tomi.valkeinen@...com>
Cc: Alex Deucher <alexander.deucher@....com>
Cc: Christian König <christian.koenig@....com>
Cc: Ben Skeggs <bskeggs@...hat.com>
Signed-off-by: Thierry Reding <treding@...dia.com>
Reviewed-by: Alex Deucher <alexander.deucher@....com>
Reviewed-by: Patrik Jakobsson <patrik.r.jakobsson@...il.com>
Signed-off-by: Daniel Vetter <daniel.vetter@...ll.ch>
Attached dmesg for the parent commit, too, to help confirm whether it is a noise error.
Judging from the kernel boot hang timestamps, that looks like an noise.
+------------------------------------------------+------------+------------+------------+
| | 7552e7dd95 | 7bf2844ed1 | 7bf2844ed1 |
+------------------------------------------------+------------+------------+------------+
| boot_successes | 0 | 0 | 0 |
| boot_failures | 80 | 12 | 12 |
| BUG:kernel_boot_hang | 80 | | |
| WARNING:at_lib/idr.c:#idr_remove() | 0 | 12 | 12 |
| RIP:strcmp | 0 | 5 | 5 |
| Kernel_panic-not_syncing:softlockup:hung_tasks | 0 | 11 | 11 |
| backtrace:__pci_register_driver | 0 | 12 | 12 |
| backtrace:drm_pci_init | 0 | 12 | 12 |
| backtrace:cirrus_init | 0 | 12 | 12 |
| backtrace:kernel_init_freeable | 0 | 12 | 12 |
| backtrace:i2c_register_driver | 0 | 5 | 5 |
| backtrace:bh1780_driver_init | 0 | 2 | 2 |
| RIP:kset_find_obj | 0 | 6 | 6 |
| backtrace:i2o_pci_init | 0 | 2 | 2 |
| backtrace:i2o_iop_init | 0 | 2 | 2 |
| backtrace:lm3642_i2c_driver_init | 0 | 1 | 1 |
| BUG:kernel_test_hang | 0 | 1 | 1 |
| backtrace:usb_register_driver | 0 | 2 | 2 |
| backtrace:hanwang_driver_init | 0 | 2 | 2 |
| backtrace:__gameport_register_driver | 0 | 1 | 1 |
| backtrace:grip_drv_init | 0 | 1 | 1 |
| backtrace:w83l785ts_driver_init | 0 | 2 | 2 |
| backtrace:spi_register_driver | 0 | 1 | 1 |
| backtrace:dac7512_driver_init | 0 | 1 | 1 |
+------------------------------------------------+------------+------------+------------+
[ 4.754439] cirrus 0000:00:02.0: Fatal error during modeset init: -22
[ 4.756061] ------------[ cut here ]------------
[ 4.756061] ------------[ cut here ]------------
[ 4.756800] WARNING: CPU: 1 PID: 1 at lib/idr.c:506 idr_remove+0x384/0x3b0()
[ 4.756800] WARNING: CPU: 1 PID: 1 at lib/idr.c:506 idr_remove+0x384/0x3b0()
[ 4.758132] idr_remove called for id=20 which is not allocated.
[ 4.758132] idr_remove called for id=20 which is not allocated.
[ 4.759056] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.18.0-rc4-g7bf2844 #20
[ 4.759056] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.18.0-rc4-g7bf2844 #20
[ 4.760184] 0000000000000009
[ 4.760184] 0000000000000009 ffff88001147fa08 ffff88001147fa08 ffffffff824ce992 ffffffff824ce992 ffffffff81151538 ffffffff81151538
[ 4.761391] ffff88001147fa58
[ 4.761391] ffff88001147fa58 ffff88001147fa48 ffff88001147fa48 ffffffff810dac1a ffffffff810dac1a ffff88001147fa78 ffff88001147fa78
[ 4.762593] ffff88001147fac8
[ 4.762593] ffff88001147fac8 ffff880012c916f8 ffff880012c916f8 ffff880012d01310 ffff880012d01310 ffff880012c91060 ffff880012c91060
[ 4.763796] Call Trace:
[ 4.763796] Call Trace:
[ 4.764187] [<ffffffff824ce992>] dump_stack+0x86/0xbc
[ 4.764187] [<ffffffff824ce992>] dump_stack+0x86/0xbc
[ 4.764995] [<ffffffff81151538>] ? console_unlock+0x3b8/0x7a0
[ 4.764995] [<ffffffff81151538>] ? console_unlock+0x3b8/0x7a0
[ 4.765908] [<ffffffff810dac1a>] warn_slowpath_common+0x9a/0xd0
[ 4.765908] [<ffffffff810dac1a>] warn_slowpath_common+0x9a/0xd0
[ 4.766846] [<ffffffff810dace1>] warn_slowpath_fmt+0x51/0x60
[ 4.766846] [<ffffffff810dace1>] warn_slowpath_fmt+0x51/0x60
[ 4.767740] [<ffffffff819b7c7c>] ? drm_mode_object_put+0x2c/0x70
[ 4.767740] [<ffffffff819b7c7c>] ? drm_mode_object_put+0x2c/0x70
[ 4.768689] [<ffffffff8170f7c4>] idr_remove+0x384/0x3b0
[ 4.768689] [<ffffffff8170f7c4>] idr_remove+0x384/0x3b0
[ 4.769521] [<ffffffff81738039>] ? debug_check_no_obj_freed+0x29/0x40
[ 4.769521] [<ffffffff81738039>] ? debug_check_no_obj_freed+0x29/0x40
[ 4.770551] [<ffffffff819b7c94>] drm_mode_object_put+0x44/0x70
[ 4.770551] [<ffffffff819b7c94>] drm_mode_object_put+0x44/0x70
[ 4.771473] [<ffffffff819c1bba>] drm_mode_destroy+0x2a/0x50
[ 4.771473] [<ffffffff819c1bba>] drm_mode_destroy+0x2a/0x50
[ 4.772358] [<ffffffff8199d155>] drm_fb_helper_crtc_free+0xc5/0x110
[ 4.772358] [<ffffffff8199d155>] drm_fb_helper_crtc_free+0xc5/0x110
[ 4.773348] [<ffffffff8199e724>] drm_fb_helper_fini+0x74/0xc0
[ 4.773348] [<ffffffff8199e724>] drm_fb_helper_fini+0x74/0xc0
[ 4.774259] [<ffffffff81cbaa73>] cirrus_fbdev_fini+0x193/0x230
[ 4.774259] [<ffffffff81cbaa73>] cirrus_fbdev_fini+0x193/0x230
[ 4.775186] [<ffffffff81cb98c9>] cirrus_modeset_fini+0x19/0x50
[ 4.775186] [<ffffffff81cb98c9>] cirrus_modeset_fini+0x19/0x50
[ 4.776117] [<ffffffff81cb7afb>] cirrus_driver_unload+0x2b/0x80
[ 4.776117] [<ffffffff81cb7afb>] cirrus_driver_unload+0x2b/0x80
[ 4.777061] [<ffffffff81cb7c97>] cirrus_driver_load+0x147/0x220
[ 4.777061] [<ffffffff81cb7c97>] cirrus_driver_load+0x147/0x220
[ 4.778004] [<ffffffff819b0515>] drm_dev_register+0x115/0x1c0
[ 4.778004] [<ffffffff819b0515>] drm_dev_register+0x115/0x1c0
[ 4.778917] [<ffffffff819b3c8c>] drm_get_pci_dev+0xcc/0x300
[ 4.778917] [<ffffffff819b3c8c>] drm_get_pci_dev+0xcc/0x300
[ 4.779807] [<ffffffff824e3361>] ? mutex_unlock+0x11/0x20
[ 4.779807] [<ffffffff824e3361>] ? mutex_unlock+0x11/0x20
[ 4.780675] [<ffffffff81cb9b7a>] cirrus_pci_probe+0x13a/0x180
[ 4.780675] [<ffffffff81cb9b7a>] cirrus_pci_probe+0x13a/0x180
[ 4.781586] [<ffffffff817893fc>] pci_device_probe+0xbc/0x180
[ 4.781586] [<ffffffff817893fc>] pci_device_probe+0xbc/0x180
[ 4.782482] [<ffffffff81e470bb>] really_probe+0x7b/0x340
[ 4.782482] [<ffffffff81e470bb>] really_probe+0x7b/0x340
[ 4.783327] [<ffffffff81e47481>] __driver_attach+0x101/0x110
[ 4.783327] [<ffffffff81e47481>] __driver_attach+0x101/0x110
[ 4.784228] [<ffffffff81e47380>] ? really_probe+0x340/0x340
[ 4.784228] [<ffffffff81e47380>] ? really_probe+0x340/0x340
[ 4.785110] [<ffffffff81e4477b>] bus_for_each_dev+0xab/0x100
[ 4.785110] [<ffffffff81e4477b>] bus_for_each_dev+0xab/0x100
[ 4.786004] [<ffffffff81e477a1>] driver_attach+0x21/0x30
[ 4.786004] [<ffffffff81e477a1>] driver_attach+0x21/0x30
[ 4.786846] [<ffffffff81e458a0>] bus_add_driver+0x2a0/0x3e0
[ 4.786846] [<ffffffff81e458a0>] bus_add_driver+0x2a0/0x3e0
[ 4.787721] [<ffffffff81e48397>] driver_register+0xa7/0x190
[ 4.787721] [<ffffffff81e48397>] driver_register+0xa7/0x190
[ 4.788618] [<ffffffff8178988f>] __pci_register_driver+0x6f/0x80
[ 4.788618] [<ffffffff8178988f>] __pci_register_driver+0x6f/0x80
[ 4.789564] [<ffffffff819b3ff9>] drm_pci_init+0x139/0x170
[ 4.789564] [<ffffffff819b3ff9>] drm_pci_init+0x139/0x170
[ 4.790445] [<ffffffff839234c6>] ? mgag200_init+0x3c/0x3c
[ 4.790445] [<ffffffff839234c6>] ? mgag200_init+0x3c/0x3c
[ 4.791306] [<ffffffff839234f9>] cirrus_init+0x33/0x3c
[ 4.791306] [<ffffffff839234f9>] cirrus_init+0x33/0x3c
[ 4.792129] [<ffffffff838d88d6>] do_one_initcall+0x176/0x247
[ 4.792129] [<ffffffff838d88d6>] do_one_initcall+0x176/0x247
[ 4.793030] [<ffffffff838d8b79>] kernel_init_freeable+0x1d2/0x2d4
[ 4.793030] [<ffffffff838d8b79>] kernel_init_freeable+0x1d2/0x2d4
[ 4.793999] [<ffffffff824c2750>] ? rest_init+0x130/0x130
[ 4.793999] [<ffffffff824c2750>] ? rest_init+0x130/0x130
[ 4.794847] [<ffffffff824c2761>] kernel_init+0x11/0x1a0
[ 4.794847] [<ffffffff824c2761>] kernel_init+0x11/0x1a0
[ 4.795676] [<ffffffff824e7f3c>] ret_from_fork+0x7c/0xb0
[ 4.795676] [<ffffffff824e7f3c>] ret_from_fork+0x7c/0xb0
[ 4.796523] [<ffffffff824c2750>] ? rest_init+0x130/0x130
[ 4.796523] [<ffffffff824c2750>] ? rest_init+0x130/0x130
[ 4.797374] ---[ end trace 84335bfc53d465fe ]---
[ 4.797374] ---[ end trace 84335bfc53d465fe ]---
git bisect start 7bf2844ed14de049a4ccec26eb3d8b4c3d5c1971 955289c7cfad158dc939e150896a240f549ccc60 --
git bisect good a18c0af171bfb875012da26f23df051004726973 # 06:09 20+ 20 drm: Zero out DRM object memory upon cleanup
git bisect good ae28290be3871969fc3f64b480d42575a16ae990 # 06:21 20+ 20 drm: bit of spell-check / editorializing.
git bisect good 05acaec334fcc1132d1e48c5042e044651e0b75b # 06:32 20+ 20 drm: Reorganize probed mode validation
git bisect good 261ea74f3689a997502f1264494f1749951a05a8 # 06:47 20+ 20 drm: Remove stale comment
git bisect good 6d11a2f00724d52b988b5fedc6e6a050e1a46389 # 06:59 20+ 20 drm: Make drm_crtc_helper.h standalone includible
git bisect good 7552e7dd9527c41f891c87854418896eaf309c20 # 07:07 20+ 20 drm: Include drm_crtc_helper.h in DocBook
# first bad commit: [7bf2844ed14de049a4ccec26eb3d8b4c3d5c1971] drm/fb-helper: Propagate errors from initial config failure
git bisect good 7552e7dd9527c41f891c87854418896eaf309c20 # 07:13 60+ 80 drm: Include drm_crtc_helper.h in DocBook
# extra tests on HEAD of drm-intel/topic/core-stuff
git bisect bad 7bf2844ed14de049a4ccec26eb3d8b4c3d5c1971 # 07:13 0- 12 drm/fb-helper: Propagate errors from initial config failure
# extra tests on tree/branch drm-intel/topic/core-stuff
git bisect bad 7bf2844ed14de049a4ccec26eb3d8b4c3d5c1971 # 07:13 0- 12 drm/fb-helper: Propagate errors from initial config failure
# extra tests on tree/branch linus/master
git bisect good 87c31b39abcb6fb6bd7d111200c9627a594bf6a9 # 07:19 60+ 64 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
# extra tests on tree/branch next/master
git bisect good 5fef85d456eedf616809f7bf722b6f6a782d8a93 # 07:30 60+ 60 Add linux-next specific files for 20141217
This script may reproduce the error.
----------------------------------------------------------------------------
#!/bin/bash
kernel=$1
initrd=quantal-core-x86_64.cgz
wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/raw/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-cpu kvm64
-enable-kvm
-kernel $kernel
-initrd $initrd
-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=-1
softlockup_panic=1
nmi_watchdog=panic
oops=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-client6-7:20141218055208:x86_64-randconfig-n0-12152252:3.18.0-rc4-g7bf2844:20" of type "text/plain" (90104 bytes)
View attachment "dmesg-quantal-client6-10:20141218071302:x86_64-randconfig-n0-12152252:3.18.0-rc4-g7552e7d:30" of type "text/plain" (89333 bytes)
View attachment "config-3.18.0-rc4-g7bf2844" of type "text/plain" (85585 bytes)
_______________________________________________
LKP mailing list
LKP@...ux.intel.com
Powered by blists - more mailing lists