mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	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 =
 | 
						stat->blocks =
 | 
				
			||||||
		XFS_FSB_TO_BB(mp, ip->i_d.di_nblocks + ip->i_delayed_blks);
 | 
							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) {
 | 
						switch (inode->i_mode & S_IFMT) {
 | 
				
			||||||
	case S_IFBLK:
 | 
						case S_IFBLK:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue