Re: [PATCH] Revert "fs/ntfs3: Replace inode_trylock with inode_lock"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



+cc hch given his response

On Mon, Jul 07, 2025 at 02:47:38PM +0200, Konstantin Komarov wrote:
> This reverts commit 69505fe98f198ee813898cbcaf6770949636430b.
>
> Make lock acquiring conditional to avoid the deadlock.
>
> Fixes: 69505fe98f19 ("fs/ntfs3: Replace inode_trylock with inode_lock")
> Reported-by: syzbot+a5d1c9dfa91705cd2f6d@xxxxxxxxxxxxxxxxxxxxxxxxx
> Suggested-by: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx>

OK you made me have to go searching to figure out where I suggested this :) it
was in:

https://lore.kernel.org/all/2076fb41-4017-4ae4-99df-acfb6148a408@lucifer.local/

Which is in fact syzbot+a91fcdbd2698f99db8f4@xxxxxxxxxxxxxxxxxxxxxxxxx ...

I'm guessing the reported-by you've mentioned here is the same thing but would
have been helpful to link the original report.

Anyway I'm with Christoph here - your commit message is really not great,
esp. since you don't link the report where I provided you with an analysis.

So I suggest you:

- Summarise what I said there in commit message

- Provide a Reported-by tag for the syzkaller report I gave, since it's more
  useful than the other one (which is presumably a dupe anyway)

- Provide a Closes tag linking that report so it's easy for people to see.

Thanks!

> Signed-off-by: Konstantin Komarov <almaz.alexandrovich@xxxxxxxxxxxxxxxxxxxx>
> ---
>  fs/ntfs3/file.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ntfs3/file.c b/fs/ntfs3/file.c
> index 65fb27d1e17c..2e321b84a1ed 100644
> --- a/fs/ntfs3/file.c
> +++ b/fs/ntfs3/file.c
> @@ -322,7 +322,10 @@ static int ntfs_file_mmap(struct file *file, struct vm_area_struct *vma)
>  		}
>
>  		if (ni->i_valid < to) {
> -			inode_lock(inode);
> +			if (!inode_trylock(inode)) {
> +				err = -EAGAIN;
> +				goto out;
> +			}
>  			err = ntfs_extend_initialized_size(file, ni,
>  							   ni->i_valid, to);
>  			inode_unlock(inode);
> --
> 2.43.0
>




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux