Remove the arbitrary expectation in libsas that all SCSI commands are 16 bytes or less. Instead do all copies via cmd->cmd_len (and use a pointer to this in the libsas task instead of a copy). Note that this still doesn't enable > 16 byte CDB support in the underlying drivers because their internal format has to be fixed and the wire format of > 16 byte CDBs according to the SAS spec is different. the libsas drivers (isci, aic94xx, mvsas and pm8xxx are all updated for this change. Cc: Lukasz Dorau <lukasz.dorau@intel.com> Cc: Maciej Patelczyk <maciej.patelczyk@intel.com> Cc: Dave Jiang <dave.jiang@intel.com> Cc: Jack Wang <xjtuwjp@gmail.com> Cc: Lindar Liu <lindar_liu@usish.com> Cc: Xiangliang Yu <yuxiangl@marvell.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com> |
||
---|---|---|
.. | ||
Makefile | ||
host.c | ||
host.h | ||
init.c | ||
isci.h | ||
phy.c | ||
phy.h | ||
port.c | ||
port.h | ||
port_config.c | ||
probe_roms.c | ||
probe_roms.h | ||
registers.h | ||
remote_device.c | ||
remote_device.h | ||
remote_node_context.c | ||
remote_node_context.h | ||
remote_node_table.c | ||
remote_node_table.h | ||
request.c | ||
request.h | ||
sas.h | ||
scu_completion_codes.h | ||
scu_event_codes.h | ||
scu_remote_node_context.h | ||
scu_task_context.h | ||
task.c | ||
task.h | ||
unsolicited_frame_control.c | ||
unsolicited_frame_control.h |