aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/ceph/addr.c3
-rw-r--r--net/ceph/osd_client.c8
2 files changed, 9 insertions, 2 deletions
diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c
index 54967268a340..33da49dc3cc6 100644
--- a/fs/ceph/addr.c
+++ b/fs/ceph/addr.c
@@ -848,7 +848,8 @@ get_more_pages:
848 op->payload_len = cpu_to_le32(len); 848 op->payload_len = cpu_to_le32(len);
849 req->r_request->hdr.data_len = cpu_to_le32(len); 849 req->r_request->hdr.data_len = cpu_to_le32(len);
850 850
851 ceph_osdc_start_request(&fsc->client->osdc, req, true); 851 rc = ceph_osdc_start_request(&fsc->client->osdc, req, true);
852 BUG_ON(rc);
852 req = NULL; 853 req = NULL;
853 854
854 /* continue? */ 855 /* continue? */
diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c
index 9adbb01d23ad..caa092eb0009 100644
--- a/net/ceph/osd_client.c
+++ b/net/ceph/osd_client.c
@@ -1677,8 +1677,14 @@ int ceph_osdc_start_request(struct ceph_osd_client *osdc,
1677 */ 1677 */
1678 if (req->r_sent == 0) { 1678 if (req->r_sent == 0) {
1679 rc = __map_request(osdc, req); 1679 rc = __map_request(osdc, req);
1680 if (rc < 0) 1680 if (rc < 0) {
1681 if (nofail) {
1682 dout("osdc_start_request failed map, "
1683 " will retry %lld\n", req->r_tid);
1684 rc = 0;
1685 }
1681 goto out_unlock; 1686 goto out_unlock;
1687 }
1682 if (req->r_osd == NULL) { 1688 if (req->r_osd == NULL) {
1683 dout("send_request %p no up osds in pg\n", req); 1689 dout("send_request %p no up osds in pg\n", req);
1684 ceph_monc_request_next_osdmap(&osdc->client->monc); 1690 ceph_monc_request_next_osdmap(&osdc->client->monc);