The following patches made over the ceph master branch implement OSD side support for VMware VAAI's Atomic Test and Set (ATS) and Write Same (Zero) requests. ATS is used for operations like locking and heartbeats. It is implemented by as the SCSI COMPARE_AND_WRITE command which requires the device to read N blocks, compare them to data sent with the command, and if equal, write N blocks. Zero is used to initialize blocks to zero. It is implemented as the SCSI WRITE_SAME command which passes the device a block's worth of data and has it write it multiple times. This does not include support for XCOPY/extended copy. I am still looking into this, but it seems it might be difficult to support due to rbd being more tuned to cloning entire devices. When we implement VASA, the cloneVirtualVolume might be something we can support though. More info on VAAI can be found here: http://www.vmware.com/resources/techresources/10337 The krbd patches which use these requests are in vaai branch of this tree: https://github.com/mikechristie/linux-kernel I did not submit them in this thread, because they depend on other patches that are still being reviewed upstream and I did not want to waste people's time reviewing them if they change. These OSD side patches should be ok to review and merge, because the op format and implemention should not change. -- 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