Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Pull SCSI updates from James Bottomley: "This patch consists of the usual driver updates (qla2xxx, qla4xxx, lpfc, be2iscsi, fnic, ufs, NCR5380) The NCR5380 is the addition to maintained status of a long neglected driver for older hardware. In addition there are a lot of minor fixes and cleanups and some more updates to make scsi mq ready" * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (130 commits) include/scsi/osd_protocol.h: remove unnecessary __constant mvsas: Recognise device/subsystem 9485/9485 as 88SE9485 Revert "be2iscsi: Fix processing cqe for cxn whose endpoint is freed" mptfusion: fix msgContext in mptctl_hp_hostinfo acornscsi: remove linked command support scsi/NCR5380: dprintk macro fusion: Remove use of DEF_SCSI_QCMD fusion: Add free msg frames to the head, not tail of list mpt2sas: Add free smids to the head, not tail of list mpt2sas: Remove use of DEF_SCSI_QCMD mpt2sas: Remove uses of serial_number mpt3sas: Remove use of DEF_SCSI_QCMD mpt3sas: Remove uses of serial_number qla2xxx: Use kmemdup instead of kmalloc + memcpy qla4xxx: Use kmemdup instead of kmalloc + memcpy qla2xxx: fix incorrect debug printk be2iscsi: Bump the driver version be2iscsi: Fix processing cqe for cxn whose endpoint is freed be2iscsi: Fix destroy MCC-CQ before MCC-EQ is destroyed be2iscsi: Fix memory corruption in MBX path ...
This commit is contained in:
@@ -263,16 +263,16 @@ static inline struct osd_cdb_head *osd_cdb_head(struct osd_cdb *ocdb)
|
||||
* Ex name = FORMAT_OSD we have OSD_ACT_FORMAT_OSD && OSDv1_ACT_FORMAT_OSD
|
||||
*/
|
||||
#define OSD_ACT___(Name, Num) \
|
||||
OSD_ACT_##Name = __constant_cpu_to_be16(0x8880 + Num), \
|
||||
OSDv1_ACT_##Name = __constant_cpu_to_be16(0x8800 + Num),
|
||||
OSD_ACT_##Name = cpu_to_be16(0x8880 + Num), \
|
||||
OSDv1_ACT_##Name = cpu_to_be16(0x8800 + Num),
|
||||
|
||||
/* V2 only actions */
|
||||
#define OSD_ACT_V2(Name, Num) \
|
||||
OSD_ACT_##Name = __constant_cpu_to_be16(0x8880 + Num),
|
||||
OSD_ACT_##Name = cpu_to_be16(0x8880 + Num),
|
||||
|
||||
#define OSD_ACT_V1_V2(Name, Num1, Num2) \
|
||||
OSD_ACT_##Name = __constant_cpu_to_be16(Num2), \
|
||||
OSDv1_ACT_##Name = __constant_cpu_to_be16(Num1),
|
||||
OSD_ACT_##Name = cpu_to_be16(Num2), \
|
||||
OSDv1_ACT_##Name = cpu_to_be16(Num1),
|
||||
|
||||
enum osd_service_actions {
|
||||
OSD_ACT_V2(OBJECT_STRUCTURE_CHECK, 0x00)
|
||||
|
||||
@@ -133,6 +133,15 @@ struct scsi_cmnd {
|
||||
unsigned char tag; /* SCSI-II queued command tag */
|
||||
};
|
||||
|
||||
/*
|
||||
* Return the driver private allocation behind the command.
|
||||
* Only works if cmd_size is set in the host template.
|
||||
*/
|
||||
static inline void *scsi_cmd_priv(struct scsi_cmnd *cmd)
|
||||
{
|
||||
return cmd + 1;
|
||||
}
|
||||
|
||||
/* make sure not to use it with REQ_TYPE_BLOCK_PC commands */
|
||||
static inline struct scsi_driver *scsi_cmd_to_driver(struct scsi_cmnd *cmd)
|
||||
{
|
||||
|
||||
@@ -4,17 +4,17 @@
|
||||
#include <linux/device.h>
|
||||
|
||||
struct module;
|
||||
struct request;
|
||||
struct scsi_cmnd;
|
||||
struct scsi_device;
|
||||
struct request;
|
||||
struct request_queue;
|
||||
|
||||
|
||||
struct scsi_driver {
|
||||
struct module *owner;
|
||||
struct device_driver gendrv;
|
||||
|
||||
void (*rescan)(struct device *);
|
||||
int (*init_command)(struct scsi_cmnd *);
|
||||
void (*uninit_command)(struct scsi_cmnd *);
|
||||
int (*done)(struct scsi_cmnd *);
|
||||
int (*eh_action)(struct scsi_cmnd *, int);
|
||||
};
|
||||
@@ -31,8 +31,5 @@ extern int scsi_register_interface(struct class_interface *);
|
||||
|
||||
int scsi_setup_blk_pc_cmnd(struct scsi_device *sdev, struct request *req);
|
||||
int scsi_setup_fs_cmnd(struct scsi_device *sdev, struct request *req);
|
||||
int scsi_prep_state_check(struct scsi_device *sdev, struct request *req);
|
||||
int scsi_prep_return(struct request_queue *q, struct request *req, int ret);
|
||||
int scsi_prep_fn(struct request_queue *, struct request *);
|
||||
|
||||
#endif /* _SCSI_SCSI_DRIVER_H */
|
||||
|
||||
Reference in New Issue
Block a user