FYI, we noticed the below changes on
https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git mmap-clear-setid
commit b953933104b23dc80a166b3c2bdc9c8fe077c8a3 ("fs: clear file privilege bits when mmap writing")
+----------------------------------------------------+------------+------------+
| | 25364a9e54 | b953933104 |
+----------------------------------------------------+------------+------------+
| boot_successes | 30 | 2 |
| boot_failures | 4 | 14 |
| BUG:kernel_early-boot_hang | 2 | 2 |
| BUG:kernel_boot_hang | 2 | |
| INFO:possible_circular_locking_dependency_detected | 0 | 12 |
| backtrace:iterate_dir | 0 | 12 |
| backtrace:SyS_getdents | 0 | 12 |
| backtrace:vm_mmap_pgoff | 0 | 12 |
| backtrace:SyS_mmap_pgoff | 0 | 12 |
| backtrace:SyS_mmap | 0 | 12 |
+----------------------------------------------------+------------+------------+
[ 75.509649] ======================================================
[ 75.511059] [ INFO: possible circular locking dependency detected ]
[ 75.512313] 4.4.0-rc3-00025-gb953933 #141 Not tainted
[ 75.513316] -------------------------------------------------------
[ 75.531487] systemd-journal/308 is trying to acquire lock:
[ 75.532574] (&sb->s_type->i_mutex_key#10){+.+.+.}, at: [<ffffffff811d3ccf>] do_mmap+0x213/0x362
[ 75.543301]
[ 75.543301] but task is already holding lock:
[ 75.544595] (&mm->mmap_sem){++++++}, at: [<ffffffff811bf304>] vm_mmap_pgoff+0x5d/0xb3
[ 75.558997]
[ 75.558997] which lock already depends on the new lock.
[ 75.558997]
[ 75.560864]
[ 75.560864] the existing dependency chain (in reverse order) is:
[ 75.562354]
-> #1 (&mm->mmap_sem){++++++}:
[ 75.572016] [<ffffffff81116121>] lock_acquire+0x10a/0x196
[ 75.573530] [<ffffffff811cb662>] __might_fault+0x6a/0x8d
[ 75.583071] [<ffffffff8120ea82>] filldir+0x9d/0x10b
[ 75.584465] [<ffffffff8121f91d>] dir_emit_dots+0x40/0xc4
[ 75.585878] [<ffffffff81220106>] dcache_readdir+0x26/0x14f
[ 75.595370] [<ffffffff8120e958>] iterate_dir+0x90/0x11d
[ 75.596745] [<ffffffff8120ec14>] SyS_getdents+0x97/0xff
[ 75.598029] [<ffffffff82e146f2>] entry_SYSCALL_64_fastpath+0x12/0x76
[ 75.607616]
-> #0 (&sb->s_type->i_mutex_key#10){+.+.+.}:
[ 75.609567] [<ffffffff81115abb>] __lock_acquire+0xb1e/0xdee
[ 75.619128] [<ffffffff81116121>] lock_acquire+0x10a/0x196
[ 75.623536] [<ffffffff82e10be8>] mutex_lock_nested+0x79/0x3ab
[ 75.624818] [<ffffffff811d3ccf>] do_mmap+0x213/0x362
[ 75.626059] [<ffffffff811bf325>] vm_mmap_pgoff+0x7e/0xb3
[ 75.631415] [<ffffffff811d2644>] SyS_mmap_pgoff+0x192/0x1c0
[ 75.632676] [<ffffffff8105b1ca>] SyS_mmap+0x1b/0x25
[ 75.633860] [<ffffffff82e146f2>] entry_SYSCALL_64_fastpath+0x12/0x76
[ 75.639318]
[ 75.639318] other info that might help us debug this:
[ 75.639318]
[ 75.641060] Possible unsafe locking scenario:
[ 75.641060]
[ 75.642301] CPU0 CPU1
[ 75.647399] ---- ----
[ 75.648578] lock(&mm->mmap_sem);
[ 75.649774] lock(&sb->s_type->i_mutex_key#10);
[ 75.655655] lock(&mm->mmap_sem);
[ 75.657042] lock(&sb->s_type->i_mutex_key#10);
[ 75.658431]
[ 75.658431] *** DEADLOCK ***
[ 75.658431]
[ 75.664182] 1 lock held by systemd-journal/308:
[ 75.665237] #0: (&mm->mmap_sem){++++++}, at: [<ffffffff811bf304>] vm_mmap_pgoff+0x5d/0xb3
[ 75.671508]
[ 75.671508] stack backtrace:
[ 75.672561] CPU: 0 PID: 308 Comm: systemd-journal Not tainted 4.4.0-rc3-00025-gb953933 #141
[ 75.674286] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 75.680315] 0000000000000000 ffff880028117c30 ffffffff8173d3a8 ffffffff850dd010
[ 75.682200] ffff880028117c70 ffffffff81113f3a ffff880028110ac0 ffff880028111308
[ 75.688211] ffff8800281112d0 0000000000000001 0000000000000001 ffff880028110ac0
[ 75.690224] Call Trace:
[ 75.694936] [<ffffffff8173d3a8>] dump_stack+0x4b/0x63
[ 75.696122] [<ffffffff81113f3a>] print_circular_bug+0x1d2/0x1e0
[ 75.697429] [<ffffffff81115abb>] __lock_acquire+0xb1e/0xdee
[ 75.698705] [<ffffffff81116121>] lock_acquire+0x10a/0x196
[ 75.703926] [<ffffffff81116121>] ? lock_acquire+0x10a/0x196
[ 75.705186] [<ffffffff811d3ccf>] ? do_mmap+0x213/0x362
[ 75.706359] [<ffffffff811d3ccf>] ? do_mmap+0x213/0x362
[ 75.711511] [<ffffffff82e10be8>] mutex_lock_nested+0x79/0x3ab
[ 75.712615] [<ffffffff811d3ccf>] ? do_mmap+0x213/0x362
[ 75.713654] [<ffffffff811d3ccf>] do_mmap+0x213/0x362
[ 75.714794] [<ffffffff811d3ccf>] ? do_mmap+0x213/0x362
[ 75.720036] [<ffffffff811bf325>] vm_mmap_pgoff+0x7e/0xb3
[ 75.721236] [<ffffffff811d2644>] SyS_mmap_pgoff+0x192/0x1c0
[ 75.722478] [<ffffffff8105b1ca>] SyS_mmap+0x1b/0x25
[ 75.727533] [<ffffffff82e146f2>] entry_SYSCALL_64_fastpath+0x12/0x76
Thanks,
lkp