Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
Linus Torvalds [Sat, 23 Jul 2011 18:13:11 +0000 (11:13 -0700)]
* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (77 commits)
  [SCSI] fix crash in scsi_dispatch_cmd()
  [SCSI] sr: check_events() ignore GET_EVENT when TUR says otherwise
  [SCSI] bnx2i: Fixed kernel panic due to illegal usage of sc->request->cpu
  [SCSI] bfa: Update the driver version to 3.0.2.1
  [SCSI] bfa: Driver and BSG enhancements.
  [SCSI] bfa: Added support to query PHY.
  [SCSI] bfa: Added HBA diagnostics support.
  [SCSI] bfa: Added support for flash configuration
  [SCSI] bfa: Added support to obtain SFP info.
  [SCSI] bfa: Added support for CEE info and stats query.
  [SCSI] bfa: Extend BSG interface.
  [SCSI] bfa: FCS bug fixes.
  [SCSI] bfa: DMA memory allocation enhancement.
  [SCSI] bfa: Brocade-1860 Fabric Adapter vHBA support.
  [SCSI] bfa: Brocade-1860 Fabric Adapter PLL init fixes.
  [SCSI] bfa: Added Fabric Assigned Address(FAA) support
  [SCSI] bfa: IOC bug fixes.
  [SCSI] bfa: Enable ASIC block configuration and query.
  [SCSI] bnx2i: Updated copyright and bump version
  [SCSI] bnx2i: Modified to skip CNIC registration if iSCSI is not supported
  ...

Fix up some trivial conflicts in:
 - drivers/scsi/bnx2fc/{bnx2fc.h,bnx2fc_fcoe.c}:
Crazy broadcom version number conflicts
 - drivers/target/tcm_fc/tfc_cmd.c
Just trivial cleanups done on adjacent lines

13 files changed:
1  2 
MAINTAINERS
drivers/scsi/bnx2fc/bnx2fc.h
drivers/scsi/bnx2fc/bnx2fc_fcoe.c
drivers/scsi/bnx2fc/bnx2fc_hwi.c
drivers/scsi/bnx2fc/bnx2fc_io.c
drivers/scsi/bnx2i/57xx_iscsi_constants.h
drivers/scsi/bnx2i/57xx_iscsi_hsi.h
drivers/scsi/bnx2i/bnx2i.h
drivers/scsi/bnx2i/bnx2i_hwi.c
drivers/scsi/bnx2i/bnx2i_init.c
drivers/scsi/cxgbi/cxgb3i/cxgb3i.c
drivers/scsi/libfc/fc_rport.c
drivers/target/tcm_fc/tfc_cmd.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -255,17 -256,19 +255,18 @@@ int ft_write_pending(struct se_cmd *se_
                    (fh->fh_r_ctl == FC_RCTL_DD_DATA_DESC)) {
                        if (se_cmd->se_cmd_flags & SCF_SCSI_DATA_SG_IO_CDB) {
                                /*
 -                               * Map se_mem list to scatterlist, so that
 -                               * DDP can be setup. DDP setup function require
 -                               * scatterlist. se_mem_list is internal to
 -                               * TCM/LIO target
 +                               * cmd may have been broken up into multiple
 +                               * tasks. Link their sgs together so we can
 +                               * operate on them all at once.
                                 */
                                transport_do_task_sg_chain(se_cmd);
 -                              cmd->sg = T_TASK(se_cmd)->t_tasks_sg_chained;
 +                              cmd->sg = se_cmd->t_tasks_sg_chained;
                                cmd->sg_cnt =
 -                                      T_TASK(se_cmd)->t_tasks_sg_chained_no;
 +                                      se_cmd->t_tasks_sg_chained_no;
                        }
-                       if (cmd->sg && lport->tt.ddp_setup(lport, ep->xid,
-                                                   cmd->sg, cmd->sg_cnt))
+                       if (cmd->sg && lport->tt.ddp_target(lport, ep->xid,
+                                                           cmd->sg,
+                                                           cmd->sg_cnt))
                                cmd->was_ddp_setup = 1;
                }
        }
@@@ -413,16 -433,16 +425,16 @@@ static void ft_send_tm(struct ft_cmd *c
                 * FCP4r01 indicates having a combination of
                 * tm_flags set is invalid.
                 */
 -              FT_TM_DBG("invalid FCP tm_flags %x\n", fcp->fc_tm_flags);
 +              pr_debug("invalid FCP tm_flags %x\n", fcp->fc_tm_flags);
-               ft_send_resp_code(cmd, FCP_CMND_FIELDS_INVALID);
+               ft_send_resp_code_and_free(cmd, FCP_CMND_FIELDS_INVALID);
                return;
        }
  
 -      FT_TM_DBG("alloc tm cmd fn %d\n", tm_func);
 +      pr_debug("alloc tm cmd fn %d\n", tm_func);
        tmr = core_tmr_alloc_req(&cmd->se_cmd, cmd, tm_func);
        if (!tmr) {
 -              FT_TM_DBG("alloc failed\n");
 +              pr_debug("alloc failed\n");
-               ft_send_resp_code(cmd, FCP_TMF_FAILED);
+               ft_send_resp_code_and_free(cmd, FCP_TMF_FAILED);
                return;
        }
        cmd->se_cmd.se_tmr_req = tmr;
@@@ -661,7 -681,8 +673,7 @@@ static void ft_send_cmd(struct ft_cmd *
        return;
  
  err:
-       ft_send_resp_code(cmd, FCP_CMND_FIELDS_INVALID);
+       ft_send_resp_code_and_free(cmd, FCP_CMND_FIELDS_INVALID);
 -      return;
  }
  
  /*