>>>>> "Darrick" == Darrick J Wong <darrick.wong@xxxxxxxxxx> writes: Darrick> and more recently I've theorized that we could add a magic Darrick> fcntl/ioctl to make the kernel recognize, say, the first iovec Darrick> of a O_DIRECT *{read,write}v call as the PI buffer, which I Darrick> think is similar to how DIX gets PI data to a disk. But it's Darrick> not like I have any code to show for it. I don't particularly like the "stick it in the first iovec" magic. Also, we need a bit more than this. A handful of knobs need to be present to convey how the PI should be sliced and diced. So then we get into the territory where the first iovec is a PI descriptor of some sort. And then the second entry is the PI buffer. Darrick> I /think/ it's fairly straightforward to change the directio Darrick> submit code to find the userspace PI buffer and amend the block Darrick> integrity code to attach our own PI buffer. I recommend that you check out how I do this in oracleasm. Darrick> You'd still have to let the block layer set the sector # field, Darrick> but afaik that won't affect the crc or the app tag. Correct. But the right way would be to pass the ref tag seed in as part of the IOCB and let sd or the HBA hardware do the remapping. -- Martin K. Petersen Oracle Linux Engineering -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html