Description
In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix use-after-free bug of nilfs_root in nilfs_evict_inode() During unmount process of nilfs2, nothing holds nilfs_root structure after nilfs2 detaches its writer in nilfs_detach_log_writer(). However, since nilfs_evict_inode() uses nilfs_root for some cleanup operations, it may cause use-after-free read if inodes are left in "garbage_list" and released by nilfs_dispose_list() at the end of nilfs_detach_log_writer(). Fix this issue by modifying nilfs_evict_inode() to only clear inode without additional metadata changes that use nilfs_root if the file system is degraded to read-only or the writer is detached.
Product status
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before f31e18131ee2ce80a4da5c808221d25b1ae9ad6d
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 2a782ea8ebd712a458466e3103e2881b4f886cb5
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 116d53f09ff52e6f98e3fe1f85d8898d6ba26c68
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 6b4205ea97901f822004e6c8d59484ccfda03faa
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before b8427b8522d9ede53015ba45a9978ba68d1162f5
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before acc2a40e428f12780004e1e9fce4722d88f909fd
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before fb8e8d58f116d069e5939e1f786ac84e7fa4533e
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 9b5a04ac3ad9898c4745cba46ea26de74ba56a8e
4.14.316 (semver)
4.19.284 (semver)
5.4.244 (semver)
5.10.181 (semver)
5.15.113 (semver)
6.1.30 (semver)
6.3.4 (semver)
6.4 (original_commit_for_fix)
References
git.kernel.org/...c/f31e18131ee2ce80a4da5c808221d25b1ae9ad6d
git.kernel.org/...c/2a782ea8ebd712a458466e3103e2881b4f886cb5
git.kernel.org/...c/116d53f09ff52e6f98e3fe1f85d8898d6ba26c68
git.kernel.org/...c/6b4205ea97901f822004e6c8d59484ccfda03faa
git.kernel.org/...c/b8427b8522d9ede53015ba45a9978ba68d1162f5
git.kernel.org/...c/acc2a40e428f12780004e1e9fce4722d88f909fd
git.kernel.org/...c/fb8e8d58f116d069e5939e1f786ac84e7fa4533e
git.kernel.org/...c/9b5a04ac3ad9898c4745cba46ea26de74ba56a8e