ceph: Add check returned value on func ceph_calc_ceph_pg.
Func ceph_calc_ceph_pg maybe failed.So add check for returned value. Signed-off-by: Jianpeng Ma <majianpeng@gmail.com> Reviewed-by: Sage Weil <sage@inktank.com> Signed-off-by: Sage Weil <sage@inktank.com>
This commit is contained in:
parent
7ab9b38070
commit
2fbcbff1d6
|
@ -211,8 +211,12 @@ static long ceph_ioctl_get_dataloc(struct file *file, void __user *arg)
|
|||
snprintf(dl.object_name, sizeof(dl.object_name), "%llx.%08llx",
|
||||
ceph_ino(inode), dl.object_no);
|
||||
|
||||
ceph_calc_ceph_pg(&pgid, dl.object_name, osdc->osdmap,
|
||||
ceph_file_layout_pg_pool(ci->i_layout));
|
||||
r = ceph_calc_ceph_pg(&pgid, dl.object_name, osdc->osdmap,
|
||||
ceph_file_layout_pg_pool(ci->i_layout));
|
||||
if (r < 0) {
|
||||
up_read(&osdc->map_sem);
|
||||
return r;
|
||||
}
|
||||
|
||||
dl.osd = ceph_calc_pg_primary(osdc->osdmap, pgid);
|
||||
if (dl.osd >= 0) {
|
||||
|
|
Loading…
Reference in New Issue