]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mm: revert "mm: shmem: fix data-race in shmem_getattr()"
authorAndrew Morton <akpm@linux-foundation.org>
Sat, 16 Nov 2024 00:57:24 +0000 (16:57 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 18:50:38 +0000 (19:50 +0100)
commit d1aa0c04294e29883d65eac6c2f72fe95cc7c049 upstream.

Revert d949d1d14fa2 ("mm: shmem: fix data-race in shmem_getattr()") as
suggested by Chuck [1].  It is causing deadlocks when accessing tmpfs over
NFS.

As Hugh commented, "added just to silence a syzbot sanitizer splat: added
where there has never been any practical problem".

Link: https://lkml.kernel.org/r/ZzdxKF39VEmXSSyN@tissot.1015granger.net
Fixes: d949d1d14fa2 ("mm: shmem: fix data-race in shmem_getattr()")
Acked-by: Hugh Dickins <hughd@google.com>
Cc: Chuck Lever <chuck.lever@oracle.com>
Cc: Jeongjun Park <aha310510@gmail.com>
Cc: Yu Zhao <yuzhao@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
mm/shmem.c

index cdb169348ba912bd80452ebeb2affd1e0bab056a..663fb117cd87798e5bf3e37468004eb8685f4b10 100644 (file)
@@ -1077,9 +1077,7 @@ static int shmem_getattr(struct user_namespace *mnt_userns,
                shmem_recalc_inode(inode);
                spin_unlock_irq(&info->lock);
        }
-       inode_lock_shared(inode);
        generic_fillattr(&init_user_ns, inode, stat);
-       inode_unlock_shared(inode);
 
        if (shmem_is_huge(NULL, inode, 0))
                stat->blksize = HPAGE_PMD_SIZE;