]> git.apps.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: register MDS request with dir inode from the start
authorJeff Layton <jlayton@kernel.org>
Thu, 4 Apr 2019 12:05:38 +0000 (08:05 -0400)
committerIlya Dryomov <idryomov@gmail.com>
Fri, 10 Jan 2020 10:11:07 +0000 (11:11 +0100)
commitd1a1931e1b42c1ba44edd445d68e66b330429526
tree489622cfb41688d3bcac57d0a2bb25b1f904f5f9
parent8ff70f9b53ee99588eac6616ef0a9bb272db1b28
ceph: register MDS request with dir inode from the start

When the unsafe reply to a request comes in, the request is put on the
r_unsafe_dir inode's list. In future patches, we're going to need to
wait on requests that may not have gotten an unsafe reply yet.

Change __register_request to put the entry on the dir inode's list when
the pointer is set in the request, and don't check the
CEPH_MDS_R_GOT_UNSAFE flag when unregistering it.

The only place that uses this list today is fsync codepath, and with
the coming changes, we'll want to wait on all operations whether it has
gotten an unsafe reply or not.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: "Yan, Zheng" <zyan@redhat.com>
fs/ceph/mds_client.c