]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
client: pin Inode during readahead
authorSage Weil <sage@inktank.com>
Thu, 27 Mar 2014 04:52:00 +0000 (21:52 -0700)
committerSage Weil <sage@inktank.com>
Fri, 28 Mar 2014 22:48:41 +0000 (15:48 -0700)
commit9bfbce30678742515025ca235c4443bb3a69199f
tree07ef1c9268666ba3aa9ca6f9a0e03a81f34ed3a3
parent232445578a2c6d0fb974e55378057fce473095f7
client: pin Inode during readahead

Make sure the Inode does not go away while a readahead is in progress.  In
particular:

 - read_async
   - start a readahead
   - get actual read from cache, return
 - close/release
   - call ObjectCacher::release_set() and get unclean > 0, assert

Fixes: #7867
Backport: emperor, dumpling
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit f1c7b4ef0cd064a9cb86757f17118d17913850db)
src/client/Client.cc
src/client/Client.h