]> Pileus Git - ~andy/linux/blobdiff - net/ceph/osd_client.c
libceph: must hold mutex for reset_changed_osds()
[~andy/linux] / net / ceph / osd_client.c
index d5953b87918c072daaa1427187246f9f9cfcad3e..3a246a6cab473496e58275cbb367485acbbda4d8 100644 (file)
@@ -1675,13 +1675,13 @@ static void kick_requests(struct ceph_osd_client *osdc, int force_resend)
                __register_request(osdc, req);
                __unregister_linger_request(osdc, req);
        }
+       reset_changed_osds(osdc);
        mutex_unlock(&osdc->request_mutex);
 
        if (needmap) {
                dout("%d requests for down osds, need new map\n", needmap);
                ceph_monc_request_next_osdmap(&osdc->client->monc);
        }
-       reset_changed_osds(osdc);
 }