mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	ubifs: Wire-up statx() support
statx() can report what flags a file has, expose flags that UBIFS supports. Especially STATX_ATTR_COMPRESSED and STATX_ATTR_ENCRYPTED can be interesting for userspace. Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
		
							parent
							
								
									d2eb85226f
								
							
						
					
					
						commit
						a02a6eba99
					
				
					 1 changed files with 15 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -1644,6 +1644,21 @@ int ubifs_getattr(const struct path *path, struct kstat *stat,
 | 
			
		|||
	struct ubifs_inode *ui = ubifs_inode(inode);
 | 
			
		||||
 | 
			
		||||
	mutex_lock(&ui->ui_mutex);
 | 
			
		||||
 | 
			
		||||
	if (ui->flags & UBIFS_APPEND_FL)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_APPEND;
 | 
			
		||||
	if (ui->flags & UBIFS_COMPR_FL)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_COMPRESSED;
 | 
			
		||||
	if (ui->flags & UBIFS_CRYPT_FL)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_ENCRYPTED;
 | 
			
		||||
	if (ui->flags & UBIFS_IMMUTABLE_FL)
 | 
			
		||||
		stat->attributes |= STATX_ATTR_IMMUTABLE;
 | 
			
		||||
 | 
			
		||||
	stat->attributes_mask |= (STATX_ATTR_APPEND |
 | 
			
		||||
				STATX_ATTR_COMPRESSED |
 | 
			
		||||
				STATX_ATTR_ENCRYPTED |
 | 
			
		||||
				STATX_ATTR_IMMUTABLE);
 | 
			
		||||
 | 
			
		||||
	generic_fillattr(inode, stat);
 | 
			
		||||
	stat->blksize = UBIFS_BLOCK_SIZE;
 | 
			
		||||
	stat->size = ui->ui_size;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue