• Shaohua Li's avatar
    aio: fix lock dep warning · d21816c2
    Shaohua Li authored
    
    [ Upstream commit a12f1ae6 ]
    
    lockdep reports a warnning. file_start_write/file_end_write only
    acquire/release the lock for regular files. So checking the files in aio
    side too.
    
    [  453.532141] ------------[ cut here ]------------
    [  453.533011] WARNING: CPU: 1 PID: 1298 at ../kernel/locking/lockdep.c:3514 lock_release+0x434/0x670
    [  453.533011] DEBUG_LOCKS_WARN_ON(depth <= 0)
    [  453.533011] Modules linked in:
    [  453.533011] CPU: 1 PID: 1298 Comm: fio Not tainted 4.9.0+ #964
    [  453.533011] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.9.0-1.fc24 04/01/2014
    [  453.533011]  ffff8803a24b7a70 ffffffff8196cffb ffff8803a24b7ae8 0000000000000000
    [  453.533011]  ffff8803a24b7ab8 ffffffff81091ee1 ffff8803a5dba700 00000dba00000008
    [  453.533011]  ffffed0074496f59 ffff8803a5dbaf54 ffff8803ae0f8488 fffffffffffffdef
    [  453.533011] Call Trace:
    [  453.533011]  [<ffffffff8196cffb>] dump_stack+0x67/0x9c
    [  453.533011]  [<ffffffff81091ee1>] __warn+0x111/0x130
    [  453.533011]  [<ffffffff81091f97>] warn_slowpath_fmt+0x97/0xb0
    [  453.533011]  [<ffffffff81091f00>] ? __warn+0x130/0x130
    [  453.533011]  [<ffffffff8191b789>] ? blk_finish_plug+0x29/0x60
    [  453.533011]  [<ffffffff811205d4>] lock_release+0x434/0x670
    [  453.533011]  [<ffffffff8198af94>] ? import_single_range+0xd4/0x110
    [  453.533011]  [<ffffffff81322195>] ? rw_verify_area+0x65/0x140
    [  453.533011]  [<ffffffff813aa696>] ? aio_write+0x1f6/0x280
    [  453.533011]  [<ffffffff813aa6c9>] aio_write+0x229/0x280
    [  453.533011]  [<ffffffff813aa4a0>] ? aio_complete+0x640/0x640
    [  453.533011]  [<ffffffff8111df20>] ? debug_check_no_locks_freed+0x1a0/0x1a0
    [  453.533011]  [<ffffffff8114793a>] ? debug_lockdep_rcu_enabled.part.2+0x1a/0x30
    [  453.533011]  [<ffffffff81147985>] ? debug_lockdep_rcu_enabled+0x35/0x40
    [  453.533011]  [<ffffffff812a92be>] ? __might_fault+0x7e/0xf0
    [  453.533011]  [<ffffffff813ac9bc>] do_io_submit+0x94c/0xb10
    [  453.533011]  [<ffffffff813ac2ae>] ? do_io_submit+0x23e/0xb10
    [  453.533011]  [<ffffffff813ac070>] ? SyS_io_destroy+0x270/0x270
    [  453.533011]  [<ffffffff8111d7b3>] ? mark_held_locks+0x23/0xc0
    [  453.533011]  [<ffffffff8100201a>] ? trace_hardirqs_on_thunk+0x1a/0x1c
    [  453.533011]  [<ffffffff813acb90>] SyS_io_submit+0x10/0x20
    [  453.533011]  [<ffffffff824f96aa>] entry_SYSCALL_64_fastpath+0x18/0xad
    [  453.533011]  [<ffffffff81119190>] ? trace_hardirqs_off_caller+0xc0/0x110
    [  453.533011] ---[ end trace b2fbe664d1cc0082 ]---
    
    Cc: Dmitry Monakhov <dmonakhov@openvz.org>
    Cc: Jan Kara <jack@suse.cz>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarShaohua Li <shli@fb.com>
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    d21816c2
aio.c 44 KB