CVE-2026-31714 PUBLISHED

f2fs: fix to avoid memory leak in f2fs_rename()

Assigner: Linux
Reserved: 09.03.2026 Published: 01.05.2026 Updated: 01.05.2026

In the Linux kernel, the following vulnerability has been resolved:

f2fs: fix to avoid memory leak in f2fs_rename()

syzbot reported a f2fs bug as below:

BUG: memory leak unreferenced object 0xffff888127f70830 (size 16): comm "syz.0.23", pid 6144, jiffies 4294943712 hex dump (first 16 bytes): 3c af 57 72 5b e6 8f ad 6e 8e fd 33 42 39 03 ff <.Wr[...n..3B9.. backtrace (crc 925f8a80): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4520 [inline] slab_alloc_node mm/slub.c:4844 [inline] __do_kmalloc_node mm/slub.c:5237 [inline] __kmalloc_noprof+0x3bd/0x560 mm/slub.c:5250 kmalloc_noprof include/linux/slab.h:954 [inline] fscrypt_setup_filename+0x15e/0x3b0 fs/crypto/fname.c:364 f2fs_setup_filename+0x52/0xb0 fs/f2fs/dir.c:143 f2fs_rename+0x159/0xca0 fs/f2fs/namei.c:961 f2fs_rename2+0xd5/0xf20 fs/f2fs/namei.c:1308 vfs_rename+0x7ff/0x1250 fs/namei.c:6026 filename_renameat2+0x4f4/0x660 fs/namei.c:6144 __do_sys_renameat2 fs/namei.c:6173 [inline] __se_sys_renameat2 fs/namei.c:6168 [inline] __x64_sys_renameat2+0x59/0x80 fs/namei.c:6168 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xe2/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f

The root cause is in commit 40b2d55e0452 ("f2fs: fix to create selinux label during whiteout initialization"), we added a call to f2fs_setup_filename() without a matching call to f2fs_free_filename(), fix it.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 7525dec4b34c80b3015c3f2ac143fd2bfc1febc3 to a76c1cad4e80a9802ef8048662255417e3ce5b79 (excl.)
  • affected from 40b2d55e045222dd6de2a54a299f682e0f954b03 to c78206dcb912ab60b8ee3cbe8c48d749a9a12e1e (excl.)
  • affected from 40b2d55e045222dd6de2a54a299f682e0f954b03 to 047c0aef6af37a2a35181aa085c616ad286386f1 (excl.)
  • affected from 40b2d55e045222dd6de2a54a299f682e0f954b03 to 369eb2016d8e2f01931b3bad1cb9cefa83f44003 (excl.)
  • affected from 40b2d55e045222dd6de2a54a299f682e0f954b03 to 3cf11e6f36c170050c12171dd6fd3142711478fc (excl.)
  • Version 1d1b89c9846e6a550eca3d2ce9323fb591e4f321 is affected
  • Version 64582cc5357cd984724cfb0835b4a34d9c279d31 is affected
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.9 is affected
  • unaffected from 0 to 6.9 (excl.)
  • unaffected from 6.6.136 to 6.6.* (incl.)
  • unaffected from 6.12.84 to 6.12.* (incl.)
  • unaffected from 6.18.25 to 6.18.* (incl.)
  • unaffected from 7.0.2 to 7.0.* (incl.)
  • unaffected from 7.1-rc1 to * (incl.)

References