diff options
Diffstat (limited to 'fs/stat.c')
| -rw-r--r-- | fs/stat.c | 41 | 
1 files changed, 2 insertions, 39 deletions
diff --git a/fs/stat.c b/fs/stat.c index 6e60389d6a15..d43a5cc1bfa4 100644 --- a/fs/stat.c +++ b/fs/stat.c @@ -27,37 +27,6 @@  #include "mount.h"  /** - * fill_mg_cmtime - Fill in the mtime and ctime and flag ctime as QUERIED - * @stat: where to store the resulting values - * @request_mask: STATX_* values requested - * @inode: inode from which to grab the c/mtime - * - * Given @inode, grab the ctime and mtime out if it and store the result - * in @stat. When fetching the value, flag it as queried so the next write - * will use a fine-grained timestamp. - */ -void fill_mg_cmtime(struct kstat *stat, u32 request_mask, struct inode *inode) -{ -	atomic_long_t *pnsec = (atomic_long_t *)&inode->__i_ctime.tv_nsec; - -	/* If neither time was requested, then don't report them */ -	if (!(request_mask & (STATX_CTIME|STATX_MTIME))) { -		stat->result_mask &= ~(STATX_CTIME|STATX_MTIME); -		return; -	} - -	stat->mtime = inode->i_mtime; -	stat->ctime.tv_sec = inode->__i_ctime.tv_sec; -	/* -	 * Atomically set the QUERIED flag and fetch the new value with -	 * the flag masked off. -	 */ -	stat->ctime.tv_nsec = atomic_long_fetch_or(I_CTIME_QUERIED, pnsec) & -					~I_CTIME_QUERIED; -} -EXPORT_SYMBOL(fill_mg_cmtime); - -/**   * generic_fillattr - Fill in the basic attributes from the inode struct   * @idmap:		idmap of the mount the inode was found from   * @request_mask:	statx request_mask @@ -89,14 +58,8 @@ void generic_fillattr(struct mnt_idmap *idmap, u32 request_mask,  	stat->rdev = inode->i_rdev;  	stat->size = i_size_read(inode);  	stat->atime = inode->i_atime; - -	if (is_mgtime(inode)) { -		fill_mg_cmtime(stat, request_mask, inode); -	} else { -		stat->mtime = inode->i_mtime; -		stat->ctime = inode_get_ctime(inode); -	} - +	stat->mtime = inode->i_mtime; +	stat->ctime = inode_get_ctime(inode);  	stat->blksize = i_blocksize(inode);  	stat->blocks = inode->i_blocks;  |