[PATCH] fs: assert ->i_lock held in __iget()

Mateusz Guzik posted 1 patch 4 months, 1 week ago
include/linux/fs.h | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
[PATCH] fs: assert ->i_lock held in __iget()
Posted by Mateusz Guzik 4 months, 1 week ago
Also remove the now redundant comment.

Signed-off-by: Mateusz Guzik <mjguzik@gmail.com>
---

verified this booted with ext4 on root, no splats

 include/linux/fs.h | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/include/linux/fs.h b/include/linux/fs.h
index 9e9d7c757efe..4c773c4ee7aa 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -3368,11 +3368,9 @@ static inline bool is_zero_ino(ino_t ino)
 	return (u32)ino == 0;
 }
 
-/*
- * inode->i_lock must be held
- */
 static inline void __iget(struct inode *inode)
 {
+	lockdep_assert_held(&inode->i_lock);
 	atomic_inc(&inode->i_count);
 }
 
-- 
2.34.1
Re: [PATCH] fs: assert ->i_lock held in __iget()
Posted by Christian Brauner 4 months ago
On Wed, 01 Oct 2025 01:53:14 +0200, Mateusz Guzik wrote:
> Also remove the now redundant comment.
> 
> 

Applied to the vfs-6.19.inode branch of the vfs/vfs.git tree.
Patches in the vfs-6.19.inode branch should appear in linux-next soon.

Please report any outstanding bugs that were missed during review in a
new review to the original patch series allowing us to drop it.

It's encouraged to provide Acked-bys and Reviewed-bys even though the
patch has now been applied. If possible patch trailers will be updated.

Note that commit hashes shown below are subject to change due to rebase,
trailer updates or similar. If in doubt, please check the listed branch.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs-6.19.inode

[1/1] fs: assert ->i_lock held in __iget()
      https://git.kernel.org/vfs/vfs/c/0cb93842ce06
Re: [PATCH] fs: assert ->i_lock held in __iget()
Posted by Jan Kara 4 months, 1 week ago
On Wed 01-10-25 01:53:14, Mateusz Guzik wrote:
> Also remove the now redundant comment.
> 
> Signed-off-by: Mateusz Guzik <mjguzik@gmail.com>

Looks good. Feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

								Honza

> ---
> 
> verified this booted with ext4 on root, no splats
> 
>  include/linux/fs.h | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index 9e9d7c757efe..4c773c4ee7aa 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -3368,11 +3368,9 @@ static inline bool is_zero_ino(ino_t ino)
>  	return (u32)ino == 0;
>  }
>  
> -/*
> - * inode->i_lock must be held
> - */
>  static inline void __iget(struct inode *inode)
>  {
> +	lockdep_assert_held(&inode->i_lock);
>  	atomic_inc(&inode->i_count);
>  }
>  
> -- 
> 2.34.1
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR