lkml.org 
[lkml]   [2014]   [Jan]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 07/14] target/sbc: Add P_TYPE + PROT_EN bits to READ_CAPACITY_16
On 1/8/2014 10:36 PM, Nicholas A. Bellinger wrote:
> From: Nicholas Bellinger <nab@linux-iscsi.org>
>
> 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@oracle.com>
> Cc: Christoph Hellwig <hch@lst.de>
> Cc: Hannes Reinecke <hare@suse.de>
> Cc: Sagi Grimberg <sagig@mellanox.com>
> Cc: Or Gerlitz <ogerlitz@mellanox.com>
> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
> ---
> 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?
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?
Did I miss that one? or is it still under WIP?

Sagi.


\
 
 \ /
  Last update: 2014-01-09 12:21    [W:0.646 / U:0.428 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site