lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 07 Jul 2015 22:27:58 +0800
From:	kernel test robot <fengguang.wu@...el.com>
To:	Mel Gorman <mgorman@...e.de>
Cc:	LKP <lkp@...org>, linux-kernel@...r.kernel.org, linux-mm@...ck.org,
	Linux Memory Management List <linux-mm@...ck.org>,
	Andrew Morton <akpm@...ux-foundation.org>,
	fengguang.wu@...el.com
Subject: [mm: meminit]  WARNING: CPU: 1 PID: 15 at
 kernel/locking/lockdep.c:3382 lock_release()

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 0e1cc95b4cc7293bb7b39175035e7f7e45c90977
Author:     Mel Gorman <mgorman@...e.de>
AuthorDate: Tue Jun 30 14:57:27 2015 -0700
Commit:     Linus Torvalds <torvalds@...ux-foundation.org>
CommitDate: Tue Jun 30 19:44:56 2015 -0700

    mm: meminit: finish initialisation of struct pages before basic setup
    
    Waiman Long reported that 24TB machines hit OOM during basic setup when
    struct page initialisation was deferred.  One approach is to initialise
    memory on demand but it interferes with page allocator paths.  This patch
    creates dedicated threads to initialise memory before basic setup.  It
    then blocks on a rw_semaphore until completion as a wait_queue and counter
    is overkill.  This may be slower to boot but it's simplier overall and
    also gets rid of a section mangling which existed so kswapd could do the
    initialisation.
    
    [akpm@...ux-foundation.org: include rwsem.h, use DECLARE_RWSEM, fix comment, remove unneeded cast]
    Signed-off-by: Mel Gorman <mgorman@...e.de>
    Cc: Waiman Long <waiman.long@...com
    Cc: Nathan Zimmer <nzimmer@....com>
    Cc: Dave Hansen <dave.hansen@...el.com>
    Cc: Scott Norton <scott.norton@...com>
    Tested-by: Daniel J Blueman <daniel@...ascale.com>
    Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@...ux-foundation.org>

+-----------------------------------------------------+------------+------------+-----------------+
|                                                     | 74033a798f | 0e1cc95b4c | v4.2-rc1_070709 |
+-----------------------------------------------------+------------+------------+-----------------+
| boot_successes                                      | 63         | 0          | 0               |
| boot_failures                                       | 0          | 24         | 13              |
| WARNING:at_kernel/locking/lockdep.c:#lock_release() | 0          | 24         | 13              |
| backtrace:up_read                                   | 0          | 24         | 13              |
| backtrace:deferred_init_memmap                      | 0          | 24         | 13              |
+-----------------------------------------------------+------------+------------+-----------------+

[    0.240862] kvm-stealtime: cpu 1, msr 1100d140
[    0.260270] ------------[ cut here ]------------
[    0.260270] ------------[ cut here ]------------
[    0.261323] WARNING: CPU: 1 PID: 15 at kernel/locking/lockdep.c:3382 lock_release+0xde/0x3d3()
[    0.261323] WARNING: CPU: 1 PID: 15 at kernel/locking/lockdep.c:3382 lock_release+0xde/0x3d3()
[    0.264199] DEBUG_LOCKS_WARN_ON(depth <= 0)
[    0.264199] DEBUG_LOCKS_WARN_ON(depth <= 0)

[    0.265313] CPU: 1 PID: 15 Comm: pgdatinit0 Not tainted 4.1.0-11369-g0e1cc95 #1
[    0.265313] CPU: 1 PID: 15 Comm: pgdatinit0 Not tainted 4.1.0-11369-g0e1cc95 #1
[    0.269739] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.7.5-20140531_083030-gandalf 04/01/2014
[    0.269739] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.7.5-20140531_083030-gandalf 04/01/2014
[    0.270000]  0000000000000009
[    0.270000]  0000000000000009 ffff88000f997c48 ffff88000f997c48 ffffffff817d5686 ffffffff817d5686 ffffffff810cb07d ffffffff810cb07d

[    0.270000]  ffff88000f997c98
[    0.270000]  ffff88000f997c98 ffff88000f997c88 ffff88000f997c88 ffffffff8108bd43 ffffffff8108bd43 ffff88000f997c68 ffff88000f997c68

[    0.270000]  ffffffff810c3b8d
[    0.270000]  ffffffff810c3b8d ffff88000f990000 ffff88000f990000 ffff8800114fe000 ffff8800114fe000 ffffffff8236e530 ffffffff8236e530

[    0.270000] Call Trace:
[    0.270000] Call Trace:
[    0.270000]  [<ffffffff817d5686>] dump_stack+0x4c/0x6e
[    0.270000]  [<ffffffff817d5686>] dump_stack+0x4c/0x6e
[    0.270000]  [<ffffffff810cb07d>] ? console_unlock+0x3f3/0x422
[    0.270000]  [<ffffffff810cb07d>] ? console_unlock+0x3f3/0x422
[    0.270000]  [<ffffffff8108bd43>] warn_slowpath_common+0x9c/0xb6
[    0.270000]  [<ffffffff8108bd43>] warn_slowpath_common+0x9c/0xb6
[    0.270000]  [<ffffffff810c3b8d>] ? lock_release+0xde/0x3d3
[    0.270000]  [<ffffffff810c3b8d>] ? lock_release+0xde/0x3d3
[    0.270000]  [<ffffffff821dc011>] ? deferred_init_memmap+0x306/0x32d
[    0.270000]  [<ffffffff821dc011>] ? deferred_init_memmap+0x306/0x32d
[    0.270000]  [<ffffffff8108bdc2>] warn_slowpath_fmt+0x46/0x48
[    0.270000]  [<ffffffff8108bdc2>] warn_slowpath_fmt+0x46/0x48
[    0.270000]  [<ffffffff810c3b8d>] lock_release+0xde/0x3d3
[    0.270000]  [<ffffffff810c3b8d>] lock_release+0xde/0x3d3
[    0.270000]  [<ffffffff821dbd0b>] ? deferred_free_range+0x63/0x63
[    0.270000]  [<ffffffff821dbd0b>] ? deferred_free_range+0x63/0x63
[    0.270000]  [<ffffffff810c08ac>] up_read+0x20/0x2c
[    0.270000]  [<ffffffff810c08ac>] up_read+0x20/0x2c
[    0.270000]  [<ffffffff821dc011>] deferred_init_memmap+0x306/0x32d
[    0.270000]  [<ffffffff821dc011>] deferred_init_memmap+0x306/0x32d
[    0.270000]  [<ffffffff817d9ea9>] ? __schedule+0x3b9/0x5af
[    0.270000]  [<ffffffff817d9ea9>] ? __schedule+0x3b9/0x5af
[    0.270000]  [<ffffffff821dbd0b>] ? deferred_free_range+0x63/0x63
[    0.270000]  [<ffffffff821dbd0b>] ? deferred_free_range+0x63/0x63
[    0.270000]  [<ffffffff810a2cb8>] kthread+0xe0/0xe8
[    0.270000]  [<ffffffff810a2cb8>] kthread+0xe0/0xe8
[    0.270000]  [<ffffffff817de2eb>] ? _raw_spin_unlock_irq+0x32/0x46
[    0.270000]  [<ffffffff817de2eb>] ? _raw_spin_unlock_irq+0x32/0x46
[    0.270000]  [<ffffffff810a2bd8>] ? __kthread_parkme+0xad/0xad
[    0.270000]  [<ffffffff810a2bd8>] ? __kthread_parkme+0xad/0xad
[    0.270000]  [<ffffffff817df1cf>] ret_from_fork+0x3f/0x70
[    0.270000]  [<ffffffff817df1cf>] ret_from_fork+0x3f/0x70
[    0.270000]  [<ffffffff810a2bd8>] ? __kthread_parkme+0xad/0xad
[    0.270000]  [<ffffffff810a2bd8>] ? __kthread_parkme+0xad/0xad
[    0.270000] ---[ end trace 95f3f95a9e2dd516 ]---
[    0.270000] ---[ end trace 95f3f95a9e2dd516 ]---

git bisect start 9bbbdce9ba479ee60d157b45e83c2060f5e6ceac v4.1 --
git bisect good f822dcc63f966fc79b11a8254fa0942b1aa8c71e  # 14:45     20+      0  Merge tag 'sound-fix-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
git bisect  bad daa259f637dc2e674b38884342f0ded0189aceff  # 15:40      0-     11  Merge 'mediatek/v4.2-next/soc' into devel-hourly-2015070709
git bisect  bad 13d45f79a2af84de9083310db58b309a61065208  # 16:14      0-      3  Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds
git bisect good d5fb82137b6cd39e67c4321f4f5ce9b03d4d04e6  # 16:23     22+      0  Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect  bad 2d01eedf1d14432f4db5388a49dc5596a8c5bd02  # 16:29      0-      4  Merge branch 'akpm' (patches from Andrew)
git bisect good 6ac15baacb6ecd87c66209627753b96ded3b4515  # 17:36     21+      0  Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect  bad 9ce71148b027e2bd27016139cae1c39401587695  # 19:04      0-     13  devpts: if initialization failed, don't crash when opening /dev/ptmx
git bisect  bad 460b865e53c347ebf110e50d499718cd9b39d810  # 20:05      0-      2  fs: document seq_open()'s usage of file->private_data
git bisect good 7e18adb4f80bea90d30b62158694d97c31f71d37  # 20:14     20+      0  mm: meminit: initialise remaining struct pages in parallel with kswapd
git bisect good ac5d2539b2382689b1cdb90bd60dcd49f61c2773  # 21:18     22+      0  mm: meminit: reduce number of times pageblocks are set during struct page init
git bisect  bad 0e1cc95b4cc7293bb7b39175035e7f7e45c90977  # 21:26      0-     12  mm: meminit: finish initialisation of struct pages before basic setup
git bisect good 74033a798f5a5db368126ee6f690111cf019bf7a  # 21:37     22+      0  mm: meminit: remove mminit_verify_page_links
# first bad commit: [0e1cc95b4cc7293bb7b39175035e7f7e45c90977] mm: meminit: finish initialisation of struct pages before basic setup
git bisect good 74033a798f5a5db368126ee6f690111cf019bf7a  # 21:41     63+      0  mm: meminit: remove mminit_verify_page_links
# extra tests with DEBUG_INFO
git bisect  bad 0e1cc95b4cc7293bb7b39175035e7f7e45c90977  # 21:50      0-      5  mm: meminit: finish initialisation of struct pages before basic setup
# extra tests on HEAD of linux-devel/devel-hourly-2015070709
git bisect  bad 9bbbdce9ba479ee60d157b45e83c2060f5e6ceac  # 21:50      0-     13  0day head guard for 'devel-hourly-2015070709'
# extra tests on tree/branch linus/master
# extra tests with first bad commit reverted
# extra tests on tree/branch linus/master
# extra tests on tree/branch next/master
git bisect  bad 8e551e96341aa57779ea93a87c857ae61a057f11  # 22:27      0-      1  Add linux-next specific files for 20150707


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
	-enable-kvm
	-cpu kvm64
	-kernel $kernel
	-initrd $initrd
	-m 300
	-smp 2
	-device e1000,netdev=net0
	-netdev user,id=net0
	-boot order=nc
	-no-reboot
	-watchdog i6300esb
	-rtc base=localtime
	-serial stdio
	-display none
	-monitor null 
)

append=(
	hung_task_panic=1
	earlyprintk=ttyS0,115200
	systemd.log_level=err
	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[*]}"
----------------------------------------------------------------------------

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/lkp                          Intel Corporation

View attachment "dmesg-quantal-intel12-1:20150707213044:x86_64-randconfig-h0-07070925:4.1.0-11369-g0e1cc95:1" of type "text/plain" (139767 bytes)

View attachment "config-4.1.0-11369-g0e1cc95" of type "text/plain" (83781 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ