Jan Kara
2014-10-22 07:17:24 UTC
When we fail to allocate page vector in rbd_obj_read_sync() we just
basically ignore the problem and continue which will result in an oops
later. Fix the problem by returning proper error.
CC: Yehuda Sadeh <***@inktank.com>
CC: Sage Weil <***@inktank.com>
CC: ceph-***@vger.kernel.org
CC: ***@vger.kernel.org
Coverity-id: 1226882
Signed-off-by: Jan Kara <***@suse.cz>
---
drivers/block/rbd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 0a54c588e433..8f714c3ed25f 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -3532,7 +3532,7 @@ static int rbd_obj_read_sync(struct rbd_device *rbd_dev,
page_count = (u32) calc_pages_for(offset, length);
pages = ceph_alloc_page_vector(page_count, GFP_KERNEL);
if (IS_ERR(pages))
- ret = PTR_ERR(pages);
+ return PTR_ERR(pages);
ret = -ENOMEM;
obj_request = rbd_obj_request_create(object_name, offset, length,
basically ignore the problem and continue which will result in an oops
later. Fix the problem by returning proper error.
CC: Yehuda Sadeh <***@inktank.com>
CC: Sage Weil <***@inktank.com>
CC: ceph-***@vger.kernel.org
CC: ***@vger.kernel.org
Coverity-id: 1226882
Signed-off-by: Jan Kara <***@suse.cz>
---
drivers/block/rbd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 0a54c588e433..8f714c3ed25f 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -3532,7 +3532,7 @@ static int rbd_obj_read_sync(struct rbd_device *rbd_dev,
page_count = (u32) calc_pages_for(offset, length);
pages = ceph_alloc_page_vector(page_count, GFP_KERNEL);
if (IS_ERR(pages))
- ret = PTR_ERR(pages);
+ return PTR_ERR(pages);
ret = -ENOMEM;
obj_request = rbd_obj_request_create(object_name, offset, length,
--
1.8.1.4
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to ***@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
1.8.1.4
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to ***@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html