The following patches were built over Linus's tree. They allow us to use the block pr_ops with LIO's target_core_iblock module to support cluster applications in VMs. Currently, to use something like windows clustering in VMs with LIO and vhost-scsi, you have to use tcmu or pscsi or use a cluster aware FS/framework for the LIO pr file. Setting up a cluster FS/framework is pain and waste when your real backend device is already a distributed device, and pscsi and tcmu are nice for specific use cases, but iblock gives you the best performance and allows you to use stacked devices like dm-multipath. So these patches allow iblock to work like pscsi/tcmu where they can pass a PR command to the backend module. And then iblock will use the pr_ops to pass the PR command to the real devices similar to what we do for unmap today. Note that this is patchset does not attempt to support every PR SCSI feature in iblock. It has the same limitations as tcmu and pscsi where you can have a single I_T nexus per device and only supports what is needed for windows clustering right now.