[PATCH v2 0/2] block I/O when cluster is full

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

 



The first patch is the same as in v1. The second is the client side of
a fix for a race condition in handling osdmaps marked full. The fix
for this race condition requires the osd to drop requests rather than
returning ENOSPC when full, so we can't offer the old behavior of
returning an error easily as an rbd option.

Cephfs looks directly at the osdmap to return ENOSPC in aio_write, but
if it hits the race with the osd and loses, it may block instead.
ceph-fuse already blocks, but in the future it may be desirable to
return ENOSPC earlier rather than blocking. This patchset does not
address this at all, it is left for future work.

These patches can also be found in the wip-full-6938 branch of
ceph-client.git.

Josh Durgin (2):
  libceph: block I/O when PAUSE or FULL osd map flags are set
  libceph: resend all writes after the osdmap loses the full flag

 include/linux/ceph/osd_client.h |    1 +
 net/ceph/osd_client.c           |   57 +++++++++++++++++++++++++++++++++------
 2 files changed, 50 insertions(+), 8 deletions(-)

-- 
1.7.10.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