]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commitdiff
scsi: zfcp: trace channel log even for FCP command responses
authorSteffen Maier <maier@linux.ibm.com>
Fri, 25 Oct 2019 16:12:53 +0000 (18:12 +0200)
committerMarcelo Henrique Cerri <marcelo.cerri@canonical.com>
Fri, 17 Jan 2020 17:23:37 +0000 (14:23 -0300)
BugLink: https://bugs.launchpad.net/bugs/1856869
commit 100843f176109af94600e500da0428e21030ca7f upstream.

While v2.6.26 commit b75db73159cc ("[SCSI] zfcp: Add qtcb dump to hba debug
trace") is right that we don't want to flood the (payload) trace ring
buffer, we don't trace successful FCP command responses by default.  So we
can include the channel log for problem determination with failed responses
of any FSF request type.

Fixes: b75db73159cc ("[SCSI] zfcp: Add qtcb dump to hba debug trace")
Fixes: a54ca0f62f95 ("[SCSI] zfcp: Redesign of the debug tracing for HBA records.")
Cc: <stable@vger.kernel.org> #2.6.38+
Link: https://lore.kernel.org/r/e37597b5c4ae123aaa85fd86c23a9f71e994e4a9.1572018132.git.bblock@linux.ibm.com
Reviewed-by: Benjamin Block <bblock@linux.ibm.com>
Signed-off-by: Steffen Maier <maier@linux.ibm.com>
Signed-off-by: Benjamin Block <bblock@linux.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Connor Kuehl <connor.kuehl@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
drivers/s390/scsi/zfcp_dbf.c

index dccdb41bed8c4d5cc6f4886adb76e0006f65e4cd..1234294700c4e693243f4d93c63f055199cf8198 100644 (file)
@@ -95,11 +95,9 @@ void zfcp_dbf_hba_fsf_res(char *tag, int level, struct zfcp_fsf_req *req)
        memcpy(rec->u.res.fsf_status_qual, &q_head->fsf_status_qual,
               FSF_STATUS_QUALIFIER_SIZE);
 
-       if (q_head->fsf_command != FSF_QTCB_FCP_CMND) {
-               rec->pl_len = q_head->log_length;
-               zfcp_dbf_pl_write(dbf, (char *)q_pref + q_head->log_start,
-                                 rec->pl_len, "fsf_res", req->req_id);
-       }
+       rec->pl_len = q_head->log_length;
+       zfcp_dbf_pl_write(dbf, (char *)q_pref + q_head->log_start,
+                         rec->pl_len, "fsf_res", req->req_id);
 
        debug_event(dbf->hba, level, rec, sizeof(*rec));
        spin_unlock_irqrestore(&dbf->hba_lock, flags);