forked from mirrors/linux
		
	xfs: report crtime and attribute flags to statx
statx has the ability to report inode creation times and inode flags, so hook up di_crtime and di_flags to that functionality. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
		
							parent
							
								
									99652ea56a
								
							
						
					
					
						commit
						5f955f26f3
					
				
					 1 changed files with 14 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -516,6 +516,20 @@ xfs_vn_getattr(
 | 
			
		|||
	stat->blocks =
 | 
			
		||||
		XFS_FSB_TO_BB(mp, ip->i_d.di_nblocks + ip->i_delayed_blks);
 | 
			
		||||
 | 
			
		||||
	if (ip->i_d.di_version == 3) {
 | 
			
		||||
		if (request_mask & STATX_BTIME) {
 | 
			
		||||
			stat->result_mask |= STATX_BTIME;
 | 
			
		||||
			stat->btime.tv_sec = ip->i_d.di_crtime.t_sec;
 | 
			
		||||
			stat->btime.tv_nsec = ip->i_d.di_crtime.t_nsec;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (ip->i_d.di_flags & XFS_DIFLAG_IMMUTABLE)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_IMMUTABLE;
 | 
			
		||||
	if (ip->i_d.di_flags & XFS_DIFLAG_APPEND)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_APPEND;
 | 
			
		||||
	if (ip->i_d.di_flags & XFS_DIFLAG_NODUMP)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_NODUMP;
 | 
			
		||||
 | 
			
		||||
	switch (inode->i_mode & S_IFMT) {
 | 
			
		||||
	case S_IFBLK:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue