On Thu, 2014-01-09 at 12:24 +0200, Sagi Grimberg wrote: > On 1/8/2014 10:36 PM, Nicholas A. Bellinger wrote: > > From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > > > > This patch updates sbc_emulate_readcapacity_16() to set > > P_TYPE and PROT_EN bits when DIF emulation is enabled by > > the backend device. > > > > Cc: Martin K. Petersen <martin.petersen@xxxxxxxxxx> > > Cc: Christoph Hellwig <hch@xxxxxx> > > Cc: Hannes Reinecke <hare@xxxxxxx> > > Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx> > > Cc: Or Gerlitz <ogerlitz@xxxxxxxxxxxx> > > Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > > --- > > drivers/target/target_core_sbc.c | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/drivers/target/target_core_sbc.c b/drivers/target/target_core_sbc.c > > index 366b9bb..22599e8 100644 > > --- a/drivers/target/target_core_sbc.c > > +++ b/drivers/target/target_core_sbc.c > > @@ -106,6 +106,11 @@ sbc_emulate_readcapacity_16(struct se_cmd *cmd) > > buf[9] = (dev->dev_attrib.block_size >> 16) & 0xff; > > buf[10] = (dev->dev_attrib.block_size >> 8) & 0xff; > > buf[11] = dev->dev_attrib.block_size & 0xff; > > + /* > > + * Set P_TYPE and PROT_EN bits for DIF support > > + */ > > + if (dev->dev_attrib.pi_prot_type) > > + buf[12] = (dev->dev_attrib.pi_prot_type - 1) << 1 | 0x1; > > > > if (dev->transport->get_lbppbe) > > buf[13] = dev->transport->get_lbppbe(dev) & 0x0f; > > Hey Nic, > > What about FORMAT_UNIT emulation? Would certainly be useful to have.. > The backstore protection configuration is done at the target side via > configfs/targetcli, if you publish DIF support in > INQUERY_EVPD/READ_CAPACITY you need to accept protection information format? Mmmm, these two bits bits are following what scsi_debug is currently exposing minus FORMAT_UNIT support..? MKP..? --nab -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html