]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Revert "rbd: ObjectCacher reads can hang when reading sparse files"
authorJason Dillaman <dillaman@redhat.com>
Mon, 19 Jan 2015 17:45:25 +0000 (12:45 -0500)
committerKen Dreyer <kdreyer@redhat.com>
Mon, 13 Apr 2015 18:49:20 +0000 (12:49 -0600)
This reverts commit 711a7e6f81983ff2091caa0f232af914a04a041c.

src/osdc/ObjectCacher.cc

index 58fc6e5ca3466e8e07c38ca38f2ecfc2b4ed21a4..e804674ffe28572db0164fd9c01d2cdb800a9fff 100644 (file)
@@ -710,9 +710,6 @@ void ObjectCacher::bh_read_finish(int64_t poolid, sobject_t oid, ceph_tid_t tid,
       }
     }
 
-    ls.splice(ls.end(), waitfor_read);
-    waitfor_read.clear();
-
     // apply to bh's!
     loff_t opos = start;
     while (true) {
@@ -767,6 +764,9 @@ void ObjectCacher::bh_read_finish(int64_t poolid, sobject_t oid, ceph_tid_t tid,
       loff_t oldpos = opos;
       opos = bh->end();
 
+      ls.splice(ls.end(), waitfor_read);
+      waitfor_read.clear();
+
       if (r == -ENOENT) {
        if (trust_enoent) {
          ldout(cct, 10) << "bh_read_finish removing " << *bh << dendl;