forked from mirrors/linux
		
	fs/romfs: return f_fsid for statfs(2)
Make romfs return f_fsid info for statfs(2). Signed-off-by: Coly Li <coly.li@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
		
							parent
							
								
									bdc8e5f85f
								
							
						
					
					
						commit
						8a59f5d252
					
				
					 1 changed files with 5 additions and 0 deletions
				
			
		| 
						 | 
					@ -408,12 +408,17 @@ static void romfs_destroy_inode(struct inode *inode)
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
static int romfs_statfs(struct dentry *dentry, struct kstatfs *buf)
 | 
					static int romfs_statfs(struct dentry *dentry, struct kstatfs *buf)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						struct super_block *sb = dentry->d_sb;
 | 
				
			||||||
 | 
						u64 id = huge_encode_dev(sb->s_bdev->bd_dev);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	buf->f_type = ROMFS_MAGIC;
 | 
						buf->f_type = ROMFS_MAGIC;
 | 
				
			||||||
	buf->f_namelen = ROMFS_MAXFN;
 | 
						buf->f_namelen = ROMFS_MAXFN;
 | 
				
			||||||
	buf->f_bsize = ROMBSIZE;
 | 
						buf->f_bsize = ROMBSIZE;
 | 
				
			||||||
	buf->f_bfree = buf->f_bavail = buf->f_ffree;
 | 
						buf->f_bfree = buf->f_bavail = buf->f_ffree;
 | 
				
			||||||
	buf->f_blocks =
 | 
						buf->f_blocks =
 | 
				
			||||||
		(romfs_maxsize(dentry->d_sb) + ROMBSIZE - 1) >> ROMBSBITS;
 | 
							(romfs_maxsize(dentry->d_sb) + ROMBSIZE - 1) >> ROMBSBITS;
 | 
				
			||||||
 | 
						buf->f_fsid.val[0] = (u32)id;
 | 
				
			||||||
 | 
						buf->f_fsid.val[1] = (u32)(id >> 32);
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue