SCSI fixes on 20180627
Three small bug fixes (barrier elimination, memory leak on unload, spinlock recursion) and a technical enhancement left over from the merge window: the TCMU read length support is required for tape devices read when the length of the read is greater than the tape block size. Signed-off-by: James E.J. Bottomley <jejb@linux.vnet.ibm.com> -----BEGIN PGP SIGNATURE----- iJwEABMIAEQWIQTnYEDbdso9F2cI+arnQslM7pishQUCWzL0MSYcamFtZXMuYm90 dG9tbGV5QGhhbnNlbnBhcnRuZXJzaGlwLmNvbQAKCRDnQslM7pishc/IAP9clsIx CwZd3X/c/AffETSGIIMAjjfOAUJq7xEcR+cyUgD/ZSaIaI/PlvdpIfXPPEd7W3UC W1maxi8MwP4OF6Xi7mw= =TQl+ -----END PGP SIGNATURE----- Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi Pull SCSI fixes from James Bottomley: "Three small bug fixes (barrier elimination, memory leak on unload, spinlock recursion) and a technical enhancement left over from the merge window: the TCMU read length support is required for tape devices read when the length of the read is greater than the tape block size" * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: scsi: scsi_debug: Fix memory leak on module unload scsi: qla2xxx: Spinlock recursion in qla_target scsi: ipr: Eliminate duplicate barriers scsi: target: tcmu: add read length support
This commit is contained in:
commit
debd52a050
5 changed files with 43 additions and 16 deletions
|
|
@ -44,6 +44,7 @@
|
|||
#define TCMU_MAILBOX_VERSION 2
|
||||
#define ALIGN_SIZE 64 /* Should be enough for most CPUs */
|
||||
#define TCMU_MAILBOX_FLAG_CAP_OOOC (1 << 0) /* Out-of-order completions */
|
||||
#define TCMU_MAILBOX_FLAG_CAP_READ_LEN (1 << 1) /* Read data length */
|
||||
|
||||
struct tcmu_mailbox {
|
||||
__u16 version;
|
||||
|
|
@ -71,6 +72,7 @@ struct tcmu_cmd_entry_hdr {
|
|||
__u16 cmd_id;
|
||||
__u8 kflags;
|
||||
#define TCMU_UFLAG_UNKNOWN_OP 0x1
|
||||
#define TCMU_UFLAG_READ_LEN 0x2
|
||||
__u8 uflags;
|
||||
|
||||
} __packed;
|
||||
|
|
@ -119,7 +121,7 @@ struct tcmu_cmd_entry {
|
|||
__u8 scsi_status;
|
||||
__u8 __pad1;
|
||||
__u16 __pad2;
|
||||
__u32 __pad3;
|
||||
__u32 read_len;
|
||||
char sense_buffer[TCMU_SENSE_BUFFERSIZE];
|
||||
} rsp;
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue