====================================================== [ INFO: possible circular locking dependency detected ] 4.4.118-g5f7f76a #24 Not tainted ------------------------------------------------------- syz-executor0/9363 is trying to acquire lock: (&mm->mmap_sem){++++++}, at: [] __might_fault+0xe4/0x1d0 mm/memory.c:3809 but task is already holding lock: (ashmem_mutex){+.+.+.}, at: [] ashmem_pin_unpin drivers/staging/android/ashmem.c:701 [inline] (ashmem_mutex){+.+.+.}, at: [] ashmem_ioctl+0x367/0xfa0 drivers/staging/android/ashmem.c:778 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: [] lock_acquire+0x15e/0x460 kernel/locking/lockdep.c:3592 [] __mutex_lock_common kernel/locking/mutex.c:521 [inline] [] mutex_lock_nested+0xbb/0x850 kernel/locking/mutex.c:621 [] ashmem_mmap+0x53/0x400 drivers/staging/android/ashmem.c:366 [ 57.843200] kasan: CONFIG_KASAN_INLINE enabledkasan: GPF could be caused by NULL-ptr deref or user memory accessgeneral protection fault: 0000 [#1] PREEMPT SMP KASAN Dumping ftrace buffer: (ftrace buffer empty) Modules linked in: CPU: 1 PID: 9391 Comm: syz-executor5 Not tainted 4.4.118-g5f7f76a #24 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 task: ffff8801d0553000 task.stack: ffff8801d95f8000 RIP: 0010:[] [] __read_once_size include/linux/compiler.h:218 [inline] RIP: 0010:[] [] atomic_read arch/x86/include/asm/atomic.h:27 [inline] RIP: 0010:[] [] put_page_testzero include/linux/mm.h:357 [inline] RIP: 0010:[] [] __free_pages+0x21/0x90 mm/page_alloc.c:3365 RSP: 0018:ffff8801d95ff9f0 EFLAGS: 00010a07 RAX: dffffc0000000000 RBX: dead4ead00000000 RCX: ffffffff825b855b RDX: 1bd5a9d5a0000003 RSI: 0000000000000006 RDI: dead4ead0000001c RBP: ffff8801d95ffa00 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 1ffff1003b2bff1e R12: 0000000000000004 R13: 0000000000000020 R14: ffff8801c4b82100 R15: dffffc0000000000 FS: 00007f66052b3700(0000) GS:ffff8801db300000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000002085dff0 CR3: 00000001c95c8000 CR4: 0000000000160670 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Stack: 0000000000000000 ffff8801c4b82258 ffff8801d95ffa60 ffffffff825b8581 ffff8801c4b82270 ffffed003897044b ffffed003897044e ffff8801c4b82268 dead4ead00000000 ffff8801c4b82240 0000000000000000 0000000000000000 Call Trace: [] sg_remove_scat.isra.17+0x1c1/0x2d0 drivers/scsi/sg.c:1954 [] sg_finish_rem_req+0x2b5/0x340 drivers/scsi/sg.c:1835 [] sg_new_read.isra.18+0x39/0x3c0 drivers/scsi/sg.c:577 [] sg_read+0x8bc/0x1490 drivers/scsi/sg.c:466 [] do_loop_readv_writev+0x141/0x1e0 fs/read_write.c:680 [] do_readv_writev+0x5dd/0x6e0 fs/read_write.c:810 [] vfs_readv+0x78/0xb0 fs/read_write.c:834 [] SYSC_readv fs/read_write.c:860 [inline] [] SyS_readv+0xd9/0x240 fs/read_write.c:852 [] entry_SYSCALL_64_fastpath+0x1c/0x98 Code: c6 a0 0c 00 e9 78 fd ff ff 90 48 b8 00 00 00 00 00 fc ff df 55 48 89 e5 53 48 89 fb 48 83 c7 1c 48 89 fa 48 83 ec 08 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 49 RIP [] __read_once_size include/linux/compiler.h:218 [inline] RIP [] atomic_read arch/x86/include/asm/atomic.h:27 [inline] RIP [] put_page_testzero include/linux/mm.h:357 [inline] RIP [] __free_pages+0x21/0x90 mm/page_alloc.c:3365 RSP ---[ end trace 06a30fc9e9aba0af ]---