Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fe052a18 authored by Sagi Grimberg's avatar Sagi Grimberg Committed by Nicholas Bellinger
Browse files

target: Use struct t10_pi_tuple



Its not a good idea to keep target specific definition of
the same t10-pi tuple.

(Fix v4.2-rc1 patch fuzz - nab)

Signed-off-by: default avatarSagi Grimberg <sagig@mellanox.com>
Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
parent 1c4c7159
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -754,7 +754,7 @@ struct se_device *target_alloc_device(struct se_hba *hba, const char *name)
	dev->dev_link_magic = SE_DEV_LINK_MAGIC;
	dev->se_hba = hba;
	dev->transport = hba->backend->ops;
	dev->prot_length = sizeof(struct se_dif_v1_tuple);
	dev->prot_length = sizeof(struct t10_pi_tuple);
	dev->hba_index = hba->hba_index;

	INIT_LIST_HEAD(&dev->dev_list);
+5 −5
Original line number Diff line number Diff line
@@ -1191,7 +1191,7 @@ void
sbc_dif_generate(struct se_cmd *cmd)
{
	struct se_device *dev = cmd->se_dev;
	struct se_dif_v1_tuple *sdt;
	struct t10_pi_tuple *sdt;
	struct scatterlist *dsg = cmd->t_data_sg, *psg;
	sector_t sector = cmd->t_task_lba;
	void *daddr, *paddr;
@@ -1203,7 +1203,7 @@ sbc_dif_generate(struct se_cmd *cmd)
		daddr = kmap_atomic(sg_page(dsg)) + dsg->offset;

		for (j = 0; j < psg->length;
				j += sizeof(struct se_dif_v1_tuple)) {
				j += sizeof(*sdt)) {
			__u16 crc;
			unsigned int avail;

@@ -1256,7 +1256,7 @@ sbc_dif_generate(struct se_cmd *cmd)
}

static sense_reason_t
sbc_dif_v1_verify(struct se_cmd *cmd, struct se_dif_v1_tuple *sdt,
sbc_dif_v1_verify(struct se_cmd *cmd, struct t10_pi_tuple *sdt,
		  __u16 crc, sector_t sector, unsigned int ei_lba)
{
	__be16 csum;
@@ -1346,7 +1346,7 @@ sbc_dif_verify(struct se_cmd *cmd, sector_t start, unsigned int sectors,
	       unsigned int ei_lba, struct scatterlist *psg, int psg_off)
{
	struct se_device *dev = cmd->se_dev;
	struct se_dif_v1_tuple *sdt;
	struct t10_pi_tuple *sdt;
	struct scatterlist *dsg = cmd->t_data_sg;
	sector_t sector = start;
	void *daddr, *paddr;
@@ -1361,7 +1361,7 @@ sbc_dif_verify(struct se_cmd *cmd, sector_t start, unsigned int sectors,

		for (i = psg_off; i < psg->length &&
				sector < start + sectors;
				i += sizeof(struct se_dif_v1_tuple)) {
				i += sizeof(*sdt)) {
			__u16 crc;
			unsigned int avail;

+1 −6
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@
#include <linux/dma-mapping.h>
#include <linux/blkdev.h>
#include <linux/percpu_ida.h>
#include <linux/t10-pi.h>
#include <net/sock.h>
#include <net/tcp.h>

@@ -426,12 +427,6 @@ enum target_core_dif_check {
	TARGET_DIF_CHECK_REFTAG = 0x1 << 2,
};

struct se_dif_v1_tuple {
	__be16			guard_tag;
	__be16			app_tag;
	__be32			ref_tag;
};

/* for sam_task_attr */
#define TCM_SIMPLE_TAG	0x20
#define TCM_HEAD_TAG	0x21