]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
librbd: potential assertion failure during cache read 6348/head
authorJason Dillaman <dillaman@redhat.com>
Wed, 21 Oct 2015 17:12:48 +0000 (13:12 -0400)
committerJason Dillaman <dillaman@redhat.com>
Thu, 22 Oct 2015 17:29:41 +0000 (13:29 -0400)
commitd3abcbea1fdb04f0994f19584b93f6f1b1ff37ca
treed1a444a7cf763015d8d740a5b500df5f1b0a0245
parent991d0f0575411e2f2b53df35e36ff6170bcc9d8b
librbd: potential assertion failure during cache read

It's possible for a cache read from a clone to trigger a writeback if a
previous read op determined the object doesn't exist in the clone,
followed by a cached write to the non-existent clone object, followed
by another read request to the same object.  This causes the cache to
flush the pending writeback ops while not holding the owner lock.

Fixes: #13559
Backport: hammer
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 4692c330bd992a06b97b5b8975ab71952b22477a)
src/librbd/LibrbdWriteback.cc
src/librbd/internal.cc