]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
client: hold FILE_BUFFER ref while waiting for dirty throttle
authorSage Weil <sage@newdream.net>
Thu, 19 May 2011 22:03:13 +0000 (15:03 -0700)
committerSage Weil <sage@newdream.net>
Thu, 19 May 2011 22:04:31 +0000 (15:04 -0700)
commit3df86c38f86755884c4dbe34900ec9c9d2c6dcf0
tree02703f5dd3aacb25324d5e2e46003b7ceca7bfb7
parent838067d0ea97b154271aa2503b640c9e6e7a4b96
client: hold FILE_BUFFER ref while waiting for dirty throttle

We may block in the write path because we've reached out dirty data limit.
Hold a reference to the FILE_BUFFER cap during that interval so we don't
lose the cap and put new dirty buffers into the objectcacher out of turn.

(We could also recheck our ability to take the ref after blocking, but I
think this is cleaner.)

Signed-off-by: Sage Weil <sage@newdream.net>
src/client/Client.cc