Sparse reports a warning at __wait_on_freeing_inode() warning: context imbalance in __wait_on_freeing_inode() - unexpected unlock The root cause is the missing annotations at __wait_on_freeing_inode() Add the missing __releases(&inode->i_lock) and __must_hold(&inode_hash_lock) annotations Signed-off-by: Jules Irenge <jbi.octave@xxxxxxxxx> --- fs/inode.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/inode.c b/fs/inode.c index 7d57068b6b7a..3b06c5c59883 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -1955,6 +1955,8 @@ EXPORT_SYMBOL(inode_needs_sync); * will DTRT. */ static void __wait_on_freeing_inode(struct inode *inode) + __releases(&inode->i_lock) + __must_hold(&inode_hash_lock) { wait_queue_head_t *wq; DEFINE_WAIT_BIT(wait, &inode->i_state, __I_NEW); -- 2.24.1