Skip to content

Commit ec275bf

Browse files
XidianGeneralaalexandrovich
authored andcommitted
fs/ntfs3: Fix a possible null-pointer dereference in ni_clear()
In a previous commit c1006bd, ni->mi.mrec in ni_write_inode() could be NULL, and thus a NULL check is added for this variable. However, in the same call stack, ni->mi.mrec can be also dereferenced in ni_clear(): ntfs_evict_inode(inode) ni_write_inode(inode, ...) ni = ntfs_i(inode); is_rec_inuse(ni->mi.mrec) -> Add a NULL check by previous commit ni_clear(ntfs_i(inode)) is_rec_inuse(ni->mi.mrec) -> No check Thus, a possible null-pointer dereference may exist in ni_clear(). To fix it, a NULL check is added in this function. Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com> Reported-by: TOTE Robot <oslab@tsinghua.edu.cn> Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
1 parent 6827d50 commit ec275bf

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

fs/ntfs3/frecord.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ void ni_clear(struct ntfs_inode *ni)
102102
{
103103
struct rb_node *node;
104104

105-
if (!ni->vfs_inode.i_nlink && is_rec_inuse(ni->mi.mrec))
105+
if (!ni->vfs_inode.i_nlink && ni->mi.mrec && is_rec_inuse(ni->mi.mrec))
106106
ni_delete_all(ni);
107107

108108
al_destroy(ni);

0 commit comments

Comments
 (0)