vfs: add vfs_get_fsid() helper

Wrapper around statfs() interface.

Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
Amir Goldstein 2019-01-10 19:04:38 +02:00 committed by Jan Kara
parent 77115225ac
commit ec86ff5689
2 changed files with 17 additions and 0 deletions

View File

@ -67,6 +67,20 @@ static int statfs_by_dentry(struct dentry *dentry, struct kstatfs *buf)
return retval; return retval;
} }
int vfs_get_fsid(struct dentry *dentry, __kernel_fsid_t *fsid)
{
struct kstatfs st;
int error;
error = statfs_by_dentry(dentry, &st);
if (error)
return error;
*fsid = st.f_fsid;
return 0;
}
EXPORT_SYMBOL(vfs_get_fsid);
int vfs_statfs(const struct path *path, struct kstatfs *buf) int vfs_statfs(const struct path *path, struct kstatfs *buf)
{ {
int error; int error;

View File

@ -41,4 +41,7 @@ struct kstatfs {
#define ST_NODIRATIME 0x0800 /* do not update directory access times */ #define ST_NODIRATIME 0x0800 /* do not update directory access times */
#define ST_RELATIME 0x1000 /* update atime relative to mtime/ctime */ #define ST_RELATIME 0x1000 /* update atime relative to mtime/ctime */
struct dentry;
extern int vfs_get_fsid(struct dentry *dentry, __kernel_fsid_t *fsid);
#endif #endif