mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-16 01:54:00 +00:00
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: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
1c4c7159ed
commit
fe052a1810
@ -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->dev_link_magic = SE_DEV_LINK_MAGIC;
|
||||||
dev->se_hba = hba;
|
dev->se_hba = hba;
|
||||||
dev->transport = hba->backend->ops;
|
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;
|
dev->hba_index = hba->hba_index;
|
||||||
|
|
||||||
INIT_LIST_HEAD(&dev->dev_list);
|
INIT_LIST_HEAD(&dev->dev_list);
|
||||||
|
@ -1191,7 +1191,7 @@ void
|
|||||||
sbc_dif_generate(struct se_cmd *cmd)
|
sbc_dif_generate(struct se_cmd *cmd)
|
||||||
{
|
{
|
||||||
struct se_device *dev = cmd->se_dev;
|
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;
|
struct scatterlist *dsg = cmd->t_data_sg, *psg;
|
||||||
sector_t sector = cmd->t_task_lba;
|
sector_t sector = cmd->t_task_lba;
|
||||||
void *daddr, *paddr;
|
void *daddr, *paddr;
|
||||||
@ -1203,7 +1203,7 @@ sbc_dif_generate(struct se_cmd *cmd)
|
|||||||
daddr = kmap_atomic(sg_page(dsg)) + dsg->offset;
|
daddr = kmap_atomic(sg_page(dsg)) + dsg->offset;
|
||||||
|
|
||||||
for (j = 0; j < psg->length;
|
for (j = 0; j < psg->length;
|
||||||
j += sizeof(struct se_dif_v1_tuple)) {
|
j += sizeof(*sdt)) {
|
||||||
__u16 crc;
|
__u16 crc;
|
||||||
unsigned int avail;
|
unsigned int avail;
|
||||||
|
|
||||||
@ -1256,7 +1256,7 @@ sbc_dif_generate(struct se_cmd *cmd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static sense_reason_t
|
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)
|
__u16 crc, sector_t sector, unsigned int ei_lba)
|
||||||
{
|
{
|
||||||
__be16 csum;
|
__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)
|
unsigned int ei_lba, struct scatterlist *psg, int psg_off)
|
||||||
{
|
{
|
||||||
struct se_device *dev = cmd->se_dev;
|
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;
|
struct scatterlist *dsg = cmd->t_data_sg;
|
||||||
sector_t sector = start;
|
sector_t sector = start;
|
||||||
void *daddr, *paddr;
|
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 &&
|
for (i = psg_off; i < psg->length &&
|
||||||
sector < start + sectors;
|
sector < start + sectors;
|
||||||
i += sizeof(struct se_dif_v1_tuple)) {
|
i += sizeof(*sdt)) {
|
||||||
__u16 crc;
|
__u16 crc;
|
||||||
unsigned int avail;
|
unsigned int avail;
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@
|
|||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
#include <linux/blkdev.h>
|
#include <linux/blkdev.h>
|
||||||
#include <linux/percpu_ida.h>
|
#include <linux/percpu_ida.h>
|
||||||
|
#include <linux/t10-pi.h>
|
||||||
#include <net/sock.h>
|
#include <net/sock.h>
|
||||||
#include <net/tcp.h>
|
#include <net/tcp.h>
|
||||||
|
|
||||||
@ -426,12 +427,6 @@ enum target_core_dif_check {
|
|||||||
TARGET_DIF_CHECK_REFTAG = 0x1 << 2,
|
TARGET_DIF_CHECK_REFTAG = 0x1 << 2,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct se_dif_v1_tuple {
|
|
||||||
__be16 guard_tag;
|
|
||||||
__be16 app_tag;
|
|
||||||
__be32 ref_tag;
|
|
||||||
};
|
|
||||||
|
|
||||||
/* for sam_task_attr */
|
/* for sam_task_attr */
|
||||||
#define TCM_SIMPLE_TAG 0x20
|
#define TCM_SIMPLE_TAG 0x20
|
||||||
#define TCM_HEAD_TAG 0x21
|
#define TCM_HEAD_TAG 0x21
|
||||||
|
Loading…
x
Reference in New Issue
Block a user