]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
client: pin Inode during readahead 1557/head
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 21:55:13 +0000 (14:55 -0700)
commitf1c7b4ef0cd064a9cb86757f17118d17913850db
treed85609a434723c9d2101ba52b50a668a481a3fe7
parent032d4ec53e125ad91ad27ce58da6f38dcf1da92e
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>
src/client/Client.cc
src/client/Client.h