Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ufs: convert to ctime accessor functions

In later patches, we're going to change how the inode's ctime field is
used. Switch to using accessor functions instead of raw accesses of
inode->i_ctime.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: Jan Kara <jack@suse.cz>
Message-Id: <20230705190309.579783-78-jlayton@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>

authored by

Jeff Layton and committed by
Christian Brauner
6eeb017e 59ad88f2

+21 -18
+3 -3
fs/ufs/dir.c
··· 107 107 ufs_commit_chunk(page, pos, len); 108 108 ufs_put_page(page); 109 109 if (update_times) 110 - dir->i_mtime = dir->i_ctime = current_time(dir); 110 + dir->i_mtime = inode_set_ctime_current(dir); 111 111 mark_inode_dirty(dir); 112 112 ufs_handle_dirsync(dir); 113 113 } ··· 397 397 ufs_set_de_type(sb, de, inode->i_mode); 398 398 399 399 ufs_commit_chunk(page, pos, rec_len); 400 - dir->i_mtime = dir->i_ctime = current_time(dir); 400 + dir->i_mtime = inode_set_ctime_current(dir); 401 401 402 402 mark_inode_dirty(dir); 403 403 err = ufs_handle_dirsync(dir); ··· 539 539 pde->d_reclen = cpu_to_fs16(sb, to - from); 540 540 dir->d_ino = 0; 541 541 ufs_commit_chunk(page, pos, to - from); 542 - inode->i_ctime = inode->i_mtime = current_time(inode); 542 + inode->i_mtime = inode_set_ctime_current(inode); 543 543 mark_inode_dirty(inode); 544 544 err = ufs_handle_dirsync(inode); 545 545 out:
+1 -1
fs/ufs/ialloc.c
··· 292 292 inode_init_owner(&nop_mnt_idmap, inode, dir, mode); 293 293 inode->i_blocks = 0; 294 294 inode->i_generation = 0; 295 - inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode); 295 + inode->i_mtime = inode->i_atime = inode_set_ctime_current(inode); 296 296 ufsi->i_flags = UFS_I(dir)->i_flags; 297 297 ufsi->i_lastfrag = 0; 298 298 ufsi->i_shadow = 0;
+13 -10
fs/ufs/inode.c
··· 296 296 297 297 if (new) 298 298 *new = 1; 299 - inode->i_ctime = current_time(inode); 299 + inode_set_ctime_current(inode); 300 300 if (IS_SYNC(inode)) 301 301 ufs_sync_inode (inode); 302 302 mark_inode_dirty(inode); ··· 378 378 mark_buffer_dirty(bh); 379 379 if (IS_SYNC(inode)) 380 380 sync_dirty_buffer(bh); 381 - inode->i_ctime = current_time(inode); 381 + inode_set_ctime_current(inode); 382 382 mark_inode_dirty(inode); 383 383 out: 384 384 brelse (bh); ··· 580 580 581 581 inode->i_size = fs64_to_cpu(sb, ufs_inode->ui_size); 582 582 inode->i_atime.tv_sec = (signed)fs32_to_cpu(sb, ufs_inode->ui_atime.tv_sec); 583 - inode->i_ctime.tv_sec = (signed)fs32_to_cpu(sb, ufs_inode->ui_ctime.tv_sec); 583 + inode_set_ctime(inode, 584 + (signed)fs32_to_cpu(sb, ufs_inode->ui_ctime.tv_sec), 585 + 0); 584 586 inode->i_mtime.tv_sec = (signed)fs32_to_cpu(sb, ufs_inode->ui_mtime.tv_sec); 585 587 inode->i_mtime.tv_nsec = 0; 586 588 inode->i_atime.tv_nsec = 0; 587 - inode->i_ctime.tv_nsec = 0; 588 589 inode->i_blocks = fs32_to_cpu(sb, ufs_inode->ui_blocks); 589 590 inode->i_generation = fs32_to_cpu(sb, ufs_inode->ui_gen); 590 591 ufsi->i_flags = fs32_to_cpu(sb, ufs_inode->ui_flags); ··· 627 626 628 627 inode->i_size = fs64_to_cpu(sb, ufs2_inode->ui_size); 629 628 inode->i_atime.tv_sec = fs64_to_cpu(sb, ufs2_inode->ui_atime); 630 - inode->i_ctime.tv_sec = fs64_to_cpu(sb, ufs2_inode->ui_ctime); 629 + inode_set_ctime(inode, fs64_to_cpu(sb, ufs2_inode->ui_ctime), 630 + fs32_to_cpu(sb, ufs2_inode->ui_ctimensec)); 631 631 inode->i_mtime.tv_sec = fs64_to_cpu(sb, ufs2_inode->ui_mtime); 632 632 inode->i_atime.tv_nsec = fs32_to_cpu(sb, ufs2_inode->ui_atimensec); 633 - inode->i_ctime.tv_nsec = fs32_to_cpu(sb, ufs2_inode->ui_ctimensec); 634 633 inode->i_mtime.tv_nsec = fs32_to_cpu(sb, ufs2_inode->ui_mtimensec); 635 634 inode->i_blocks = fs64_to_cpu(sb, ufs2_inode->ui_blocks); 636 635 inode->i_generation = fs32_to_cpu(sb, ufs2_inode->ui_gen); ··· 727 726 ufs_inode->ui_size = cpu_to_fs64(sb, inode->i_size); 728 727 ufs_inode->ui_atime.tv_sec = cpu_to_fs32(sb, inode->i_atime.tv_sec); 729 728 ufs_inode->ui_atime.tv_usec = 0; 730 - ufs_inode->ui_ctime.tv_sec = cpu_to_fs32(sb, inode->i_ctime.tv_sec); 729 + ufs_inode->ui_ctime.tv_sec = cpu_to_fs32(sb, 730 + inode_get_ctime(inode).tv_sec); 731 731 ufs_inode->ui_ctime.tv_usec = 0; 732 732 ufs_inode->ui_mtime.tv_sec = cpu_to_fs32(sb, inode->i_mtime.tv_sec); 733 733 ufs_inode->ui_mtime.tv_usec = 0; ··· 772 770 ufs_inode->ui_size = cpu_to_fs64(sb, inode->i_size); 773 771 ufs_inode->ui_atime = cpu_to_fs64(sb, inode->i_atime.tv_sec); 774 772 ufs_inode->ui_atimensec = cpu_to_fs32(sb, inode->i_atime.tv_nsec); 775 - ufs_inode->ui_ctime = cpu_to_fs64(sb, inode->i_ctime.tv_sec); 776 - ufs_inode->ui_ctimensec = cpu_to_fs32(sb, inode->i_ctime.tv_nsec); 773 + ufs_inode->ui_ctime = cpu_to_fs64(sb, inode_get_ctime(inode).tv_sec); 774 + ufs_inode->ui_ctimensec = cpu_to_fs32(sb, 775 + inode_get_ctime(inode).tv_nsec); 777 776 ufs_inode->ui_mtime = cpu_to_fs64(sb, inode->i_mtime.tv_sec); 778 777 ufs_inode->ui_mtimensec = cpu_to_fs32(sb, inode->i_mtime.tv_nsec); 779 778 ··· 1208 1205 truncate_setsize(inode, size); 1209 1206 1210 1207 ufs_truncate_blocks(inode); 1211 - inode->i_mtime = inode->i_ctime = current_time(inode); 1208 + inode->i_mtime = inode_set_ctime_current(inode); 1212 1209 mark_inode_dirty(inode); 1213 1210 out: 1214 1211 UFSD("EXIT: err %d\n", err);
+4 -4
fs/ufs/namei.c
··· 153 153 struct inode *inode = d_inode(old_dentry); 154 154 int error; 155 155 156 - inode->i_ctime = current_time(inode); 156 + inode_set_ctime_current(inode); 157 157 inode_inc_link_count(inode); 158 158 ihold(inode); 159 159 ··· 220 220 if (err) 221 221 goto out; 222 222 223 - inode->i_ctime = dir->i_ctime; 223 + inode_set_ctime_to_ts(inode, inode_get_ctime(dir)); 224 224 inode_dec_link_count(inode); 225 225 err = 0; 226 226 out: ··· 282 282 if (!new_de) 283 283 goto out_dir; 284 284 ufs_set_link(new_dir, new_de, new_page, old_inode, 1); 285 - new_inode->i_ctime = current_time(new_inode); 285 + inode_set_ctime_current(new_inode); 286 286 if (dir_de) 287 287 drop_nlink(new_inode); 288 288 inode_dec_link_count(new_inode); ··· 298 298 * Like most other Unix systems, set the ctime for inodes on a 299 299 * rename. 300 300 */ 301 - old_inode->i_ctime = current_time(old_inode); 301 + inode_set_ctime_current(old_inode); 302 302 303 303 ufs_delete_entry(old_dir, old_de, old_page); 304 304 mark_inode_dirty(old_inode);