[PATCH 0/5] ceph: fix long stalls during fsync and write_inode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is the companion kernel patchset to this ceph userland pull req:

    https://github.com/ceph/ceph/pull/11710

The problem is that fsync can be very slow on ceph, as it waits for a
cap flush ack. Cap flushes however are generally considered by the MDS
to be background activity, so they don't entail a journal flush on their
own.

The idea here is to add a new flag to cap requests to inform the MDS
that the client is waiting on the reply and that it shouldn't delay it.

I have a small program that opens a file, writes 16k to it, does an
fsync on it and then a close. It does this 256 times, and with the
current code, it takes around 20 minutes to run (~5s for each file).
With this and the companion patch series, it runs in around 12s.

Jeff Layton (5):
  ceph: fix minor typo in unsafe_request_wait
  ceph: move xattr initialzation before the encoding past the
    ceph_mds_caps
  ceph: define new argument structure for send_cap_msg
  ceph: update cap message struct version to 10
  ceph: add flags parameter to send_cap_msg

 fs/ceph/caps.c               | 289 ++++++++++++++++++++++++++-----------------
 include/linux/ceph/ceph_fs.h |   3 +
 2 files changed, 177 insertions(+), 115 deletions(-)

-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux