mirror of https://gitee.com/openkylin/linux.git
orangefs: set up and use backing_dev_info
Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
This commit is contained in:
parent
5e4f606e26
commit
f2d34c738c
|
@ -407,15 +407,11 @@ static int orangefs_fill_sb(struct super_block *sb,
|
||||||
struct orangefs_fs_mount_response *fs_mount,
|
struct orangefs_fs_mount_response *fs_mount,
|
||||||
void *data, int silent)
|
void *data, int silent)
|
||||||
{
|
{
|
||||||
int ret = -EINVAL;
|
int ret;
|
||||||
struct inode *root = NULL;
|
struct inode *root;
|
||||||
struct dentry *root_dentry = NULL;
|
struct dentry *root_dentry;
|
||||||
struct orangefs_object_kref root_object;
|
struct orangefs_object_kref root_object;
|
||||||
|
|
||||||
/* alloc and init our private orangefs sb info */
|
|
||||||
sb->s_fs_info = kzalloc(sizeof(struct orangefs_sb_info_s), GFP_KERNEL);
|
|
||||||
if (!ORANGEFS_SB(sb))
|
|
||||||
return -ENOMEM;
|
|
||||||
ORANGEFS_SB(sb)->sb = sb;
|
ORANGEFS_SB(sb)->sb = sb;
|
||||||
|
|
||||||
ORANGEFS_SB(sb)->root_khandle = fs_mount->root_khandle;
|
ORANGEFS_SB(sb)->root_khandle = fs_mount->root_khandle;
|
||||||
|
@ -438,6 +434,10 @@ static int orangefs_fill_sb(struct super_block *sb,
|
||||||
sb->s_blocksize_bits = PAGE_SHIFT;
|
sb->s_blocksize_bits = PAGE_SHIFT;
|
||||||
sb->s_maxbytes = MAX_LFS_FILESIZE;
|
sb->s_maxbytes = MAX_LFS_FILESIZE;
|
||||||
|
|
||||||
|
ret = super_setup_bdi(sb);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
root_object.khandle = ORANGEFS_SB(sb)->root_khandle;
|
root_object.khandle = ORANGEFS_SB(sb)->root_khandle;
|
||||||
root_object.fs_id = ORANGEFS_SB(sb)->fs_id;
|
root_object.fs_id = ORANGEFS_SB(sb)->fs_id;
|
||||||
gossip_debug(GOSSIP_SUPER_DEBUG,
|
gossip_debug(GOSSIP_SUPER_DEBUG,
|
||||||
|
@ -516,6 +516,13 @@ struct dentry *orangefs_mount(struct file_system_type *fst,
|
||||||
goto free_op;
|
goto free_op;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* alloc and init our private orangefs sb info */
|
||||||
|
sb->s_fs_info = kzalloc(sizeof(struct orangefs_sb_info_s), GFP_KERNEL);
|
||||||
|
if (!ORANGEFS_SB(sb)) {
|
||||||
|
d = ERR_PTR(-ENOMEM);
|
||||||
|
goto free_op;
|
||||||
|
}
|
||||||
|
|
||||||
ret = orangefs_fill_sb(sb,
|
ret = orangefs_fill_sb(sb,
|
||||||
&new_op->downcall.resp.fs_mount, data,
|
&new_op->downcall.resp.fs_mount, data,
|
||||||
flags & SB_SILENT ? 1 : 0);
|
flags & SB_SILENT ? 1 : 0);
|
||||||
|
|
Loading…
Reference in New Issue