mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 04:34:03 +02:00
xfs: take hm->lock in xfs_ioc_health_monitor() before insert
__xfs_healthmon_insert() asserts that hm->lock is held
(lockdep_assert_held), but xfs_ioc_health_monitor() called it right
after allocating hm, before ever taking the lock, triggering a
lockdep warning.
Take hm->lock around the call.
Fixes: b3a289a2a9 ("xfs: create event queuing, formatting, and discovery infrastructure")
Reported-by: syzbot+ccdf3469f5f653bff7ac@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=ccdf3469f5f653bff7ac
Signed-off-by: Deepanshu Kartikey <kartikey406@gmail.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
This commit is contained in:
parent
50ba24ccb9
commit
e240919ca7
|
|
@ -1223,7 +1223,9 @@ xfs_ioc_health_monitor(
|
|||
}
|
||||
running_event->type = XFS_HEALTHMON_RUNNING;
|
||||
running_event->domain = XFS_HEALTHMON_MOUNT;
|
||||
mutex_lock(&hm->lock);
|
||||
__xfs_healthmon_insert(hm, INSERT_HEAD, running_event);
|
||||
mutex_unlock(&hm->lock);
|
||||
|
||||
/*
|
||||
* Preallocate the unmount event so that we can't fail to notify the
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user