Re: Conversion of LIO-Target to use include/scsi/iscsi_proto.h defs

FUJITA Tomonori
2010-08-20T07:33:06Z

On Thu, 19 Aug 2010 15:45:47 -0700
"Nicholas A. Bellinger" <nab@linux-iscsi.org> wrote:

> So, assuming that the conversion of all struct iscsi_init_* and struct
> iscsi_target* to use include/scsi/iscsi_proto.h defs just involves
> checking structure size and renaming the member use in
> drivers/target/lio-target, would it be acceptable to do something like:
>
> /* iSCSI PDU Header */
> struct iscsi_cmd {
> uint8_t opcode;
> uint8_t flags;
> __be16 rsvd2;
> uint8_t hlength;
> uint8_t dlength[3];
> uint8_t lun[8];
> itt_t itt; /* Initiator Task Tag */
> __be32 data_length;
> __be32 cmdsn;
> __be32 exp_statsn;
> uint8_t cdb[ISCSI_CDB_SIZE]; /* SCSI Command Block */
> /* Additional Data (Command Dependent) */
> #ifdef ISCSI_TARGET_MODE
> __be32 header_digest;
> #endif
> };

It's up to Mike but it looks hacky to me. struct iscsi_pdu is defined
in the exact way as the spec does.

I don't think that iscsi_proto.h conversion is a must for the mainline
inclusion. I prefer to let it alone for now.