Re: [lvc-project] [PATCH] bcachefs: fix memory leak in bch2_setattr_nonsize_trans()

Fedor Pchelkin <[email protected]>
Newsgroups org.kernel.vger.linux-bcachefs
Message-ID <20260821171723-5951ecd4452cd3a8a43e56ef-pchelkin@ispras>
On Thu, 20. Aug 19:08, Dmitry Antipov wrote:
> Local fuzzing of 6.12.103 has found the following memory leak:
> 
> unreferenced object 0xffff888105f40700 (size 64):
>   comm "syz.0.17", pid 10384, jiffies 4294952060
>   hex dump (first 32 bytes):
>     01 00 00 00 80 88 ff ff 0c 00 00 00 ad 04 74 01  ..............t.
>     00 00 b0 7f 10 f7 00 00 04 00 00 00 01 00 07 00  ................
>   backtrace (crc 8943d909):
>     kmemleak_alloc_recursive include/linux/kmemleak.h:43 [inline]
>     slab_post_alloc_hook mm/slub.c:4166 [inline]
>     slab_alloc_node mm/slub.c:4211 [inline]
>     __do_kmalloc_node mm/slub.c:4345 [inline]
>     __kmalloc_node_track_caller_noprof+0x1ee/0x3d0 mm/slub.c:4365
>     kmemdup_noprof+0x2b/0x70 mm/util.c:133
>     kmemdup_noprof include/linux/fortify-string.h:753 [inline]
>     posix_acl_clone fs/posix_acl.c:232 [inline]
>     __posix_acl_chmod+0x78/0x500 fs/posix_acl.c:583
>     bch2_acl_chmod+0x523/0x800 fs/bcachefs/acl.c:430
>     bch2_setattr_nonsize+0xbb8/0xfc0 fs/bcachefs/fs.c:1063
>     notify_change+0xb2b/0xe30 fs/attr.c:503
>     chmod_common+0x1a7/0x2f0 fs/open.c:651
>     do_fchmodat+0x91/0x130 fs/open.c:697
>     __do_sys_fchmodat fs/open.c:716 [inline]
>     __se_sys_fchmodat fs/open.c:713 [inline]
>     __x64_sys_fchmodat+0x7d/0x90 fs/open.c:713
>     do_syscall_x64 arch/x86/entry/common.c:47 [inline]
>     do_syscall_64+0xbe/0x1a0 arch/x86/entry/common.c:78
>     entry_SYSCALL_64_after_hwframe+0x77/0x7f
> 
> Fix this by using 'posix_acl_release()' to balance refcounting
> of the corresponding 'struct posix_acl' object.
> 
> Signed-off-by: Dmitry Antipov <[email protected]>

Please clarify why there is a refcounting problem.  What is the root
cause?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.