]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
fs/ntfs3: Prevent memory leaks in add sub record
authorEdward Adam Davis <eadavis@qq.com>
Tue, 11 Nov 2025 11:05:42 +0000 (19:05 +0800)
committerKonstantin Komarov <almaz.alexandrovich@paragon-software.com>
Tue, 18 Nov 2025 12:56:27 +0000 (13:56 +0100)
commitccc4e86d1c24260c18ae94541198c3711c140da6
treecea2fe4c4a94ec8c8bc50983aa8f0bed20ae5d64
parent4d78d1173a653acdaf7500a32b8dc530ca4ad075
fs/ntfs3: Prevent memory leaks in add sub record

If a rb node with the same ino already exists in the rb tree, the newly
alloced mft_inode in ni_add_subrecord() will not have its memory cleaned
up, which leads to the memory leak issue reported by syzbot.

The best option to avoid this issue is to put the newly alloced mft node
when a rb node with the same ino already exists in the rb tree and return
the rb node found in the rb tree to the parent layer.

syzbot reported:
BUG: memory leak
unreferenced object 0xffff888110bef280 (size 128):
  backtrace (crc 126a088f):
    ni_add_subrecord+0x31/0x180 fs/ntfs3/frecord.c:317
    ntfs_look_free_mft+0xf0/0x790 fs/ntfs3/fsntfs.c:715

BUG: memory leak
unreferenced object 0xffff888109093400 (size 1024):
  backtrace (crc 7197c55e):
    mi_init+0x2b/0x50 fs/ntfs3/record.c:105
    mi_format_new+0x40/0x220 fs/ntfs3/record.c:422

Fixes: 4342306f0f0d ("fs/ntfs3: Add file operations and implementation")
Reported-by: syzbot+3932ccb896e06f7414c9@syzkaller.appspotmail.com
Signed-off-by: Edward Adam Davis <eadavis@qq.com>
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
fs/ntfs3/frecord.c