Hi David,
0day kernel testing robot got the below dmesg and the first bad commit is
git://people.freedesktop.org/~dvdhrm/linux fops
commit 6a616be3329e4ae59ae33e8de7be9b62e9535baa
Author: David Herrmann <[email protected]>
AuthorDate: Tue Jun 17 22:02:20 2014 +0200
Commit: David Herrmann <[email protected]>
CommitDate: Tue Jun 17 22:13:23 2014 +0200
kactive: extract active-ref implementation of kernfs
This introduces a new reference-type "struct kactive". Unlike kref, this
type manages "active references". That means, references can only be
acquired if the object is active. At any time the object can be
deactivated, causing any new attempt to acquire an active reference to
fail.
This patch extracts the kactive code from kernfs and turns it into an
unlocked variant. kernfs is updated to use the new code.
Signed-off-by: David Herrmann <[email protected]>
+------------------------------------------------------+------------+------------+
| | 809f893c60 | 6a616be332 |
+------------------------------------------------------+------------+------------+
| boot_successes | 60 | 0 |
| boot_failures | 0 | 20 |
| WARNING:CPU:PID:at_fs/kernfs/dir.c:kernfs_activate() | 0 | 20 |
| backtrace:kernfs_create_root | 0 | 20 |
| backtrace:sysfs_init | 0 | 20 |
| backtrace:mnt_init | 0 | 20 |
| backtrace:vfs_caches_init | 0 | 20 |
| Out_of_memory:Kill_process | 0 | 1 |
+------------------------------------------------------+------------+------------+
[ 0.011522] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.012007] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.013069] ------------[ cut here ]------------
[ 0.013865] WARNING: CPU: 0 PID: 0 at fs/kernfs/dir.c:947 kernfs_activate+0x90/0xd0()
[ 0.016004] Modules linked in:
[ 0.016765] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00002-g6a616be #18
[ 0.018102] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 0.019012] 0000000000000000 ffffffff82003e18 ffffffff819c2b6e 0000000000000000
[ 0.020393] ffffffff82003e50 ffffffff810e0e90 ffffffff81249048 ffff88001167f000
[ 0.021966] ffff88001167f000 0000000000000002 0000000000000000 ffffffff82003e60
[ 0.023587] Call Trace:
[ 0.024007] [<ffffffff819c2b6e>] dump_stack+0x4d/0x66
[ 0.024847] [<ffffffff810e0e90>] warn_slowpath_common+0x7f/0x98
[ 0.025744] [<ffffffff81249048>] ? kernfs_activate+0x90/0xd0
[ 0.026620] [<ffffffff810e0f57>] warn_slowpath_null+0x1a/0x1c
[ 0.028005] [<ffffffff81249048>] kernfs_activate+0x90/0xd0
[ 0.028887] [<ffffffff812492f7>] kernfs_create_root+0xd8/0xe7
[ 0.029779] [<ffffffff82182212>] sysfs_init+0x13/0x51
[ 0.030593] [<ffffffff8217fa9d>] mnt_init+0x116/0x215
[ 0.031415] [<ffffffff8217f6cb>] vfs_caches_init+0x99/0x110
[ 0.032007] [<ffffffff82153eb1>] start_kernel+0x3d2/0x424
[ 0.032864] [<ffffffff821538ed>] ? set_init_arg+0x53/0x53
[ 0.033713] [<ffffffff82153120>] ? early_idt_handlers+0x120/0x120
[ 0.034706] [<ffffffff821534a2>] x86_64_start_reservations+0x2a/0x2c
[ 0.036006] [<ffffffff821535df>] x86_64_start_kernel+0x13b/0x148
[ 0.036945] ---[ end trace a625764830fea92a ]---
[ 0.037981] Initializing cgroup subsys memory
git bisect start 9cafa0eb8a6d3009f961c7b7fa14a2c5f149f9e2 7171511eaec5bf23fb06078f59784a3a0626b38f --
git bisect good 809f893c604209db19b38927ca4b927358eed321 # 04:43 20+ 0 fs: add f_op invokation guards
git bisect bad 6a616be3329e4ae59ae33e8de7be9b62e9535baa # 04:44 0- 1 kactive: extract active-ref implementation of kernfs
# first bad commit: [6a616be3329e4ae59ae33e8de7be9b62e9535baa] kactive: extract active-ref implementation of kernfs
git bisect good 809f893c604209db19b38927ca4b927358eed321 # 04:46 60+ 0 fs: add f_op invokation guards
git bisect bad 9cafa0eb8a6d3009f961c7b7fa14a2c5f149f9e2 # 04:46 0- 13 fs: add f_op->xy() active-protection
git bisect good ebe06187bf2aec10d537ce4595e416035367d703 # 04:49 60+ 0 epoll: fix use-after-free in eventpoll_release_file
git bisect good 5f295cdf5c5dbbb0c40f10f2ddae02ff46bbf773 # 04:52 60+ 0 Add linux-next specific files for 20140617
This script may reproduce the error.
-----------------------------------------------------------------------------
#!/bin/bash
kernel=$1
kvm=(
qemu-system-x86_64 -cpu kvm64 -enable-kvm
-kernel $kernel
-smp 2
-m 256M
-net nic,vlan=0,macaddr=00:00:00:00:00:00,model=virtio
-net user,vlan=0
-net nic,vlan=1,model=e1000
-net user,vlan=1
-boot order=nc
-no-reboot
-watchdog i6300esb
-serial stdio
-display none
-monitor null
)
append=(
debug
sched_debug
apic=debug
ignore_loglevel
sysrq_always_enabled
panic=10
prompt_ramdisk=0
earlyprintk=ttyS0,115200
console=ttyS0,115200
console=tty0
vga=normal
root=/dev/ram0
rw
)
"${kvm[@]}" --append "${append[*]}"
-----------------------------------------------------------------------------
Thanks,
Jet