Kanchan, > Just to be clear, I was thinking of three new flags that userspace can > pass: RWF_CHK_GUARD, RWF_CHK_APPTAG, RWF_CHK_REFTAG. And corresponding > bip flags will need to be introduced (I don't see anything existing). > Driver will see those and convert to protocol specific flags. Does > this match with you what you have in mind. See bip_flags in bio.h. We currently can't pick which tag to check or not check because RDPROTECT/WRPROTECT in SCSI are a bit of a mess. However, we do have separate flags to disabling checking at HBA and disk level. That distinction doesn't really apply for NVMe but we do need it for SCSI. >>> Right. This can work for the case when host does not need to pass >>> the buffer (meta-size is equal to pi-size). But when meta-size is >>> greater than pi-size, the meta-buffer needs to be allocated. Some >>> changes are required so that Block-integrity does that allocation, >>> without having to do read_verify/write_generate. The block layer should not allocate or mess with the bip when the metadata originates in userland. -- Martin K. Petersen Oracle Linux Engineering