From f9fd69c9aa3b21acec6e9e3fcdbc1b7c04a1f905 Mon Sep 17 00:00:00 2001 From: Vladislav Bolkhovitin Date: Fri, 17 Jun 2011 00:32:48 +0000 Subject: [PATCH] Merged revisions 3577-3578 via svnmerge from https://vlnb@scst.svn.sourceforge.net/svnroot/scst/trunk ........ r3577 | vlnb | 2011-06-15 16:12:56 -0400 (Wed, 15 Jun 2011) | 5 lines Merge on the mainline qla2xxx git revision 0f19bc681ed0849a2b95778460a0a8132e3700e2: Fix MSIX lockdep complain. ........ r3578 | vlnb | 2011-06-15 16:15:56 -0400 (Wed, 15 Jun 2011) | 3 lines Logging improvements and cleanups ........ git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3580 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- qla2x00t/qla2x00-target/README | 3 ++- qla2x00t/qla_isr.c | 10 ++++++---- scst/src/scst_targ.c | 8 ++++---- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/qla2x00t/qla2x00-target/README b/qla2x00t/qla2x00-target/README index 9063754f0..17968edb6 100644 --- a/qla2x00t/qla2x00-target/README +++ b/qla2x00t/qla2x00-target/README @@ -24,7 +24,8 @@ following 2.6.26.x commits have been applied to it (upstream ID): 5f3a9a207f1fccde476dd31b4c63ead2967d934f, 85821c906cf3563a00a3d98fa380a2581a7a5ff1, 3c01b4f9fbb43fc911acd33ea7a14ea7a4f9866b, -8eca3f39c4b11320787f7b216f63214aee8415a9. +8eca3f39c4b11320787f7b216f63214aee8415a9, +0f19bc681ed0849a2b95778460a0a8132e3700e2. See also "ToDo" file for list of known issues and unimplemented features. diff --git a/qla2x00t/qla_isr.c b/qla2x00t/qla_isr.c index cdec96451..d1d9e7a2d 100644 --- a/qla2x00t/qla_isr.c +++ b/qla2x00t/qla_isr.c @@ -1839,16 +1839,17 @@ qla24xx_msix_rsp_q(int irq, void *dev_id) { scsi_qla_host_t *ha; struct device_reg_24xx __iomem *reg; + unsigned long flags; ha = dev_id; reg = &ha->iobase->isp24; - spin_lock_irq(&ha->hardware_lock); + spin_lock_irqsave(&ha->hardware_lock, flags); qla24xx_process_response_queue(ha); WRT_REG_DWORD(®->hccr, HCCRX_CLR_RISC_INT); - spin_unlock_irq(&ha->hardware_lock); + spin_unlock_irqrestore(&ha->hardware_lock, flags); return IRQ_HANDLED; } @@ -1862,12 +1863,13 @@ qla24xx_msix_default(int irq, void *dev_id) uint32_t stat; uint32_t hccr; uint16_t mb[4]; + unsigned long flags; ha = dev_id; reg = &ha->iobase->isp24; status = 0; - spin_lock_irq(&ha->hardware_lock); + spin_lock_irqsave(&ha->hardware_lock, flags); do { stat = RD_REG_DWORD(®->host_status); if (stat & HSRX_RISC_PAUSED) { @@ -1929,7 +1931,7 @@ qla24xx_msix_default(int irq, void *dev_id) } WRT_REG_DWORD(®->hccr, HCCRX_CLR_RISC_INT); } while (0); - spin_unlock_irq(&ha->hardware_lock); + spin_unlock_irqrestore(&ha->hardware_lock, flags); if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) && (status & MBX_INTERRUPT) && ha->flags.mbox_int) { diff --git a/scst/src/scst_targ.c b/scst/src/scst_targ.c index f5c37c5f4..d53960493 100644 --- a/scst/src/scst_targ.c +++ b/scst/src/scst_targ.c @@ -346,9 +346,9 @@ void scst_cmd_init_done(struct scst_cmd *cmd, TRACE_DBG("Preferred context: %d (cmd %p)", pref_context, cmd); TRACE(TRACE_SCSI, "tag=%llu, lun=%lld, CDB len=%d, queue_type=%x " - "(cmd %p)", (long long unsigned int)cmd->tag, + "(cmd %p, sess %p)", (long long unsigned int)cmd->tag, (long long unsigned int)cmd->lun, cmd->cdb_len, - cmd->queue_type, cmd); + cmd->queue_type, cmd, sess); PRINT_BUFF_FLAG(TRACE_SCSI|TRACE_RCV_BOT, "Receiving CDB", cmd->cdb, cmd->cdb_len); @@ -5678,10 +5678,10 @@ static void scst_mgmt_cmd_send_done(struct scst_mgmt_cmd *mcmd) if (mcmd->fn < SCST_UNREG_SESS_TM) TRACE(TRACE_MGMT, "TM fn %d finished, " - "status %x", mcmd->fn, mcmd->status); + "status %d", mcmd->fn, mcmd->status); else TRACE_MGMT_DBG("TM fn %d finished, " - "status %x", mcmd->fn, mcmd->status); + "status %d", mcmd->fn, mcmd->status); if (mcmd->fn == SCST_PR_ABORT_ALL) { mcmd->origin_pr_cmd->scst_cmd_done(mcmd->origin_pr_cmd,