[ 15.930430] random: sshd: uninitialized urandom read (32 bytes read, 33 bits of entropy available) [....] Starting file context maintaining daemon: restorecond[?25l[?1c7[ ok 8[?25h[?0c. [....] Starting OpenBSD Secure Shell server: sshd[?25l[?1c7[ ok 8[?25h[?0c. Debian GNU/Linux 7 syzkaller ttyS0 syzkaller login: [ 20.887763] random: sshd: uninitialized urandom read (32 bytes read, 38 bits of entropy available) [ 21.341654] random: sshd: uninitialized urandom read (32 bytes read, 38 bits of entropy available) [ 22.096500] random: sshd: uninitialized urandom read (32 bytes read, 90 bits of entropy available) [ 23.297701] random: sshd: uninitialized urandom read (32 bytes read, 96 bits of entropy available) Warning: Permanently added '10.128.15.217' (ECDSA) to the list of known hosts. [ 28.688161] random: sshd: uninitialized urandom read (32 bytes read, 103 bits of entropy available) executing program executing program [ 28.822763] [ 28.824414] ====================================================== [ 28.830694] [ INFO: possible circular locking dependency detected ] [ 28.837062] 4.4.107-g610c835 #4 Not tainted [ 28.841350] ------------------------------------------------------- [ 28.847716] syzkaller581102/3315 is trying to acquire lock: [ 28.853390] (&bdev->bd_mutex){+.+.+.}, at: [] blkdev_reread_part+0x1e/0x40 [ 28.862472] [ 28.862472] but task is already holding lock: [ 28.868403] (&lo->lo_ctl_mutex#2){+.+.+.}, at: [] lo_compat_ioctl+0x109/0x140 [ 28.877854] [ 28.877854] which lock already depends on the new lock. [ 28.877854] [ 28.886133] [ 28.886133] the existing dependency chain (in reverse order) is: [ 28.893716] -> #1 (&lo->lo_ctl_mutex#2){+.+.+.}: [ 28.899172] [] lock_acquire+0x15e/0x460 [ 28.905395] [] mutex_lock_nested+0xbb/0x850 [ 28.911961] [] lo_release+0x6b/0x140 [ 28.917923] [] __blkdev_put+0x5f7/0x7e0 [ 28.924145] [] blkdev_put+0x85/0x550 [ 28.930103] [] blkdev_close+0x8b/0xb0 [ 28.936156] [] __fput+0x233/0x6d0 [ 28.941857] [] ____fput+0x15/0x20 [ 28.947557] [] task_work_run+0x104/0x180 [ 28.953865] [] exit_to_usermode_loop+0x145/0x170 [ 28.960874] [] syscall_return_slowpath+0x1b5/0x1f0 [ 28.968049] [] int_ret_from_sys_call+0x25/0x9f [ 28.974892] -> #0 (&bdev->bd_mutex){+.+.+.}: [ 28.979890] [] __lock_acquire+0x371f/0x4b50 [ 28.986468] [] lock_acquire+0x15e/0x460 [ 28.992703] [] mutex_lock_nested+0xbb/0x850 [ 28.999272] [] blkdev_reread_part+0x1e/0x40 [ 29.005840] [] loop_reread_partitions+0x78/0xe0 [ 29.012758] [] loop_set_status+0x995/0xfc0 [ 29.019239] [] loop_set_status_compat+0x9a/0x100 [ 29.026243] [] lo_compat_ioctl+0x114/0x140 [ 29.032732] [] compat_blkdev_ioctl+0x3d4/0x3b10 [ 29.039656] [] compat_SyS_ioctl+0x28a/0x2540 [ 29.046320] [] do_fast_syscall_32+0x314/0x890 [ 29.053071] [] sysenter_flags_fixed+0xd/0x17 [ 29.059733] [ 29.059733] other info that might help us debug this: [ 29.059733] [ 29.067837] Possible unsafe locking scenario: [ 29.067837] [ 29.073856] CPU0 CPU1 [ 29.078485] ---- ---- [ 29.083114] lock(&lo->lo_ctl_mutex#2); [ 29.087476] lock(&bdev->bd_mutex); [ 29.093893] lock(&lo->lo_ctl_mutex#2); [ 29.100771] lock(&bdev->bd_mutex); [ 29.104675] [ 29.104675] *** DEADLOCK *** [ 29.104675] [ 29.110696] 1 lock held by syzkaller581102/3315: [ 29.115413] #0: (&lo->lo_ctl_mutex#2){+.+.+.}, at: [] lo_compat_ioctl+0x109/0x140 [ 29.125416] [ 29.125416] stack backtrace: [ 29.129877] CPU: 0 PID: 3315 Comm: syzkaller581102 Not tainted 4.4.107-g610c835 #4 [ 29.137545] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 29.146869] 0000000000000000 c7dcb8468e4110f6 ffff8800b46175e8 ffffffff81d0457d [ 29.154816] ffffffff85178be0 ffffffff85178be0 ffffffff851a3fc0 ffff8801d0c20898 [ 29.162762] ffff8801d0c20000 ffff8800b4617630 ffffffff812309f1 ffff8801d0c20898 [ 29.170710] Call Trace: [ 29.173262] [] dump_stack+0xc1/0x124 [ 29.178596] [] print_circular_bug+0x271/0x310 [ 29.184705] [] __lock_acquire+0x371f/0x4b50 [ 29.190641] [] ? save_stack_trace+0x26/0x50 [ 29.196580] [] ? save_stack+0x43/0xd0 [ 29.201994] [] ? kasan_slab_free+0x72/0xc0 [ 29.207843] [] ? kfree+0xfc/0x300 [ 29.212909] [] ? kobject_uevent_env+0x24f/0xb40 [ 29.219191] [] ? debug_check_no_locks_freed+0x2c0/0x2c0 [ 29.226167] [] ? __lock_acquire+0xb5f/0x4b50 [ 29.232189] [] ? __lock_is_held+0xa1/0xf0 [ 29.237950] [] lock_acquire+0x15e/0x460 [ 29.243577] [] ? blkdev_reread_part+0x1e/0x40 [ 29.249684] [] ? blkdev_reread_part+0x1e/0x40 [ 29.255793] [] mutex_lock_nested+0xbb/0x850 [ 29.261727] [] ? blkdev_reread_part+0x1e/0x40 [ 29.267836] [] ? __ww_mutex_lock+0x14f0/0x14f0 [ 29.274039] [] ? _raw_spin_unlock_irqrestore+0x5a/0x70 [ 29.280926] [] ? trace_hardirqs_on_caller+0x38b/0x590 [ 29.287728] [] blkdev_reread_part+0x1e/0x40 [ 29.293665] [] loop_reread_partitions+0x78/0xe0 [ 29.299946] [] loop_set_status+0x995/0xfc0 [ 29.305795] [] loop_set_status_compat+0x9a/0x100 [ 29.312164] [] ? loop_set_status+0xfc0/0xfc0 [ 29.318188] [] lo_compat_ioctl+0x114/0x140 [ 29.324044] [] ? lo_ioctl+0x19c0/0x19c0 [ 29.329631] [] compat_blkdev_ioctl+0x3d4/0x3b10 [ 29.335914] [] ? schedtune_accept_deltas+0x122/0x9a0 [ 29.342630] [] ? cfq_dispatch_requests+0x2fa0/0x2fa0 [ 29.349347] [] ? check_preemption_disabled+0x3b/0x200 [ 29.356158] [] ? security_file_ioctl+0x89/0xb0 [ 29.362355] [] compat_SyS_ioctl+0x28a/0x2540 [ 29.368384] [] ? do_huge_pmd_anonymous_page+0x3dd/0xa10 [ 29.375361] [] ? cfq_dispatch_requests+0x2fa0/0x2fa0 [ 29.382084] [] ? compat_SyS_ppoll+0x420/0x420 [ 29.388193] [] ? handle_mm_fault+0x3f2/0x3190 [ 29.394303] [] ? putname+0xee/0x130 [ 29.399544] [] ? rcu_read_lock_sched_held+0x103/0x120 [ 29.406354] [] ? kmem_cache_free+0x2a4/0x320 [ 29.412385] [] ? __do_page_fault+0x380/0xa00 [ 29.418405] [] ? do_fast_syscall_32+0xd7/0x890 executing program executing program [ 29.424600] [] ? compat_SyS_ppoll+0x420/0x420 [ 29.430723] [] do_fast_syscall_32+0x314/0x890 [ 29.436833] [] sysenter_flags_fixed+0xd/0x17 executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program