Skip to content

Commit 6cb2683

Browse files
committed
Merge: Update exfat to newer upstream version
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/3941 JIRA: https://issues.redhat.com/browse/RHEL-30614 Signed-off-by: Pavel Reichl <preichl@redhat.com> Approved-by: Andrey Albershteyn <aalbersh@redhat.com> Approved-by: John B. Wyatt IV <jwyatt@redhat.com> Merged-by: Lucas Zampieri <lzampier@redhat.com>
2 parents 130f056 + cb85ab0 commit 6cb2683

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

fs/exfat/balloc.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ static int exfat_allocate_bitmap(struct super_block *sb,
6969
}
7070
sbi->map_sectors = ((need_map_size - 1) >>
7171
(sb->s_blocksize_bits)) + 1;
72-
sbi->vol_amap = kmalloc_array(sbi->map_sectors,
72+
sbi->vol_amap = kvmalloc_array(sbi->map_sectors,
7373
sizeof(struct buffer_head *), GFP_KERNEL);
7474
if (!sbi->vol_amap)
7575
return -ENOMEM;
@@ -84,7 +84,7 @@ static int exfat_allocate_bitmap(struct super_block *sb,
8484
while (j < i)
8585
brelse(sbi->vol_amap[j++]);
8686

87-
kfree(sbi->vol_amap);
87+
kvfree(sbi->vol_amap);
8888
sbi->vol_amap = NULL;
8989
return -EIO;
9090
}
@@ -138,7 +138,7 @@ void exfat_free_bitmap(struct exfat_sb_info *sbi)
138138
for (i = 0; i < sbi->map_sectors; i++)
139139
__brelse(sbi->vol_amap[i]);
140140

141-
kfree(sbi->vol_amap);
141+
kvfree(sbi->vol_amap);
142142
}
143143

144144
int exfat_set_bitmap(struct inode *inode, unsigned int clu, bool sync)

fs/exfat/namei.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -817,15 +817,15 @@ static int exfat_unlink(struct inode *dir, struct dentry *dentry)
817817
ei->dir.dir = DIR_DELETED;
818818

819819
inode_inc_iversion(dir);
820-
dir->i_mtime = dir->i_atime = current_time(dir);
820+
dir->i_mtime = dir->i_atime = dir->i_ctime = current_time(dir);
821821
exfat_truncate_atime(&dir->i_atime);
822822
if (IS_DIRSYNC(dir))
823823
exfat_sync_inode(dir);
824824
else
825825
mark_inode_dirty(dir);
826826

827827
clear_nlink(inode);
828-
inode->i_mtime = inode->i_atime = current_time(inode);
828+
inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
829829
exfat_truncate_atime(&inode->i_atime);
830830
exfat_unhash_inode(inode);
831831
exfat_d_version_set(dentry, inode_query_iversion(dir));
@@ -979,7 +979,7 @@ static int exfat_rmdir(struct inode *dir, struct dentry *dentry)
979979
ei->dir.dir = DIR_DELETED;
980980

981981
inode_inc_iversion(dir);
982-
dir->i_mtime = dir->i_atime = current_time(dir);
982+
dir->i_mtime = dir->i_atime = dir->i_ctime = current_time(dir);
983983
exfat_truncate_atime(&dir->i_atime);
984984
if (IS_DIRSYNC(dir))
985985
exfat_sync_inode(dir);
@@ -988,7 +988,7 @@ static int exfat_rmdir(struct inode *dir, struct dentry *dentry)
988988
drop_nlink(dir);
989989

990990
clear_nlink(inode);
991-
inode->i_mtime = inode->i_atime = current_time(inode);
991+
inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
992992
exfat_truncate_atime(&inode->i_atime);
993993
exfat_unhash_inode(inode);
994994
exfat_d_version_set(dentry, inode_query_iversion(dir));

0 commit comments

Comments
 (0)