]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: fix flush_snap logic after putting caps
authorJeff Layton <jlayton@kernel.org>
Thu, 10 Dec 2020 18:35:46 +0000 (13:35 -0500)
committerJeff Layton <jlayton@kernel.org>
Sat, 6 Feb 2021 11:52:09 +0000 (06:52 -0500)
commit54fb881885cf816a8e84112518139129dcdef31a
treee1b2b21d42ff0aee4f35cbf9daa36d1d887de7ca
parent59f2872c7d2b51f44d6dd306d79b35ff03dce0b3
ceph: fix flush_snap logic after putting caps

A primary reason for skipping ceph_check_caps after putting the
references was to avoid the locking in ceph_check_caps during a
reconnect. __ceph_put_cap_refs can still call ceph_flush_snaps in that
case though, and that takes many of the same inconvenient locks.

Fix the logic in __ceph_put_cap_refs to skip flushing snaps when the
skip_checking_caps flag is set.

Fixes: e64f44a88465 (ceph: skip checking caps when session reconnecting and releasing reqs)
Signed-off-by: Jeff Layton <jlayton@kernel.org>
fs/ceph/caps.c