Re: [LKP] [delayed_fput] BUG: unable to handle kernel paging request at ffff8800122a0ad0
by Fengguang Wu
On Wed, Jul 30, 2014 at 04:00:58PM -0700, Alexei Starovoitov wrote:
> On Wed, Jul 30, 2014 at 3:51 PM, David Rientjes <rientjes(a)google.com> wrote:
> > On Wed, 30 Jul 2014, Christoph Hellwig wrote:
> >
> >> On Wed, Jul 30, 2014 at 11:55:41AM +0800, Fengguang Wu wrote:
> >> > Greetings,
> >> >
> >> > 0day kernel testing robot got the below dmesg and the first bad commit is
> >>
> >> How does this manage to trip over a 2 year old commit now?
>
> may be because all kernels are built with gcc 4.8.2 ?
> Fengguang, did you recently switch to new compiler?
> I think all older builds were with 4.6.3
Alexei, I've been using gcc 4.8.2 for 4 months.
Maybe it's because I test new randconfigs every day. And the problem
may only show up with very specific kernel config?
Thanks,
Fengguang
> > I think there's something weird going on with the testing of CONFIG_SLOB,
> > same as http://permalink.gmane.org/gmane.linux.kernel/1759314 that
> > identified a harmless commit that only initializes a field of
> > struct mm_struct and then ended up exploded in slob freeing.
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo(a)vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
8 years
[xhci] kernel BUG at include/linux/scatterlist.h:115!
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://git.kernel.org/pub/scm/linux/kernel/git/djbw/usb.git td-fragments-v1
commit 61d9c2ad31b11b87c319bbc2a963040742bac77c
Author: Dan Williams <dan.j.williams(a)intel.com>
AuthorDate: Tue Jul 22 00:08:51 2014 -0700
Commit: Dan Williams <dan.j.williams(a)intel.com>
CommitDate: Thu Jul 24 18:12:38 2014 -0700
xhci: unit test ring enqueue/dequeue routines
Given the complexity of satisfying xhci 1.0+ host trb boundary
constraints, provide a test case that exercises inserting mid-segment
links into a ring.
The linker --wrap= option is used to not pollute the global identifier
space and to make it clear which standard xhci driver routines are being
mocked-up. The --wrap= option does not come into play when both
xhci-hcd and xhci-test are built-in to the kernel, so namespace
collisions are prevented by excluding xhci-test from the build when
xhci-hcd is built-in.
It's unfortunate that this is an in-kernel test rather than userspace
and that the infrastructure is custom rather than generic. That said,
it serves its purpose of exercising the corner cases of the scatterlist
parsing implementation in xhci.
Signed-off-by: Dan Williams <dan.j.williams(a)intel.com>
+-----------------------------------------------------------+------------+------------+------------------+
| | 5a87c68543 | 61d9c2ad31 | v3.16-rc6_072510 |
+-----------------------------------------------------------+------------+------------+------------------+
| boot_successes | 60 | 0 | 0 |
| boot_failures | 0 | 20 | 11 |
| kernel_BUG_at_include/linux/scatterlist.h | 0 | 20 | 11 |
| invalid_opcode | 0 | 20 | 11 |
| RIP:setup_test_skip64 | 0 | 20 | 11 |
| Kernel_panic-not_syncing:Attempted_to_kill_init_exitcode= | 0 | 20 | 11 |
| backtrace:xhci_test_init | 0 | 20 | 11 |
| backtrace:kernel_init_freeable | 0 | 20 | 11 |
+-----------------------------------------------------------+------------+------------+------------------+
[ 0.661771] Silicon Labs C2 port support v. 0.51.0 - (C) 2007 Rodolfo Giometti
[ 0.662899] usbcore: registered new interface driver rtsx_usb
[ 0.669506] ------------[ cut here ]------------
[ 0.670014] kernel BUG at include/linux/scatterlist.h:115!
[ 0.670014] invalid opcode: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
[ 0.670014] Modules linked in:
[ 0.670014] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.16.0-rc5-00226-g61d9c2a #1
[ 0.670014] task: ffff8800116b8000 ti: ffff8800116c0000 task.ti: ffff8800116c0000
[ 0.670014] RIP: 0010:[<ffffffff81571f12>] [<ffffffff81571f12>] setup_test_skip64+0x152/0x2f0
[ 0.670014] RSP: 0000:ffff8800116c3d08 EFLAGS: 00010202
[ 0.670014] RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000003
[ 0.670014] RDX: 0000000000000001 RSI: 0000000000000001 RDI: ffffffff81c51928
[ 0.670014] RBP: ffff8800116c3d68 R08: 0000000000000000 R09: 0000000000000000
[ 0.670014] R10: ffff880011437000 R11: ffff880013cda4a8 R12: 000000000000ffe0
[ 0.670014] R13: ffff8800116c3e18 R14: ffff8800116c3e0c R15: 0000000000001000
[ 0.670014] FS: 0000000000000000(0000) GS:ffff880013800000(0000) knlGS:0000000000000000
[ 0.670014] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 0.670014] CR2: 0000000000000000 CR3: 0000000001b21000 CR4: 00000000000006f0
[ 0.670014] Stack:
[ 0.670014] ffffffffffffffff ffffffff81f74b97 0000000000000000 ffff8800116c3e40
[ 0.670014] 000000000000ffe0 ffff880011437000 0000000000000000 0000000000000000
[ 0.670014] ffff88000f67d800 0000000000000000 ffffffff81f74b97 0000000000000000
[ 0.670014] Call Trace:
[ 0.670014] [<ffffffff81f74b97>] ? mon_bin_init+0x107/0x107
[ 0.670014] [<ffffffff81f74b97>] ? mon_bin_init+0x107/0x107
[ 0.670014] [<ffffffff81f74dd5>] xhci_test_init+0x23e/0xc56
[ 0.670014] [<ffffffff81571dc0>] ? setup_test_32_248_8+0x370/0x370
[ 0.670014] [<ffffffff8127ffff>] ? migrate_vmas+0x2f/0xc0
[ 0.670014] [<ffffffff813bd246>] ? kvasprintf+0x86/0xa0
[ 0.670014] [<ffffffff81571dc0>] ? setup_test_32_248_8+0x370/0x370
[ 0.670014] [<ffffffff81571a50>] ? setup_test_wrap64+0x380/0x380
[ 0.670014] [<ffffffff815716d0>] ? setup_test_dont_trim+0x350/0x350
[ 0.670014] [<ffffffff81571380>] ? xhci_ring_free+0x1d0/0x1d0
[ 0.670014] [<ffffffff81f74b97>] ? mon_bin_init+0x107/0x107
[ 0.670014] [<ffffffff81002243>] do_one_initcall+0x1b3/0x300
[ 0.670014] [<ffffffff810f2bec>] ? parse_args+0x3fc/0x6d0
[ 0.670014] [<ffffffff81f20592>] kernel_init_freeable+0x118/0x1e1
[ 0.670014] [<ffffffff81f1f9f9>] ? do_early_param+0xc3/0xc3
[ 0.670014] [<ffffffff816bad30>] ? rest_init+0x160/0x160
[ 0.670014] [<ffffffff816bad3e>] kernel_init+0xe/0x160
[ 0.670014] [<ffffffff816d46fc>] ret_from_fork+0x7c/0xb0
[ 0.670014] [<ffffffff816bad30>] ? rest_init+0x160/0x160
[ 0.670014] Code: e8 64 5a b1 ff 83 f0 01 31 d2 48 c7 c7 28 19 c5 81 0f b6 d8 89 de e8 3e 66 c5 ff 48 63 d3 48 83 04 d5 e0 dd e7 81 01 85 db 74 02 <0f> 0b 44 89 e0 48 8b 75 c8 48 ba 00 00 00 80 ff 77 00 00 25 ff
[ 0.670014] RIP [<ffffffff81571f12>] setup_test_skip64+0x152/0x2f0
[ 0.670014] RSP <ffff8800116c3d08>
[ 0.705046] ---[ end trace 15557dc49fd3f925 ]---
[ 0.705639] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
git bisect start 98e9e9efbc6c4585c23b77550cb961da1b0b8c84 9a3c4145af32125c5ee39c0272662b47307a8323 --
git bisect good 28a8d131fa8d9d65ec6bc91356caa6de030f7b44 # 12:50 20+ 0 Merge 'tty/tty-next' into devel-hourly-2014072510
git bisect good b939dd815bc66d1ec0b71ddd879e69c6f2cc5701 # 12:54 20+ 0 Merge 'battery/master' into devel-hourly-2014072510
git bisect good 3b46ae4ef1bcd6f2cebb20dd967ca6398c0ae97c # 12:57 20+ 0 Merge 'hwmon/hwmon' into devel-hourly-2014072510
git bisect good 126cd14c70323d188924acce9e969e279e0612cf # 13:05 20+ 0 Merge 'hwmon/hwmon-staging' into devel-hourly-2014072510
git bisect bad 9719ff8bbd9c4bd011d1fe4c68aeef90e61c4665 # 13:07 0- 20 Merge 'djbw-usb/td-fragments-v1' into devel-hourly-2014072510
git bisect good 8346b33fad01cfe93f0fd0e64cd32ff40bd4ba41 # 13:16 20+ 0 Documentation: DocBook: elieminate doc build break
git bisect good 1c094728b68c28e52abb64f0686aace61495a4fa # 13:19 20+ 0 usb-core: Remove Fix mes in file hcd.c
git bisect good 7ebdb52e192c4d496a9b3a87d47eba3eba3e1fd4 # 13:25 20+ 0 phy: miphy365x: Represent each PHY channel as a DT subnode
git bisect good 31033361d83c1b0e3b900c474d31374b63892a9e # 13:34 20+ 0 xhci: introduce xhci_to_dev
git bisect good ea22a95d88bc1381888cc41556d4a92783285221 # 13:38 20+ 0 xhci: introduce struct xhci_ring_pointer
git bisect good 182711c160f9a102cde5ba7e38a8e9d5156b2945 # 13:48 20+ 0 xhci: combine xhci_queue_bulk_tx() and queue_bulk_sg_tx()
git bisect good 5eec677ca7e5e5ae2ec2e262f099c2cf75888f1e # 13:53 20+ 0 xhci: fix xhci_queue_ctrl_tx() ring space reservation
git bisect bad 61d9c2ad31b11b87c319bbc2a963040742bac77c # 13:57 0- 20 xhci: unit test ring enqueue/dequeue routines
git bisect good 5a87c68543bfd6421f3cf59a44a49b97257d606a # 14:01 20+ 0 xhci: v1.0 scatterlist enqueue support (td-fragment rework)
# first bad commit: [61d9c2ad31b11b87c319bbc2a963040742bac77c] xhci: unit test ring enqueue/dequeue routines
git bisect good 5a87c68543bfd6421f3cf59a44a49b97257d606a # 14:03 60+ 0 xhci: v1.0 scatterlist enqueue support (td-fragment rework)
git bisect bad 98e9e9efbc6c4585c23b77550cb961da1b0b8c84 # 14:03 0- 11 0day head guard for 'devel-hourly-2014072510'
git bisect good 82e13c71bc655b6dc7110da4e164079dadb44892 # 02:09 60+ 0 Merge branch 'for-3.16' of git://linux-nfs.org/~bfields/linux
git bisect good 5a7439efd1c5c416f768fc550048ca130cf4bf99 # 02:41 60+ 0 Add linux-next specific files for 20140725
This script may reproduce the error.
----------------------------------------------------------------------------
#!/bin/bash
kernel=$1
initrd=yocto-minimal-x86_64.cgz
wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-cpu kvm64
-enable-kvm
-kernel $kernel
-initrd $initrd
-m 320
-smp 1
-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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[delayed_fput] BUG: unable to handle kernel paging request at ffff8800122a0ad0
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
commit 4a9d4b024a3102fc083c925c242d98ac27b1c5f6
Author: Al Viro <viro(a)zeniv.linux.org.uk>
AuthorDate: Sun Jun 24 09:56:45 2012 +0400
Commit: Al Viro <viro(a)zeniv.linux.org.uk>
CommitDate: Sun Jul 22 23:57:58 2012 +0400
switch fput to task_work_add
... and schedule_work() for interrupt/kernel_thread callers
(and yes, now it *is* OK to call from interrupt).
We are guaranteed that __fput() will be done before we return
to userland (or exit). Note that for fput() from a kernel
thread we get an async behaviour; it's almost always OK, but
sometimes you might need to have __fput() completed before
you do anything else. There are two mechanisms for that -
a general barrier (flush_delayed_fput()) and explicit
__fput_sync(). Both should be used with care (as was the
case for fput() from kernel threads all along). See comments
in fs/file_table.c for details.
Signed-off-by: Al Viro <viro(a)zeniv.linux.org.uk>
+-------------------------------------------------------+------------+------------+---------------+
| | a2d4c71d15 | 4a9d4b024a | next-20140725 |
+-------------------------------------------------------+------------+------------+---------------+
| boot_successes | 900 | 189 | 14 |
| boot_failures | 0 | 111 | 7 |
| BUG:Bad_page_state_in_process | 0 | 1 | |
| general_protection_fault | 0 | 2 | 2 |
| RIP:slob_alloc | 0 | 1 | |
| Kernel_panic-not_syncing:Fatal_exception | 0 | 15 | 6 |
| backtrace:cryptomgr_test | 0 | 2 | 3 |
| backtrace:kmem_cache_alloc_node | 0 | 1 | |
| backtrace:__delayacct_tsk_init | 0 | 1 | |
| backtrace:do_fork | 0 | 1 | |
| BUG:kernel_boot_hang | 0 | 85 | |
| BUG:spinlock_bad_magic_on_CPU | 0 | 2 | |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference | 0 | 3 | 1 |
| Oops | 0 | 23 | 5 |
| RIP:dcache_readdir | 0 | 1 | |
| RIP:kobject_get_path | 0 | 1 | |
| backtrace:acpi_bus_register_driver | 0 | 1 | |
| backtrace:acpi_button_init | 0 | 1 | |
| RIP:__d_lookup | 0 | 1 | |
| BUG:unable_to_handle_kernel_paging_request | 0 | 20 | 6 |
| RIP:slob_page_alloc | 0 | 8 | 2 |
| backtrace:subsys_system_register | 0 | 9 | |
| backtrace:init_clocksource_sysfs | 0 | 9 | |
| RIP:kzfree | 0 | 10 | 2 |
| Kernel_panic-not_syncing:Fatal_exception_in_interrupt | 0 | 10 | 1 |
| backtrace:run_ksoftirqd | 0 | 10 | |
| RIP:set_slob | 0 | 2 | |
| RIP:do_raw_spin_lock | 0 | 1 | |
| backtrace:async_schedule | 0 | 1 | |
| backtrace:acpi_battery_init | 0 | 1 | |
| RIP:__d_lookup_rcu | 0 | 0 | 1 |
| backtrace:vfs_stat | 0 | 0 | 1 |
| backtrace:SyS_newstat | 0 | 0 | 1 |
| RIP:no_context | 0 | 0 | 1 |
| RIP:crypto_ahash_setkey | 0 | 0 | 1 |
+-------------------------------------------------------+------------+------------+---------------+
[ 0.491632] microcode: CPU0 sig=0x306c1, pf=0x1, revision=0x1
[ 0.492419] microcode: Microcode Update Driver: v2.00 <tigran(a)aivazian.fsnet.co.uk>, Peter Oruba
[ 0.495181] alg: No test for __gcm-aes-aesni (__driver-gcm-aes-aesni)
[ 0.496687] BUG: unable to handle kernel paging request at ffff8800122a0ad0
[ 0.496916] IP: [<ffffffff810b8a17>] slob_page_alloc+0x3c/0x1dc
[ 0.496916] PGD 15a0063 PUD 15a4063 PMD 13cd5067 PTE 122a0160
[ 0.496916] Oops: 0000 [#1] DEBUG_PAGEALLOC
[ 0.496916] CPU 0
[ 0.496916] Modules linked in:
[ 0.496916]
[ 0.496916] Pid: 1, comm: swapper Not tainted 3.5.0-rc6-00262-g4a9d4b0 #7 Bochs Bochs
[ 0.496916] RIP: 0010:[<ffffffff810b8a17>] [<ffffffff810b8a17>] slob_page_alloc+0x3c/0x1dc
[ 0.496916] RSP: 0018:ffff880012823bd8 EFLAGS: 00010002
[ 0.496916] RAX: ffff8800122a0ad0 RBX: ffff88001229df88 RCX: 0000000000000038
[ 0.496916] RDX: 0000000000000008 RSI: 0000000000000070 RDI: ffff88001229df88
[ 0.496916] RBP: ffff880012823c20 R08: ffff88001229dbc8 R09: ffffffff815c3410
[ 0.496916] R10: 0000000000000007 R11: 0000000000000008 R12: ffff8800132ce740
[ 0.496916] R13: 0000000000000000 R14: 0000000000000008 R15: ffff8800122a0ad0
[ 0.496916] FS: 0000000000000000(0000) GS:ffffffff815b0000(0000) knlGS:0000000000000000
[ 0.496916] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 0.496916] CR2: ffff8800122a0ad0 CR3: 000000000159f000 CR4: 00000000000406f0
[ 0.496916] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 0.496916] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 0.496916] Process swapper (pid: 1, threadinfo ffff880012822000, task ffff88001280e810)
[ 0.496916] Stack:
[ 0.496916] 0000000000000007 0000003800000008 fffffffffffffff8 0000000000000038
[ 0.496916] ffffffff815c3410 0000000000000070 ffff8800132ce740 0000000000000008
[ 0.496916] 0000000000000038 ffff880012823c80 ffffffff810b8c42 0000000000000297
[ 0.496916] Call Trace:
[ 0.496916] [<ffffffff810b8c42>] slob_alloc.isra.15+0x8b/0x208
[ 0.496916] [<ffffffff810b8ea7>] kmem_cache_alloc_node+0x28/0x5f
[ 0.496916] [<ffffffff810a1419>] ? kstrdup+0x28/0x41
[ 0.496916] [<ffffffff81100d99>] sysfs_new_dirent+0x51/0x101
[ 0.496916] [<ffffffff81101120>] create_dir+0x33/0xa9
[ 0.496916] [<ffffffff81101462>] sysfs_create_dir+0x95/0xb3
[ 0.496916] [<ffffffff811813f3>] kobject_add_internal+0xca/0x1c1
[ 0.496916] [<ffffffff8118171c>] ? kobject_set_name+0x38/0x3a
[ 0.496916] [<ffffffff81181a66>] kset_register+0x20/0x3e
[ 0.496916] [<ffffffff81181ae7>] kset_create_and_add+0x63/0x7d
[ 0.496916] [<ffffffff81216835>] __bus_register+0x102/0x27b
[ 0.496916] [<ffffffff8164ea8c>] ? clocksource_done_booting+0x5a/0x5a
[ 0.496916] [<ffffffff81216dea>] subsys_system_register+0x1d/0xc1
[ 0.496916] [<ffffffff8164ea8c>] ? clocksource_done_booting+0x5a/0x5a
[ 0.496916] [<ffffffff8164ea9e>] init_clocksource_sysfs+0x12/0x52
[ 0.496916] [<ffffffff81002078>] do_one_initcall+0x78/0x131
[ 0.496916] [<ffffffff8163cca5>] kernel_init+0x14a/0x1c2
[ 0.496916] [<ffffffff8163c502>] ? do_early_param+0x8a/0x8a
[ 0.496916] [<ffffffff813e50d4>] kernel_thread_helper+0x4/0x10
[ 0.496916] [<ffffffff8163cb5b>] ? start_kernel+0x40a/0x40a
[ 0.496916] [<ffffffff813e50d0>] ? gs_change+0x13/0x13
[ 0.496916] Code: 41 54 49 89 fc 53 31 db 48 83 ec 20 48 89 45 d0 48 d1 6d d0 48 63 c2 8b 4d d0 4c 8b 7f 20 4c 8d 50 ff 48 f7 d8 31 ff 48 89 45 c8 <66> 45 8b 37 b8 01 00 00 00 66 45 85 f6 44 0f 4e f0 85 d2 74 11
[ 0.496916] RIP [<ffffffff810b8a17>] slob_page_alloc+0x3c/0x1dc
[ 0.496916] RSP <ffff880012823bd8>
[ 0.496916] CR2: ffff8800122a0ad0
[ 0.496916] ---[ end trace 4eaa2a86a8e2da22 ]---
[ 0.496916] Kernel panic - not syncing: Fatal exception
git bisect start v3.6 v3.5 --
git bisect bad 1dd8372d350583b0acc8d7cfd7a1dee05e1942dc # 00:14 10- 12 MAINTAINERS: update address for Dan Williams
git bisect bad a410963ba4c0c768302f0298e258b1ee940e8316 # 00:19 169- 7 Merge branch 'i2c-embedded/for-next' of git://git.pengutronix.de/git/wsa/linux
git bisect bad e8ff13b0bf88b5e696323a1eec877783d965b3c6 # 00:25 59- 24 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
git bisect bad e66d637134b7045ea6f14bdd416cd3695f73ed42 # 00:28 7- 13 Merge tag 'dma' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
git bisect good 7cd58b0a3b33ca9e1f1dd15b30c708ef77ba6d3e # 00:44 300+ 13 Merge tag 'regmap-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap
git bisect bad a66d2c8f7ec1284206ca7c14569e2a607583f1e3 # 00:54 218- 7 Merge branch 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
git bisect good 7100e505b76b4e2efd88b2459d1a932214e29f8a # 01:11 300+ 0 Merge tag 'pm-for-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
git bisect good 5b160bd426946c85f32b15e5d34d62d2618a5a87 # 01:19 300+ 0 Merge branch 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect good a6be1fcbc57f95bb47ef3c8e4ee3d83731b8f21e # 01:31 300+ 0 Merge tag 'mmc-merge-for-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc
git bisect good 79714f72d3b964611997de512cb29198c9f2dbbb # 01:43 300+ 0 get rid of kern_path_parent()
git bisect bad 715189d836ab276b3d0fc114681f12b423686ffa # 01:52 67- 2 hfs: push lock_super down
git bisect good 0bdaea9017b9d2b9996e153a71ee03555969b80e # 02:12 300+ 1 VFS: Split inode_permission()
git bisect bad 4a9d4b024a3102fc083c925c242d98ac27b1c5f6 # 02:20 43- 35 switch fput to task_work_add
git bisect good 158e1645e07f3e9f7e4962d7a0997f5c3b98311b # 02:35 300+ 74 trim task_work: get rid of hlist
git bisect good ed3e694d78cc75fa79bf29698631b146fd27aa35 # 02:47 300+ 0 move exit_task_work() past exit_files() et.al.
git bisect good a2d4c71d1559426155e5da8db3265bfa0d8d398d # 02:57 300+ 0 deal with task_work callbacks adding more work
# first bad commit: [4a9d4b024a3102fc083c925c242d98ac27b1c5f6] switch fput to task_work_add
git bisect good a2d4c71d1559426155e5da8db3265bfa0d8d398d # 03:04 900+ 0 deal with task_work callbacks adding more work
git bisect bad 5a7439efd1c5c416f768fc550048ca130cf4bf99 # 03:04 0- 7 Add linux-next specific files for 20140725
git bisect bad 9c5502189fa00ad623aed7ff006d5c2a16b121c0 # 03:11 12- 18 Merge tag 'sound-3.16-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
git bisect bad 5a7439efd1c5c416f768fc550048ca130cf4bf99 # 03:11 0- 7 Add linux-next specific files for 20140725
This script may reproduce the error.
----------------------------------------------------------------------------
#!/bin/bash
kernel=$1
initrd=yocto-minimal-x86_64.cgz
wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-enable-kvm
-cpu Haswell,+smep,+smap
-kernel $kernel
-initrd $initrd
-m 320
-smp 1
-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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[RCU] BUG: sleeping function called from invalid context at kernel/rcu/update.c:871
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu_tasks.2014.07.28d
commit bd14ddc45614b61210fdf0ee4e94152948dd9d5e
Author: Paul E. McKenney <paulmck(a)linux.vnet.ibm.com>
AuthorDate: Mon Jul 28 12:41:25 2014 -0700
Commit: Paul E. McKenney <paulmck(a)linux.vnet.ibm.com>
CommitDate: Mon Jul 28 14:57:56 2014 -0700
rcu: Make RCU-tasks track exiting tasks
This commit adds synchronization with exiting tasks, so that RCU-tasks
avoids waiting on tasks that no longer exist.
Signed-off-by: Paul E. McKenney <paulmck(a)linux.vnet.ibm.com>
Conflicts:
kernel/rcu/update.c
+--------------------------------------------------------------------------+------------+------------+
| | 4e73c5aafb | bd14ddc456 |
+--------------------------------------------------------------------------+------------+------------+
| boot_successes | 60 | 0 |
| boot_failures | 0 | 20 |
| BUG:sleeping_function_called_from_invalid_context_at_kernel/rcu/update.c | 0 | 20 |
| backtrace:do_group_exit | 0 | 20 |
| backtrace:SyS_exit_group | 0 | 20 |
| backtrace:do_exit | 0 | 0 |
+--------------------------------------------------------------------------+------------+------------+
[ 4.702913] Freeing unused kernel memory: 2000K (ffff88000200c000 - ffff880002200000)
[ 4.730428] Freeing unused kernel memory: 1880K (ffff88000262a000 - ffff880002800000)
[ 4.770934] random: init urandom read with 6 bits of entropy available
[ 4.793994] BUG: sleeping function called from invalid context at kernel/rcu/update.c:871
[ 4.802080] in_atomic(): 1, irqs_disabled(): 0, pid: 94, name: hostname
[ 4.808864] CPU: 0 PID: 94 Comm: hostname Not tainted 3.16.0-rc1-00010-gbd14ddc #1
[ 4.814520] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
[ 4.821278] ffff88000f2acac0 ffff88001322fe88 ffffffff81fdcc15 ffff88000f2acad0
[ 4.829295] ffff88001322fe98 ffffffff810cc549 ffff88001322feb0 ffffffff811099f9
[ 4.837254] ffff88000f2ad0d8 ffff88001322fec0 ffffffff81110a01 ffff88001322ff38
[ 4.845685] Call Trace:
[ 4.849022] [<ffffffff81fdcc15>] dump_stack+0x85/0xba
[ 4.853129] [<ffffffff810cc549>] __might_sleep+0x129/0x180
[ 4.857319] [<ffffffff811099f9>] exit_rcu_tasks+0x29/0xa0
[ 4.861615] [<ffffffff81110a01>] exit_rcu+0x11/0x20
[ 4.865672] [<ffffffff81097e65>] do_exit+0xa05/0xfc0
[ 4.870864] [<ffffffff810985b6>] do_group_exit+0x46/0x130
[ 4.875191] [<ffffffff810986b7>] SyS_exit_group+0x17/0x20
[ 4.878693] [<ffffffff81ff1ba9>] system_call_fastpath+0x16/0x1b
[ 5.081134] init: Failed to create pty - disabling logging for job
[ 5.083491] init: Temporary process spawn error: No such file or directory
[ 5.112668] init: Failed to create pty - disabling logging for job
git bisect start d4762699d270faa2e5f8cc9b4a1feefb98270e5b 64aa90f26c06e1cb2aacfb98a7d0eccfbd6c1a91 --
git bisect good c34f8002be490ebe4490ed028648598c8067fff7 # 10:55 16+ 0 Merge 'skn/cacheinfo' into devel-hourly-2014072909
git bisect good 27df6032094f4633a974397e845f76a6ed00bf89 # 10:58 16+ 0 Merge 'jolsa-perf/perf/ctf_convert_4' into devel-hourly-2014072909
git bisect good 93bb3907de114a5ada548126cdd99475fd2b5ae8 # 11:27 16+ 0 Merge 'jcmvbkbc-xtensa/xtensa-debug' into devel-hourly-2014072909
git bisect good 8d443796938e40aeedf7e9b38d56729fc3070d18 # 12:30 16+ 0 Merge 'wireless-testing/master' into devel-hourly-2014072909
git bisect good e45ccc6c7f65c2d6823eaf4c082417c455b9af4b # 12:38 16+ 0 Merge 'robclark/msm-next' into devel-hourly-2014072909
git bisect bad 21fa7826ce4c9938067972a47d8fa8fdba2805a3 # 12:41 0- 16 Merge 'rcu/rcu/rcu_tasks' into devel-hourly-2014072909
git bisect good 41d8e02382e1e79c17a78c0898bc938531000716 # 13:05 20+ 0 rcutorture: Add torture tests for RCU-tasks
git bisect good 4e73c5aafbe9108c83de0f8f5294e6ccad2e29c3 # 13:10 20+ 0 rcu: Add stall-warning checks for RCU-tasks
git bisect bad ebc6436166ae583e6db906eb7ffdb1c198921380 # 13:21 0- 4 rcu: Improve RCU-tasks energy efficiency
git bisect bad bd14ddc45614b61210fdf0ee4e94152948dd9d5e # 13:40 0- 20 rcu: Make RCU-tasks track exiting tasks
# first bad commit: [bd14ddc45614b61210fdf0ee4e94152948dd9d5e] rcu: Make RCU-tasks track exiting tasks
git bisect good 4e73c5aafbe9108c83de0f8f5294e6ccad2e29c3 # 13:45 60+ 0 rcu: Add stall-warning checks for RCU-tasks
git bisect bad d4762699d270faa2e5f8cc9b4a1feefb98270e5b # 14:30 0- 11 0day head guard for 'devel-hourly-2014072909'
git bisect good 31dab719fa50cf56d56d3dc25980fecd336f6ca8 # 14:38 60+ 0 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
git bisect good e40cff4a7990e5d73eaad0a2f2593fe725e24cdd # 15:26 60+ 0 Add linux-next specific files for 20140728
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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[fs] BUG: unable to handle kernel NULL pointer dereference at 00000104
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://people.freedesktop.org/~dvdhrm/linux fops
commit bc2d5105254034778034487d8f3aec42db2a5285
Author: David Herrmann <dh.herrmann(a)gmail.com>
AuthorDate: Tue Jun 17 22:10:12 2014 +0200
Commit: David Herrmann <dh.herrmann(a)gmail.com>
CommitDate: Tue Jul 22 14:54:07 2014 +0200
fs: add active reference counter to "struct file"
This adds an kactive reference counter to "struct file". This allows to
acquire active references on any file that enabled it. Furthermore, all
file->f_op->xy() callbacks are modified to acquire an active reference
before entering and dropping it afterwards.
Drivers have to opt-in to enable this feature. By using fops_file_attach()
in the ->open() callback, they can enable the active-counter on the file.
From now on they can use fops_file_disable() and fops_file_drain() to
prevent any new active-references from being acquired and waiting for all
those to be released.
All those protected files have to be linked to a parent device (called
"struct fops_device"). A driver has to allocate and manage those. The
parent device can be used to atomically disable and drain all linked
files.
Signed-off-by: David Herrmann <dh.herrmann(a)gmail.com>
===================================================
PARENT COMMIT NOT CLEAN. LOOK OUT FOR WRONG BISECT!
===================================================
Attached dmesg for the parent commit, too, to help confirm whether it is a noise error.
+------------------------------------------------------+------------+------------+
| | 47702c7c4c | bc2d510525 |
+------------------------------------------------------+------------+------------+
| boot_successes | 61 | 0 |
| boot_failures | 2 | 21 |
| BUG:kernel_boot_crashed | 2 | |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference | 0 | 21 |
| Oops | 0 | 21 |
| EIP_is_at_get_unmapped_area | 0 | 21 |
| Kernel_panic-not_syncing:Fatal_exception | 0 | 21 |
| backtrace:do_execve | 0 | 21 |
| backtrace:run_init_process | 0 | 21 |
+------------------------------------------------------+------------+------------+
[ 2.054083] debug: unmapping init [mem 0xb48be000-0xb490ffff]
[ 2.054646] Write protecting the kernel text: 6640k
[ 2.055106] Write protecting the kernel read-only data: 4012k
[ 2.056047] BUG: unable to handle kernel NULL pointer dereference at 00000104
[ 2.056648] IP: [<b3c81d3e>] get_unmapped_area+0x40/0xef
[ 2.056905] *pde = 00000000
[ 2.056905] Oops: 0000 [#1] DEBUG_PAGEALLOC
[ 2.056905] CPU: 0 PID: 1 Comm: init Not tainted 3.16.0-rc5-00231-gbc2d510 #2
[ 2.056905] task: b0030010 ti: b0032000 task.ti: b0032000
[ 2.056905] EIP: 0060:[<b3c81d3e>] EFLAGS: 00010246 CPU: 0
[ 2.056905] EIP is at get_unmapped_area+0x40/0xef
[ 2.056905] EAX: c290ddc0 EBX: 00000000 ECX: 00003000 EDX: 00000000
[ 2.056905] ESI: b427f198 EDI: b3c81ed4 EBP: b0033eac ESP: b0033e98
[ 2.056905] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068
[ 2.056905] CR0: 8005003b CR2: 00000104 CR3: 12916000 CR4: 00000690
[ 2.056905] Stack:
[ 2.056905] 00000000 00003000 47e77cc0 b427f198 b0030010 b0033ed0 b3c1bff5 00000000
[ 2.056905] 00000000 c290de1c c290ddc0 47e77cc0 47e767c8 c2901800 b0033f50 b3cb5d6c
[ 2.056905] b0032000 00002000 00000006 0001d000 00000000 00000001 47e77cc0 0804fad4
[ 2.056905] Call Trace:
[ 2.056905] [<b3c1bff5>] arch_setup_additional_pages+0x4e/0x188
[ 2.056905] [<b3cb5d6c>] load_elf_binary+0x9c5/0xff7
[ 2.056905] [<b3c95585>] search_binary_handler+0x41/0x95
[ 2.056905] [<b3c95955>] do_execve+0x37c/0x48a
[ 2.056905] [<b3c0035c>] run_init_process+0x1c/0x1e
[ 2.056905] [<b426a586>] kernel_init+0x34/0xb8
[ 2.056905] [<b427a7c0>] ret_from_kernel_thread+0x20/0x30
[ 2.056905] [<b426a552>] ? rest_init+0x10e/0x10e
[ 2.056905] Code: 76 0a be f4 ff ff ff e9 c4 00 00 00 89 c3 a1 20 a9 67 b4 8b 80 10 02 00 00 85 db 8b 78 0c 74 0b 8b 43 14 8b 40 58 85 c0 0f 45 f8 <8b> b3 04 01 00 00 85 f6 74 54 83 c6 14 31 c9 8d 41 01 89 c2 89
[ 2.056905] EIP: [<b3c81d3e>] get_unmapped_area+0x40/0xef SS:ESP 0068:b0033e98
[ 2.056905] CR2: 0000000000000104
[ 2.070596] ---[ end trace 10ed763858844c61 ]---
[ 2.070973] Kernel panic - not syncing: Fatal exception
git bisect start 988a7cce9cf281d8954af4f421419713e2d6499a 9a3c4145af32125c5ee39c0272662b47307a8323 --
git bisect good 0b6fe2b988caee808f3ccb616fa22f2a56a042e8 # 21:58 20+ 1 Merge 'wsa/i2c/for-next' into devel-roam-i386-201407222107
git bisect good d127240d43380e9e1463fd8cde0134f85b66c261 # 22:00 20+ 0 Merge 'linux-sti/sti-dt-for-v3.17-1' into devel-roam-i386-201407222107
git bisect bad 1713b12636b3daab7ea2625efa376119c7b490de # 22:04 1- 10 Merge 'dvdhrm/fops' into devel-roam-i386-201407222107
git bisect good 47702c7c4c9c1e8514ca52e367cf0b71e50177f8 # 22:10 21+ 0 kactive: make kernfs "active-ref" generic
git bisect bad 34e6b7dea8bb2c359c29d4b0021967c6de0f1b7a # 22:17 0- 21 fs: track fops-depth in task_struct
git bisect bad bc2d5105254034778034487d8f3aec42db2a5285 # 22:23 0- 21 fs: add active reference counter to "struct file"
# first bad commit: [bc2d5105254034778034487d8f3aec42db2a5285] fs: add active reference counter to "struct file"
git bisect good 47702c7c4c9c1e8514ca52e367cf0b71e50177f8 # 22:26 63+ 2 kactive: make kernfs "active-ref" generic
git bisect bad 988a7cce9cf281d8954af4f421419713e2d6499a # 22:26 0- 11 0day head guard for 'devel-roam-i386-201407222107'
git bisect good 15ba2236f3556fc01b9ca91394465152b5ea74b6 # 22:36 63+ 1 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
This script may reproduce the error.
----------------------------------------------------------------------------
#!/bin/bash
kernel=$1
initrd=yocto-minimal-i386.cgz
wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-cpu kvm64
-enable-kvm
-kernel $kernel
-initrd $initrd
-m 320
-smp 1
-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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[fork] BUG: unable to handle kernel paging request at ffff88000bb15010
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
commit 0a5f047dcd90af4cb72df583e3ee21a8d9262c4f
Author: Vladimir Davydov <vdavydov(a)parallels.com>
AuthorDate: Thu Jul 10 10:26:23 2014 +1000
Commit: Stephen Rothwell <sfr(a)canb.auug.org.au>
CommitDate: Thu Jul 10 10:26:23 2014 +1000
fork: reset mm->pinned_vm
mm->pinned_vm counts pages of mm's address space that were permanently
pinned in memory by increasing their reference counter. The counter was
introduced by commit bc3e53f682d9 ("mm: distinguish between mlocked and
pinned pages"), while before it locked_vm had been used for such pages.
Obviously, we should reset the counter on fork if !CLONE_VM, just like
we do with locked_vm, but currently we don't. Let's fix it.
This patch will fix the contents of /proc/pid/status:VmPin.
ib_umem_get[infiniband] and perf_mmap still check pinned_vm against
RLIMIT_MEMLOCK. It's left from the times when pinned pages were accounted
under locked_vm, but today it looks wrong. It isn't clear how we should
deal with it.
We still have some drivers accounting pinned pages under mm->locked_vm -
this is what commit bc3e53f682d9 was fighting against. It's
infiniband/usnic and vfio.
Signed-off-by: Vladimir Davydov <vdavydov(a)parallels.com>
Cc: Oleg Nesterov <oleg(a)redhat.com>
Cc: David Rientjes <rientjes(a)google.com>
Cc: Christoph Lameter <cl(a)linux.com>
Cc: Roland Dreier <roland(a)kernel.org>
Cc: Sean Hefty <sean.hefty(a)intel.com>
Cc: Hal Rosenstock <hal.rosenstock(a)gmail.com>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
===================================================
PARENT COMMIT NOT CLEAN. LOOK OUT FOR WRONG BISECT!
===================================================
Attached dmesg for the parent commit, too, to help confirm whether it is a noise error.
+-------------------------------------------------------+------------+------------+---------------+
| | 8df59fd2a3 | 0a5f047dcd | next-20140714 |
+-------------------------------------------------------+------------+------------+---------------+
| boot_successes | 94 | 14 | 6 |
| boot_failures | 20 | 21 | 5 |
| BUG:kernel_boot_hang | 20 | 2 | |
| general_protection_fault | 0 | 9 | 2 |
| RIP:lookup_object | 0 | 5 | 1 |
| Kernel_panic-not_syncing:Fatal_exception | 0 | 12 | 3 |
| backtrace:cryptomgr_test | 0 | 11 | 3 |
| BUG:unable_to_handle_kernel_paging_request | 0 | 9 | 2 |
| Oops | 0 | 10 | 2 |
| RIP:debug_print_object | 0 | 4 | |
| Kernel_panic-not_syncing:Fatal_exception_in_interrupt | 0 | 7 | 2 |
| backtrace:smpboot_thread_fn | 0 | 4 | |
| RIP:slob_page_alloc | 0 | 3 | 1 |
| RIP:crypto_ahash_setkey | 0 | 2 | 1 |
| RIP:__debug_object_init | 0 | 2 | |
| backtrace:__debug_object_init | 0 | 2 | |
| backtrace:debug_object_init | 0 | 2 | |
| backtrace:do_fork | 0 | 2 | 1 |
| RIP:slob_free | 0 | 1 | |
| RIP:__list_del_entry | 0 | 1 | |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference | 0 | 1 | |
| RIP:debug_check_no_obj_freed | 0 | 1 | |
| kernel_BUG_at_kernel/cred.c | 0 | 0 | 1 |
| invalid_opcode | 0 | 0 | 1 |
| RIP:__invalid_creds | 0 | 0 | 1 |
| RIP:kernfs_name_compare | 0 | 0 | 1 |
| backtrace:kobject_add_varg | 0 | 0 | 1 |
| backtrace:kobject_init_and_add | 0 | 0 | 1 |
| backtrace:__platform_driver_register | 0 | 0 | 1 |
| backtrace:u132_hcd_init | 0 | 0 | 1 |
| backtrace:kernel_init_freeable | 0 | 0 | 1 |
+-------------------------------------------------------+------------+------------+---------------+
[ 3.304558] sha1_ssse3: Using AVX optimized SHA-1 implementation
[ 3.307272] alg: No test for crc32 (crc32-pclmul)
[ 3.307987] sha512_ssse3: Using AVX optimized SHA-512 implementation
[ 3.314309] BUG: unable to handle kernel paging request at ffff88000bb15010
[ 3.316371] IP: [<ffffffff8124c717>] slob_free+0x437/0x750
[ 3.316842] PGD 44d2067 PUD 44d3067 PMD 12792067 PTE 800000000bb15060
[ 3.316842] Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
[ 3.316842] CPU: 1 PID: 14 Comm: ksoftirqd/1 Not tainted 3.16.0-rc4-00340-g0a5f047 #3
[ 3.316842] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 3.316842] task: ffff8800120ec000 ti: ffff8800120f0000 task.ti: ffff8800120f0000
[ 3.316842] RIP: 0010:[<ffffffff8124c717>] [<ffffffff8124c717>] slob_free+0x437/0x750
[ 3.316842] RSP: 0000:ffff8800120f3c30 EFLAGS: 00010046
[ 3.316842] RAX: 0000000000000028 RBX: ffff88000bb14fc0 RCX: 0000000000000292
[ 3.316842] RDX: ffff88000bb15010 RSI: 0000000000000808 RDI: ffff88000bb14fb8
[ 3.316842] RBP: ffff8800120f3c60 R08: ffff8800120ec7d0 R09: 0000000000000002
[ 3.316842] R10: 0000000000000000 R11: ffffffb97fd5a00f R12: ffff88000bb14fb8
[ 3.316842] R13: ffff88000bb15010 R14: 0000000000000028 R15: ffff88000bb14000
[ 3.316842] FS: 0000000000000000(0000) GS:ffff880012500000(0000) knlGS:0000000000000000
[ 3.316842] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 3.316842] CR2: ffff88000bb15010 CR3: 0000000002c0b000 CR4: 00000000000406e0
[ 3.316842] Stack:
[ 3.316842] 0000000000000292 0000000000000000 ffff88000bb14fc0 ffff8800000964b0
[ 3.316842] 0000000000000000 ffff88000bb1f888 ffff8800120f3c70 ffffffff8124ca85
[ 3.316842] ffff8800120f3c98 ffffffff8124dcb4 ffffffff82c37220 0000000000000000
[ 3.316842] Call Trace:
[ 3.316842] [<ffffffff8124ca85>] __kmem_cache_free+0x55/0x60
[ 3.316842] [<ffffffff8124dcb4>] kmem_cache_free+0x124/0x170
[ 3.316842] [<ffffffff810e8f94>] put_pid+0x64/0x70
[ 3.316842] [<ffffffff810e8fb2>] delayed_put_pid+0x12/0x20
[ 3.316842] [<ffffffff8205e845>] rcu_do_batch.isra.47+0x73a/0xbbc
[ 3.316842] [<ffffffff8205e60a>] ? rcu_do_batch.isra.47+0x4ff/0xbbc
[ 3.316842] [<ffffffff8114de50>] rcu_process_callbacks+0x630/0x640
[ 3.316842] [<ffffffff810c1734>] __do_softirq+0x1f4/0x5a0
[ 3.316842] [<ffffffff810c1b35>] run_ksoftirqd+0x55/0x90
[ 3.316842] [<ffffffff810f9a3b>] smpboot_thread_fn+0x40b/0x4b0
[ 3.316842] [<ffffffff810f9630>] ? in_egroup_p+0x60/0x60
[ 3.316842] [<ffffffff810ee08f>] kthread+0x12f/0x140
[ 3.316842] [<ffffffff810edf60>] ? __kthread_parkme+0x90/0x90
[ 3.316842] [<ffffffff82092f3c>] ret_from_fork+0x7c/0xb0
[ 3.316842] [<ffffffff810edf60>] ? __kthread_parkme+0x90/0x90
[ 3.316842] Code: 77 ba 4c 89 e7 48 89 4d d0 e8 d6 f5 ff ff 85 c0 48 8b 4d d0 0f 85 6a 01 00 00 49 0f bf c6 48 8d 14 43 4c 39 ea 0f 85 59 01 00 00 <41> 0f b7 75 00 48 83 05 7c d2 ce 01 01 66 85 f6 0f 9f c0 48 89
[ 3.316842] RIP [<ffffffff8124c717>] slob_free+0x437/0x750
[ 3.316842] RSP <ffff8800120f3c30>
[ 3.316842] CR2: ffff88000bb15010
[ 3.316842] ---[ end trace 5a5f8cab8c473caa ]---
[ 3.316842] Kernel panic - not syncing: Fatal exception in interrupt
git bisect start a20416c4071010be525f74c70c7a79c5ee6a2a05 64e3245c870e583004f19d989cdf9edcab6133fd --
git bisect bad c9cb84a9b04de8c162cfd5d1a5d656bfba605100 # 12:21 7- 22 Merge branch 'akpm-current/current'
git bisect good fdb7e2faf0cfcc31540a7c3315a1036ca68fc55e # 12:28 35+ 23 fs.h, drivers/hwmon/asus_atk0110.c: fix DEFINE_SIMPLE_ATTRIBUTE semicolon definition and use
git bisect good 2a1fe6f43ede0e7ce681d403d5b56813316b710a # 12:32 35+ 0 nilfs2: add /sys/fs/nilfs2/<device>/mounted_snapshots group
git bisect bad 34e7589daf2c48535f87b761f934c0036864c78a # 12:34 5- 13 kexec-bzimage64: fix the ordering of registers
git bisect bad 0a5f047dcd90af4cb72df583e3ee21a8d9262c4f # 12:37 17- 20 fork: reset mm->pinned_vm
git bisect good e18cc0b956df9e73e9715923bb50e85e6bca84ea # 12:44 38+ 0 fs/reiserfs: use linux/uaccess.h
git bisect good b96511231ed78d735de9a83568762956b0747066 # 12:47 38+ 0 proc: add and remove /proc entry create checks
git bisect good 8e5b9d83da10c0ba5c40f3f57dd54c68dcc49b18 # 12:51 38+ 4 proc: remove proc_tty_ldisc variable
git bisect good 8df59fd2a350161bd39c3c9f8f4213b2a2a61847 # 12:56 38+ 0 fork/exec: cleanup mm initialization
# first bad commit: [0a5f047dcd90af4cb72df583e3ee21a8d9262c4f] fork: reset mm->pinned_vm
git bisect good 8df59fd2a350161bd39c3c9f8f4213b2a2a61847 # 12:59 114+ 20 fork/exec: cleanup mm initialization
git bisect bad a20416c4071010be525f74c70c7a79c5ee6a2a05 # 13:00 0- 5 Add linux-next specific files for 20140714
git bisect good 1795cd9b3a91d4b5473c97f491d63892442212ab # 13:04 114+ 22 Linux 3.16-rc5
git bisect bad a20416c4071010be525f74c70c7a79c5ee6a2a05 # 13:04 0- 5 Add linux-next specific files for 20140714
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/blob/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-enable-kvm
-cpu Haswell,+smep,+smap
-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=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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[iio:dummy] BUG: unable to handle kernel NULL pointer dereference at 00000000000000e0
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
commit 9ad2e2e1d6506252f31a142a9b04121992af25e3
Author: Jonathan Cameron <jic23(a)cam.ac.uk>
AuthorDate: Fri Oct 14 16:34:15 2011 +0100
Commit: Greg Kroah-Hartman <gregkh(a)suse.de>
CommitDate: Mon Oct 17 15:36:30 2011 -0700
staging:iio:dummy Add buffered reading support
Very simple buffered reading. Did not provide a trigger as
the sysfs trigger already meets that requirement.
Signed-off-by: Jonathan Cameron <jic23(a)cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)suse.de>
===================================================
PARENT COMMIT NOT CLEAN. LOOK OUT FOR WRONG BISECT!
===================================================
Attached dmesg for the parent commit, too, to help confirm whether it is a noise error.
+-------------------------------------------------------+------------+------------+
| | e6477000fc | 9ad2e2e1d6 |
+-------------------------------------------------------+------------+------------+
| boot_successes | 774 | 0 |
| boot_failures | 426 | 300 |
| BUG:kernel_boot_hang | 426 | 0 |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference | 0 | 300 |
| Oops | 0 | 300 |
| RIP:iio_buffer_register | 0 | 300 |
| Kernel_panic-not_syncing:Attempted_to_kill_init | 0 | 300 |
| backtrace:iio_dummy_init | 0 | 300 |
| backtrace:async_page_fault | 0 | 300 |
+-------------------------------------------------------+------------+------------+
[ 1.369812] device-mapper: multipath service-time: version 0.2.0 loaded
[ 1.370969] Bluetooth: Virtual HCI driver ver 1.3
[ 1.371923] cpuidle: using governor ladder
[ 1.374155] BUG: unable to handle kernel NULL pointer dereference at 00000000000000e0
[ 1.375337] IP: [<ffffffff81a111de>] iio_buffer_register+0x2e/0x600
[ 1.376212] PGD 0
[ 1.376515] Oops: 0000 [#1] DEBUG_PAGEALLOC
[ 1.376709] CPU 0
[ 1.376709] Pid: 1, comm: swapper Not tainted 3.1.0-rc4-01470-g9ad2e2e #10
[ 1.376709] RIP: 0010:[<ffffffff81a111de>] [<ffffffff81a111de>] iio_buffer_register+0x2e/0x600
[ 1.376709] RSP: 0018:ffff880013425e50 EFLAGS: 00010246
[ 1.376709] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
[ 1.376709] RDX: 0000000000000005 RSI: ffffffff82a77640 RDI: ffff880011be3008
[ 1.376709] RBP: ffff880013425ec0 R08: 0000000000000000 R09: 0000000000000000
[ 1.376709] R10: 0000000000000001 R11: 0000000000000002 R12: ffff880011be3008
[ 1.376709] R13: 00000000fffffff4 R14: 0000000000000000 R15: ffff880011be3008
[ 1.376709] FS: 0000000000000000(0000) GS:ffffffff82652000(0000) knlGS:0000000000000000
[ 1.376709] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 1.376709] CR2: 00000000000000e0 CR3: 000000000260d000 CR4: 00000000000006b0
[ 1.376709] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1.376709] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1.376709] Process swapper (pid: 1, threadinfo ffff880013424000, task ffff880013422000)
[ 1.376709] Stack:
[ 1.376709] 0000000000000000 0000000000000000 ffff880013425e90 ffffffff81158c61
[ 1.376709] ffff880013425ea0 ffff880011be3668 ffffffff823f05d3 ffffffff82a77640
[ 1.376709] ffff880013425ec0 0000000000000000 ffff880011be3008 00000000fffffff4
[ 1.376709] Call Trace:
[ 1.376709] [<ffffffff81158c61>] ? debug_mutex_init+0x41/0x60
[ 1.376709] [<ffffffff82f39dc6>] iio_dummy_init+0x1a5/0x272
[ 1.376709] [<ffffffff82f39c21>] ? iio_init+0xe6/0xe6
[ 1.376709] [<ffffffff82ee3420>] do_one_initcall+0xd2/0x27b
[ 1.376709] [<ffffffff82ee36fa>] kernel_init+0x131/0x243
[ 1.376709] [<ffffffff81c65004>] kernel_thread_helper+0x4/0x10
[ 1.376709] [<ffffffff81c637b0>] ? retint_restore_args+0x13/0x13
[ 1.376709] [<ffffffff82ee35c9>] ? do_one_initcall+0x27b/0x27b
[ 1.376709] [<ffffffff81c65000>] ? gs_change+0x13/0x13
[ 1.376709] Code: e5 41 57 41 56 41 55 41 54 53 48 83 ec 48 e8 7a 2c 25 00 4c 8b b7 48 04 00 00 48 83 05 ab e4 1b 02 01 31 c0 49 89 ff 48 89 75 c8
[ 1.376709] 83 be e0 00 00 00 00 0f 95 c0 48 63 c8 48 83 c1 02 48 83 04
[ 1.376709] RIP [<ffffffff81a111de>] iio_buffer_register+0x2e/0x600
[ 1.376709] RSP <ffff880013425e50>
[ 1.376709] CR2: 00000000000000e0
[ 1.408095] ---[ end trace 45d5343e36d694cc ]---
[ 1.408926] Kernel panic - not syncing: Attempted to kill init!
git bisect start v3.2 v3.1 --
git bisect bad 6aaf05f472c97ebceff47d9eef464574f1a55727 # 22:21 0- 213 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
git bisect bad 3f8ddb032afa729d4bad1bf2965d3ec068de6b72 # 22:25 0- 71 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock
git bisect bad 37be944a0270402f9cda291a930b0286f6dc92f5 # 22:28 0- 210 Merge branch 'drm-core-next' of git://people.freedesktop.org/~airlied/linux
git bisect bad 3cfef9524677a4ecb392d6fbffe6ebce6302f1d4 # 22:33 0- 214 Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect good 4e7e2a2008f5d8c49791c412849d5b0232d39bb3 # 22:58 300+ 95 Merge branch 'for-linus' of git://opensource.wolfsonmicro.com/regmap
git bisect good 7670c7010c7b367ca40c3aba02afb36149764a6e # 23:16 300+ 106 Merge branch 'for-linus' of git://github.com/gregungerer/m68knommu
git bisect good efb8d21b2c6db3497655cc6a033ae8a9883e4063 # 23:24 300+ 140 Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
git bisect bad 37d96c28ecf0af1215bb6bbf580dbb1fabb5a6ec # 23:32 0- 32 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
git bisect bad aa77677e0a288e08073620db5d2a31df83ca4788 # 23:38 0- 6 Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
git bisect good c909ebbd0dcf19c617408c2cfde56c4bbd4f6cb4 # 23:52 300+ 0 staging: hv: add newline to log messages in netvsc
git bisect good bb7410b2fd325d889f674d2456ce953c519fb774 # 00:07 300+ 35 staging: brcm80211: removed likely/unlikely calls
git bisect good b2d62733e6ea427921e201269c1b55bca3a87936 # 00:17 300+ 73 staging: brcm80211: removed redundant code from brcms_c_set_gmode
git bisect good 39f10bf18c80c98d9fec376beabe80b9c59c7498 # 00:36 300+ 137 staging: xgifb: eliminate XGIfb_CRT2_write_enable variable
git bisect bad e63abd0a1b757f6433869c13da4cf1b07fc14284 # 00:45 0- 49 iio: Spell fix - consistent use of Converter - no functional changes
git bisect good b55e073e95804b022075e464b9cf82e269fd457a # 01:00 300+ 66 staging/easycap: kill timeval members of easycap struct
git bisect bad 9ad2e2e1d6506252f31a142a9b04121992af25e3 # 01:05 0- 148 staging:iio:dummy Add buffered reading support
git bisect good 3e2c96eab9278317569e2baf165f71042c927712 # 01:14 300+ 104 staging:iio: gpio build dependency fixing
git bisect good 9c95e01e84e31178b9a83b683a501ed76166c259 # 01:20 300+ 89 staging:iio:adc:max1363 incorrect allocation of available_scanmasks
git bisect good e6477000fced2c961c26fa42845bd388fdf95e79 # 01:25 300+ 61 staging:iio:dummy Add event support + fake event generator
# first bad commit: [9ad2e2e1d6506252f31a142a9b04121992af25e3] staging:iio:dummy Add buffered reading support
git bisect good e6477000fced2c961c26fa42845bd388fdf95e79 # 01:32 900+ 426 staging:iio:dummy Add event support + fake event generator
git bisect bad eee4ca37c17a74bc97c899b0e68a36ff0f17392a # 01:32 0- 26 0day head guard for 'devel-hourly-2014072206'
git bisect bad 15ba2236f3556fc01b9ca91394465152b5ea74b6 # 01:37 283- 180 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
git bisect bad 594a8bbcd415c795f54ee8b07f64ba313cc6074e # 01:44 1- 6 Add linux-next specific files for 20140721
This script may reproduce the error.
----------------------------------------------------------------------------
#!/bin/bash
kernel=$1
initrd=yocto-minimal-x86_64.cgz
wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-cpu kvm64
-enable-kvm
-kernel $kernel
-initrd $initrd
-m 320
-smp 1
-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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[cryptd] BUG: Bad page state in process cryptomgr_test pfn:0e0d0
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
commit b2bac6acf86d05d8af0499f37d91ecac15722803
Author: Herbert Xu <herbert(a)gondor.apana.org.au>
AuthorDate: Fri Aug 19 16:11:23 2011 +0800
Commit: Herbert Xu <herbert(a)gondor.apana.org.au>
CommitDate: Sat Aug 20 16:08:03 2011 +0800
crypto: cryptd - Use subsys_initcall to prevent races with aesni
As cryptd is depeneded on by other algorithms such as aesni-intel,
it needs to be registered before them. When everything is built
as modules, this occurs naturally. However, for this to work when
they are built-in, we need to use subsys_initcall in cryptd.
Tested-by: Josh Boyer <jwboyer(a)redhat.com>
Signed-off-by: Herbert Xu <herbert(a)gondor.apana.org.au>
+----------------------------------------------------------------------------+------------+------------+
| | 4619b6bdb7 | b2bac6acf8 |
+----------------------------------------------------------------------------+------------+------------+
| boot_successes | 1000 | 863 |
| boot_failures | 0 | 37 |
| BUG:Bad_page_state_in_process | 0 | 15 |
| general_protection_fault | 0 | 11 |
| RIP:slob_alloc | 0 | 6 |
| Kernel_panic-not_syncing:Attempted_to_kill_init | 0 | 10 |
| backtrace:cryptomgr_test | 0 | 8 |
| backtrace:i2c_register_driver | 0 | 1 |
| backtrace:adp8870_init | 0 | 1 |
| BUG:kernel_boot_hang | 0 | 4 |
| kernel_BUG_at_include/linux/mm.h | 0 | 5 |
| invalid_opcode | 0 | 7 |
| RIP:put_page | 0 | 5 |
| backtrace:pcie_port_bus_register | 0 | 1 |
| backtrace:pcie_portdrv_init | 0 | 2 |
| RIP:set_slob | 0 | 1 |
| BUG:sleeping_function_called_from_invalid_context_at_mm/memory.c | 0 | 4 |
| INFO:lockdep_is_turned_off | 0 | 12 |
| BUG:unable_to_handle_kernel_NULL_pointer_dereference | 0 | 6 |
| Oops | 0 | 8 |
| RIP:__lock_acquire | 0 | 3 |
| BUG:scheduling_while_atomic | 0 | 9 |
| INFO:trying_to_register_non-static_key | 0 | 4 |
| BUG:unable_to_handle_kernel_paging_request | 0 | 2 |
| RIP:__fsnotify_update_child_dentry_flags | 0 | 1 |
| RIP:slob_page_alloc | 0 | 1 |
| backtrace:platform_driver_register | 0 | 1 |
| backtrace:max8925_backlight_init | 0 | 1 |
| backtrace:acpi_walk_namespace | 0 | 1 |
| backtrace:acpi_memory_device_init | 0 | 1 |
| backtrace:list_sort_test | 0 | 5 |
| RIP:__d_lookup | 0 | 2 |
| BUG:sleeping_function_called_from_invalid_context_at_kernel/rwsem.c | 0 | 9 |
| backtrace:__pci_register_driver | 0 | 1 |
| BUG:spinlock_lockup_on_CPU | 0 | 1 |
| backtrace:spi_register_driver | 0 | 1 |
| backtrace:tdo24m_init | 0 | 1 |
| RIP:__d_lookup_rcu | 0 | 2 |
| WARNING:at_kernel/lockdep.c:__bfs() | 0 | 1 |
| RIP:__bfs | 0 | 1 |
| kernel_BUG_at_kernel/cred.c | 0 | 2 |
| RIP:__invalid_creds | 0 | 2 |
| Kernel_panic-not_syncing:Fatal_exception_in_interrupt | 0 | 2 |
| Kernel_panic-not_syncing:CRED:put_cred_rcu()sees_with_mag,put,usage,subscr | 0 | 2 |
| backtrace:printk | 0 | 1 |
| backtrace:dquot_init | 0 | 1 |
| backtrace:setup_per_zone_wmarks | 0 | 2 |
| backtrace:init_per_zone_wmark_min | 0 | 2 |
| RIP:path_lookupat | 0 | 1 |
+----------------------------------------------------------------------------+------------+------------+
[ 1.434023] start plist test
[ 1.436544] end plist test
[ 1.436544] end plist test
[ 1.437709] BUG: Bad page state in process cryptomgr_test pfn:0e0d0
[ 1.437709] BUG: Bad page state in process cryptomgr_test pfn:0e0d0
[ 1.440425] list_sort_test: start testing list_sort()
[ 1.440425] list_sort_test: start testing list_sort()
[ 1.443425] page:ffff880011f0fd80 count:0 mapcount:0 mapping:ffff005a0e0d11c8 index:0x0
git bisect start v3.2 v3.1 --
git bisect bad 6aaf05f472c97ebceff47d9eef464574f1a55727 # 08:42 39- 41 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
git bisect bad 3f8ddb032afa729d4bad1bf2965d3ec068de6b72 # 08:48 557- 558 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock
git bisect good 37be944a0270402f9cda291a930b0286f6dc92f5 # 08:52 900+ 900 Merge branch 'drm-core-next' of git://people.freedesktop.org/~airlied/linux
git bisect bad dc47d3810cdcb4f32bfa31d50f26af97aced0638 # 08:54 552- 557 Merge git://github.com/herbertx/crypto
git bisect good acff987d94cbdb4049f3706bed1f1792f8ef6837 # 09:01 900+ 900 Merge branch 'fbdev-next' of git://github.com/schandinat/linux-2.6
git bisect good 1a4ceab195e66bce9c1638fdded6d92988100ba4 # 09:06 900+ 900 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
git bisect good 32087d4eeca14b82660dab288b1d659963b954bd # 09:19 900+ 900 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
git bisect good c87d5d594736dd8b56df67e31846c7d7b8c41a8f # 09:32 900+ 900 Merge Qualcom Hexagon architecture
git bisect good f6d90b4f9ce018bff429d6e01ee672de712b8641 # 10:05 900+ 900 sysfs: Make sysfs_rename safe with sysfs_dirents in rbtrees.
git bisect bad 22e5b20be72e2e166c3ba915b01a59a8eb2dc71f # 10:19 6- 6 crypto: Export crypto_remove_final
git bisect bad 3f2a5d2d42e0784b6aa96c2e5dcdd64e28e838d6 # 10:29 13- 8 crypto: blowfish - rename C-version to blowfish_generic
git bisect good 7c390170b49337477985be7a624015160ffeb056 # 10:58 900+ 0 crypto: sha1 - export sha1_update for reuse
git bisect good 4619b6bdb71362d95810f475cc61a6de9d0b1904 # 11:58 900+ 0 crypto: sha - Fix build error due to crypto_sha1_update
git bisect bad 52ba867c8c23dcb24865f80a95c191501e101b9f # 12:03 34- 6 crypto: blowfish - split generic and common c code
git bisect bad b2bac6acf86d05d8af0499f37d91ecac15722803 # 12:06 2- 3 crypto: cryptd - Use subsys_initcall to prevent races with aesni
# first bad commit: [b2bac6acf86d05d8af0499f37d91ecac15722803] crypto: cryptd - Use subsys_initcall to prevent races with aesni
git bisect good 4619b6bdb71362d95810f475cc61a6de9d0b1904 # 12:12 1000+ 0 crypto: sha - Fix build error due to crypto_sha1_update
git bisect bad dc9944d6bf7da8089c440b9f018767ddab4ce389 # 12:16 0- 4 0day head guard for 'devel-hourly-2014072422'
git bisect bad 82e13c71bc655b6dc7110da4e164079dadb44892 # 12:19 46- 13 Merge branch 'for-3.16' of git://linux-nfs.org/~bfields/linux
git bisect bad 1a58d9909611972fd1c081bb04a9f7dc2571e612 # 12:23 7- 18 Add linux-next specific files for 20140724
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/blob/master/initrd/$initrd
kvm=(
qemu-system-x86_64
-enable-kvm
-cpu Haswell,+smep,+smap
-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=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,
Fengguang
_______________________________________________
LKP mailing list
LKP(a)linux.intel.com
8 years
[vmstat] kernel BUG at mm/vmstat.c:1278!
by Fengguang Wu
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
commit 6e0a6b18b63e2c0a45ff47ab633dd6f3ad417453
Author: Christoph Lameter <cl(a)gentwo.org>
AuthorDate: Wed Jul 23 09:11:43 2014 +1000
Commit: Stephen Rothwell <sfr(a)canb.auug.org.au>
CommitDate: Wed Jul 23 09:11:43 2014 +1000
vmstat: On demand vmstat workers V8
vmstat workers are used for folding counter differentials into the zone,
per node and global counters at certain time intervals. They currently
run at defined intervals on all processors which will cause some holdoff
for processors that need minimal intrusion by the OS.
The current vmstat_update mechanism depends on a deferrable timer firing
every other second by default which registers a work queue item that runs
on the local CPU, with the result that we have 1 interrupt and one
additional schedulable task on each CPU every 2 seconds If a workload
indeed causes VM activity or multiple tasks are running on a CPU, then
there are probably bigger issues to deal with.
However, some workloads dedicate a CPU for a single CPU bound task. This
is done in high performance computing, in high frequency financial
applications, in networking (Intel DPDK, EZchip NPS) and with the advent
of systems with more and more CPUs over time, this may become more and
more common to do since when one has enough CPUs one cares less about
efficiently sharing a CPU with other tasks and more about efficiently
monopolizing a CPU per task.
The difference of having this timer firing and workqueue kernel thread
scheduled per second can be enormous. An artificial test measuring the
worst case time to do a simple "i++" in an endless loop on a bare metal
system and under Linux on an isolated CPU with dynticks and with and
without this patch, have Linux match the bare metal performance (~700
cycles) with this patch and loose by couple of orders of magnitude (~200k
cycles) without it[*]. The loss occurs for something that just calculates
statistics. For networking applications, for example, this could be the
difference between dropping packets or sustaining line rate.
Statistics are important and useful, but it would be great if there would
be a way to not cause statistics gathering produce a huge performance
difference. This patche does just that.
This patch creates a vmstat shepherd worker that monitors the per cpu
differentials on all processors. If there are differentials on a
processor then a vmstat worker local to the processors with the
differentials is created. That worker will then start folding the diffs
in regular intervals. Should the worker find that there is no work to be
done then it will make the shepherd worker monitor the differentials
again.
With this patch it is possible then to have periods longer than
2 seconds without any OS event on a "cpu" (hardware thread).
The patch shows a very minor increased in system performance.
hackbench -s 512 -l 2000 -g 15 -f 25 -P
Results before the patch:
Running in process mode with 15 groups using 50 file descriptors each (== 750 tasks)
Each sender will pass 2000 messages of 512 bytes
Time: 4.992
Running in process mode with 15 groups using 50 file descriptors each (== 750 tasks)
Each sender will pass 2000 messages of 512 bytes
Time: 4.971
Running in process mode with 15 groups using 50 file descriptors each (== 750 tasks)
Each sender will pass 2000 messages of 512 bytes
Time: 5.063
Hackbench after the patch:
Running in process mode with 15 groups using 50 file descriptors each (== 750 tasks)
Each sender will pass 2000 messages of 512 bytes
Time: 4.973
Running in process mode with 15 groups using 50 file descriptors each (== 750 tasks)
Each sender will pass 2000 messages of 512 bytes
Time: 4.990
Running in process mode with 15 groups using 50 file descriptors each (== 750 tasks)
Each sender will pass 2000 messages of 512 bytes
Time: 4.993
Signed-off-by: Christoph Lameter <cl(a)linux.com>
Reviewed-by: Gilad Ben-Yossef <gilad(a)benyossef.com>
Cc: Frederic Weisbecker <fweisbec(a)gmail.com>
Cc: Thomas Gleixner <tglx(a)linutronix.de>
Cc: Tejun Heo <tj(a)kernel.org>
Cc: John Stultz <johnstul(a)us.ibm.com>
Cc: Mike Frysinger <vapier(a)gentoo.org>
Cc: Minchan Kim <minchan.kim(a)gmail.com>
Cc: Hakan Akkan <hakanakkan(a)gmail.com>
Cc: Max Krasnyansky <maxk(a)qti.qualcomm.com>
Cc: "Paul E. McKenney" <paulmck(a)linux.vnet.ibm.com>
Cc: Hugh Dickins <hughd(a)google.com>
Cc: Viresh Kumar <viresh.kumar(a)linaro.org>
Cc: H. Peter Anvin <hpa(a)zytor.com>
Cc: Ingo Molnar <mingo(a)kernel.org>
Cc: Peter Zijlstra <peterz(a)infradead.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
+--------------------------------------------+------------+------------+---------------+
| | 4020841d46 | 6e0a6b18b6 | next-20140725 |
+--------------------------------------------+------------+------------+---------------+
| boot_successes | 1114 | 389 | 26 |
| boot_failures | 786 | 511 | 5 |
| BUG:kernel_boot_hang | 786 | 471 | 3 |
| kernel_BUG_at_mm/vmstat.c | 0 | 40 | 2 |
| invalid_opcode | 0 | 40 | 2 |
| RIP:vmstat_update | 0 | 40 | 2 |
| BUG:unable_to_handle_kernel_paging_request | 0 | 40 | 2 |
| Oops | 0 | 40 | 2 |
| RIP:kthread_data | 0 | 40 | 2 |
| BUG:scheduling_while_atomic | 0 | 40 | 2 |
| INFO:lockdep_is_turned_off | 0 | 40 | 2 |
| backtrace:invalid_op | 0 | 40 | 2 |
+--------------------------------------------+------------+------------+---------------+
/bin/sh: /proc/self/fd/9: No such file or directory
/bin/sh: /proc/self/fd/9: No such file or directory
[ 8.010173] ------------[ cut here ]------------
[ 8.011183] kernel BUG at mm/vmstat.c:1278!
[ 8.012437] invalid opcode: 0000 [#1] SMP
[ 8.013820] Modules linked in:
[ 8.014564] CPU: 1 PID: 30 Comm: kworker/1:1 Not tainted 3.16.0-rc6-00252-g6e0a6b1 #6
[ 8.016120] Workqueue: events vmstat_update
[ 8.017248] task: ffff8800116ae790 ti: ffff8800116b0000 task.ti: ffff8800116b0000
[ 8.018897] RIP: 0010:[<ffffffff810eb5f6>] [<ffffffff810eb5f6>] vmstat_update+0x5f/0x64
[ 8.020061] RSP: 0018:ffff8800116b3d88 EFLAGS: 00010297
[ 8.020061] RAX: 0000000000000001 RBX: ffff88000c143800 RCX: ffffffff819e9600
[ 8.020061] RDX: ffffffff819e9c40 RSI: ffffffff81907ec0 RDI: 0000000000000001
[ 8.020061] RBP: ffff8800116b3d90 R08: 0000000000000002 R09: 00000000001aa236
[ 8.020061] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88001270ddb0
[ 8.020061] R13: ffff880012715100 R14: 0000000000000000 R15: ffff88001166ff40
[ 8.020061] FS: 0000000000000000(0000) GS:ffff880012700000(0000) knlGS:0000000000000000
[ 8.020061] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 8.020061] CR2: 00007f8afb799000 CR3: 0000000013be4000 CR4: 00000000000006e0
[ 8.020061] Stack:
[ 8.020061] ffff880012711500 ffff8800116b3df8 ffffffff8107d0b0 ffffffff8107d045
[ 8.020061] 0000000000000000 ffffffff8281fb30 ffffffff822c4d60 0000000000000000
[ 8.020061] ffffffff8181760b ffff88001166ff40 ffff880012711500 ffff880012711500
[ 8.020061] Call Trace:
[ 8.020061] [<ffffffff8107d0b0>] process_one_work+0x1cb/0x2fc
[ 8.020061] [<ffffffff8107d045>] ? process_one_work+0x160/0x2fc
[ 8.020061] [<ffffffff8107da89>] worker_thread+0x270/0x34d
[ 8.020061] [<ffffffff8107d819>] ? cpumask_next+0x37/0x37
[ 8.020061] [<ffffffff81082ca0>] kthread+0xbe/0xc6
[ 8.020061] [<ffffffff81082be2>] ? __kthread_parkme+0x5c/0x5c
[ 8.020061] [<ffffffff815bf57c>] ret_from_fork+0x7c/0xb0
[ 8.020061] [<ffffffff81082be2>] ? __kthread_parkme+0x5c/0x5c
[ 8.020061] Code: bf 00 20 00 00 e8 cb 15 f9 ff eb 21 65 8b 3c 25 2c b0 00 00 48 8b 1d 3a 45 73 01 e8 c5 fe ff ff 89 c0 f0 48 0f ab 03 72 02 eb 02 <0f> 0b 5b 5d c3 55 48 63 d2 48 89 e5 41 55 41 54 41 89 f4 53 4c
[ 8.020061] RIP [<ffffffff810eb5f6>] vmstat_update+0x5f/0x64
[ 8.020061] RSP <ffff8800116b3d88>
[ 8.108300] ---[ end trace 38299ecee249ebce ]---
[ 8.109419] kworker/1:1 (30) used greatest stack depth: 13496 bytes left
git bisect start 5a7439efd1c5c416f768fc550048ca130cf4bf99 9a3c4145af32125c5ee39c0272662b47307a8323 --
git bisect good 38efad9af81d145f07f592f618c76c78cf141e5b # 05:41 900+ 370 Merge remote-tracking branch 'libata/for-next'
git bisect good 7ed8accbe1d061e1dfe4ce7a8681495595ebe1da # 05:46 900+ 365 next-20140724/tip
git bisect good 7d3ce0493347c0176b37d877be1bc2204c2314b4 # 05:49 900+ 376 Merge remote-tracking branch 'staging/staging-next'
git bisect good 550c5daec4f343ffaf1a1e069e1f47275e12b369 # 06:02 900+ 234 Merge remote-tracking branch 'ktest/for-next'
git bisect good dd7314beaded523afff8444fa8d471446fb27172 # 06:09 900+ 368 Merge branch 'rd-docs/master'
git bisect good 4d1954347c000af3ee37661dc3acfe0ae8f59348 # 06:13 900+ 256 PKCS#7: include linux-err.h for PTR_ERR and IS_ERR
git bisect bad 590deb1467ccd5b89a40441542eed94a20fde9cd # 06:13 0- 4 Merge branch 'akpm-current/current'
git bisect bad a85e2d130331aa9885cbba74ae1a604dce709482 # 06:15 195- 34 include/linux/kernel.h:744:28: note: in expansion of macro 'min'
git bisect good 4ac25431a42651458ee8fe31358d714aa18ee9aa # 06:23 900+ 402 mm: memcontrol: rearrange charging fast path
git bisect good 84334f9696fba65dac01b6896e728ed64f25b0bb # 06:29 900+ 360 mm,hugetlb: simplify error handling in hugetlb_cow()
git bisect bad de32ada9f1bb4fd7673ed245ba2b1a9103ec50ae # 06:44 192- 1 slub: remove kmemcg id from create_unique_id
git bisect good e28c951ff01a805eacae2f67a96e0f29e32cebd1 # 07:20 900+ 100 mm: pagemap: avoid unnecessary overhead when tracepoints are deactivated
git bisect good 5860f33b9ac1c224a399736358d83693fe78ce82 # 07:42 900+ 99 mm: describe mmap_sem rules for __lock_page_or_retry() and callers
git bisect bad e7943023cfcac3c9a7fe5a23713aa5723386d83b # 07:44 26- 28 cpu_stat_off can be static
git bisect bad 6e0a6b18b63e2c0a45ff47ab633dd6f3ad417453 # 07:51 84- 77 vmstat: On demand vmstat workers V8
git bisect good 4020841d464d689c045ad77f091f6f7fa211663d # 07:59 900+ 368 mm/shmem.c: remove the unused gfp arg to shmem_add_to_page_cache()
# first bad commit: [6e0a6b18b63e2c0a45ff47ab633dd6f3ad417453] vmstat: On demand vmstat workers V8
git bisect good 4020841d464d689c045ad77f091f6f7fa211663d # 08:05 1000+ 786 mm/shmem.c: remove the unused gfp arg to shmem_add_to_page_cache()
git bisect bad 5a7439efd1c5c416f768fc550048ca130cf4bf99 # 08:07 0- 5 Add linux-next specific files for 20140725
git bisect good 64aa90f26c06e1cb2aacfb98a7d0eccfbd6c1a91 # 08:16 1000+ 347 Linux 3.16-rc7
git bisect bad 5a7439efd1c5c416f768fc550048ca130cf4bf99 # 08:17 0- 5 Add linux-next specific files for 20140725
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,
Fengguang
8 years
[net] 8f61059a96c: +55.7% netperf.Throughput_Mbps
by Aaron Lu
FYI, we noticed the below changes on
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
commit 8f61059a96c2a29c1cc5a39dfe23d06ef5b4b065 ("net: sctp: improve timer slack calculation for transport HBs")
test case: lkp-wsx02/netperf/300s-200%-10K-SCTP_STREAM_MANY
eb1ac820c61d0d8 8f61059a96c2a29c1cc5a39df
--------------- -------------------------
1349 ~ 2% +55.7% 2101 ~ 1% TOTAL netperf.Throughput_Mbps
170805 ~12% +398.9% 852164 ~14% TOTAL cpuidle.C1-NHM.usage
4.18 ~ 5% -100.0% 0.00 ~ 0% TOTAL perf-profile.cpu-cycles._raw_spin_lock_irqsave.mod_timer.sctp_transport_reset_timers.sctp_outq_flush.sctp_outq_uncork
4.42 ~ 2% -99.5% 0.02 ~18% TOTAL perf-profile.cpu-cycles.lock_timer_base.isra.34.mod_timer.sctp_transport_reset_timers.sctp_outq_flush.sctp_outq_uncork
10.60 ~ 2% -99.7% 0.03 ~14% TOTAL perf-profile.cpu-cycles.sctp_transport_timeout.sctp_transport_reset_timers.sctp_outq_flush.sctp_outq_uncork.sctp_cmd_interpreter
1.77 ~ 4% -78.8% 0.38 ~ 4% TOTAL perf-profile.cpu-cycles.sctp_outq_flush.sctp_outq_uncork.sctp_cmd_interpreter.sctp_do_sm.sctp_assoc_bh_rcv
3.42 ~11% +196.0% 10.11 ~ 5% TOTAL perf-profile.cpu-cycles._raw_spin_lock.free_one_page.__free_pages_ok.__free_pages.__free_kmem_pages
3.52 ~10% +174.1% 9.64 ~ 6% TOTAL perf-profile.cpu-cycles._raw_spin_lock_irqsave.get_page_from_freelist.__alloc_pages_nodemask.alloc_kmem_pages_node.kmalloc_large_node
14540720 ~17% +162.1% 38114453 ~15% TOTAL cpuidle.C1-NHM.time
18604327 ~ 7% -43.0% 10606401 ~12% TOTAL cpuidle.C1E-NHM.time
5.4e+09 ~ 2% +55.7% 8.406e+09 ~ 1% TOTAL proc-vmstat.pgfree
5.29e+09 ~ 2% +55.4% 8.22e+09 ~ 1% TOTAL proc-vmstat.pgalloc_normal
0.17 ~10% +52.9% 0.27 ~21% TOTAL turbostat.%c1
1294 ~ 4% -17.2% 1071 ~11% TOTAL numa-vmstat.node0.nr_page_table_pages
5176 ~ 4% -17.2% 4288 ~11% TOTAL numa-meminfo.node0.PageTables
1.58 ~ 3% +20.3% 1.90 ~ 0% TOTAL perf-profile.cpu-cycles.get_page_from_freelist.__alloc_pages_nodemask.alloc_kmem_pages_node.kmalloc_large_node.__kmalloc_node_track_caller
2.60 ~ 1% +16.3% 3.02 ~ 1% TOTAL perf-profile.cpu-cycles.memcpy.sctp_packet_transmit_chunk.sctp_outq_flush.sctp_outq_uncork.sctp_cmd_interpreter
6.49 ~ 0% +12.8% 7.32 ~ 2% TOTAL perf-profile.cpu-cycles.copy_user_generic_string.skb_copy_datagram_iovec.sctp_recvmsg.sock_common_recvmsg.sock_recvmsg
11700 ~ 4% +18.7% 13891 ~ 7% TOTAL proc-vmstat.pgmigrate_success
11700 ~ 4% +18.7% 13891 ~ 7% TOTAL proc-vmstat.numa_pages_migrated
139702 ~ 1% +16.3% 162521 ~ 5% TOTAL proc-vmstat.numa_hint_faults
977 ~ 2% +16.0% 1133 ~ 8% TOTAL proc-vmstat.pgmigrate_fail
6.81 ~ 0% +12.2% 7.64 ~ 2% TOTAL perf-profile.cpu-cycles.copy_user_generic_string.sctp_user_addto_chunk.sctp_datamsg_from_user.sctp_sendmsg.inet_sendmsg
4.98 ~ 0% +11.8% 5.57 ~ 2% TOTAL perf-profile.cpu-cycles.memcpy.sctp_outq_flush.sctp_outq_uncork.sctp_cmd_interpreter.sctp_do_sm
160357 ~ 1% +14.2% 183117 ~ 4% TOTAL proc-vmstat.numa_pte_updates
1653 ~ 3% -8.5% 1512 ~ 4% TOTAL numa-vmstat.node0.nr_alloc_batch
310335 ~ 2% +55.9% 483905 ~ 1% TOTAL vmstat.system.cs
Legend:
~XX% - stddev percent
[+-]XX% - change percent
netperf.Throughput_Mbps
2300 ++-------------------------------------------------------------------+
2200 O+OO O O |
| O O OO OO O OO O O O O O O |
2100 ++ O O O O O O O |
2000 ++ O |
| O |
1900 ++ |
1800 ++ |
1700 ++ |
| |
1600 ++ |
1500 ++ |
| *. |
1400 *+**.*.**.*. *.**.*.**.*.**.*.**.*. *.**. .**.*. : *.**.*. .*.**.|
1300 ++----------*----------------------*-----*------*---------**-**------*
vmstat.system.cs
650000 ++-----------------------------------------------------------------+
| |
600000 ++ O |
| O O |
550000 O+ O O |
| |
500000 ++ OO OO O OO OO O O O O O |
| O O O O O O O O |
450000 ++ O |
| |
400000 ++ |
| |
350000 ++ |
*. *.* .*.* *. .* .*.**.**.*. *.* *.*. .**.*.**. *.* |
300000 ++*---*----*-*--*--*-**-----------*---*-*----**---------**-*-*---*-*
[*] bisect-good sample
[O] bisect-bad sample
Disclaimer:
Results have been estimated based on internal Intel analysis and are provided
for informational purposes only. Any difference in system hardware or software
design or configuration may affect actual performance.
Thanks,
Aaron
8 years