diff options
author | Baokun Li <libaokun1@huawei.com> | 2023-01-07 06:21:25 +0300 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2023-02-19 08:09:59 +0300 |
commit | 5cd740287ae5e3f9d1c46f5bfe8778972fd6d3fe (patch) | |
tree | b8f7266276961bcd30981427dd9ce280fd5a0d44 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | d99a55a94a0db8eda4a336a6f21730b844b8d2d2 (diff) | |
download | linux-5cd740287ae5e3f9d1c46f5bfe8778972fd6d3fe.tar.xz |
ext4: fail ext4_iget if special inode unallocated
In ext4_fill_super(), EXT4_ORPHAN_FS flag is cleared after
ext4_orphan_cleanup() is executed. Therefore, when __ext4_iget() is
called to get an inode whose i_nlink is 0 when the flag exists, no error
is returned. If the inode is a special inode, a null pointer dereference
may occur. If the value of i_nlink is 0 for any inodes (except boot loader
inodes) got by using the EXT4_IGET_SPECIAL flag, the current file system
is corrupted. Therefore, make the ext4_iget() function return an error if
it gets such an abnormal special inode.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=199179
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216541
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216539
Reported-by: Luís Henriques <lhenriques@suse.de>
Suggested-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Baokun Li <libaokun1@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20230107032126.4165860-2-libaokun1@huawei.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions