aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ceph/ioctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/ceph/ioctl.c')
-rw-r--r--fs/ceph/ioctl.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/ceph/ioctl.c b/fs/ceph/ioctl.c
index 4c33e19fc241..8a5bcae62846 100644
--- a/fs/ceph/ioctl.c
+++ b/fs/ceph/ioctl.c
@@ -24,6 +24,8 @@ static long ceph_ioctl_get_layout(struct file *file, void __user *arg)
24 l.stripe_count = ceph_file_layout_stripe_count(ci->i_layout); 24 l.stripe_count = ceph_file_layout_stripe_count(ci->i_layout);
25 l.object_size = ceph_file_layout_object_size(ci->i_layout); 25 l.object_size = ceph_file_layout_object_size(ci->i_layout);
26 l.data_pool = le32_to_cpu(ci->i_layout.fl_pg_pool); 26 l.data_pool = le32_to_cpu(ci->i_layout.fl_pg_pool);
27 l.preferred_osd =
28 (s32)le32_to_cpu(ci->i_layout.fl_pg_preferred);
27 if (copy_to_user(arg, &l, sizeof(l))) 29 if (copy_to_user(arg, &l, sizeof(l)))
28 return -EFAULT; 30 return -EFAULT;
29 } 31 }
@@ -79,7 +81,8 @@ static long ceph_ioctl_set_layout(struct file *file, void __user *arg)
79 req->r_args.setlayout.layout.fl_object_size = 81 req->r_args.setlayout.layout.fl_object_size =
80 cpu_to_le32(l.object_size); 82 cpu_to_le32(l.object_size);
81 req->r_args.setlayout.layout.fl_pg_pool = cpu_to_le32(l.data_pool); 83 req->r_args.setlayout.layout.fl_pg_pool = cpu_to_le32(l.data_pool);
82 req->r_args.setlayout.layout.fl_pg_preferred = cpu_to_le32((s32)-1); 84 req->r_args.setlayout.layout.fl_pg_preferred =
85 cpu_to_le32(l.preferred_osd);
83 86
84 err = ceph_mdsc_do_request(mdsc, parent_inode, req); 87 err = ceph_mdsc_do_request(mdsc, parent_inode, req);
85 ceph_mdsc_put_request(req); 88 ceph_mdsc_put_request(req);