Patch "zfcp: retain trace level for SCSI and HBA FSF response records" has been added to the 4.4-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
zfcp: retain trace level for SCSI and HBA FSF response records
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
zfcp-retain-trace-level-for-scsi-and-hba-fsf-response-records.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
35f040df97fa0e94c7851c054ec71533c88b4b81Mon Sep 17 00:00:00 2001
From: Steffen Maier <[email protected]>
Date: Wed, 10 Aug 2016 18:30:47 +0200
Subject: zfcp: retain trace level for SCSI and HBA FSF response records
From: Steffen Maier <[email protected]>
commit 35f040df97fa0e94c7851c054ec71533c88b4b81 upstream.
While retaining the actual filtering according to trace level, the following commits started to write such filtered records with a hardcoded record level of 1 instead of the actual record level:
commit 250a1352b95e1db3216e5c5d4f4365bea5122f4a
("[SCSI] zfcp: Redesign of the debug tracing for SCSI records.") commit a54ca0f62f953898b05549391ac2a8a4dad6482b
("[SCSI] zfcp: Redesign of the debug tracing for HBA records.")
Now we can distinguish written records again for offline level filtering.
--- drivers/s390/scsi/zfcp_dbf.c | 11 ++++++----- drivers/s390/scsi/zfcp_dbf.h | 4 ++-- drivers/s390/scsi/zfcp_ext.h | 7 ++++--- 3 files changed, 12 insertions(+), 10 deletions(-)
drivers/s390/scsi/zfcp_dbf.c +6 -5
@@ -3,7 +3,7 @@* * Debug traces for zfcp. * -* Copyright IBM Corp. 2002, 2013 +* Copyright IBM Corp. 2002, 2015 */ #define KMSG_COMPONENT "zfcp"
@@ -65,7 +65,7 @@ void zfcp_dbf_pl_write(struct zfcp_dbf ** @tag: tag indicating which kind of unsolicited status has been received * @req: request for which a response was received */ -void zfcp_dbf_hba_fsf_res (char *tag,struct zfcp_fsf_req *req) +void zfcp_dbf_hba_fsf_res (char *tag,int level,struct zfcp_fsf_req *req) {struct zfcp_dbf *dbf = req->adapter->dbf;struct fsf_qtcb_prefix *q_pref = &req->qtcb->prefix;
@@ -97,7 +97,7 @@ void zfcp_dbf_hba_fsf_res(char *tag, str rec->pl_len, "fsf_res", req->req_id); } -debug_event (dbf->hba,1 , rec,sizeof (*rec)); +debug_event (dbf->hba, level, rec,sizeof (*rec));spin_unlock_irqrestore (&dbf->hba_lock, flags); }
@@ -399,7 +399,8 @@ void zfcp_dbf_san_in_els(char *tag, stru* @sc: pointer to struct scsi_cmnd * @fsf: pointer to struct zfcp_fsf_req */ -void zfcp_dbf_scsi (char *tag,struct scsi_cmnd *sc,struct zfcp_fsf_req *fsf) +void zfcp_dbf_scsi (char *tag,int level,struct scsi_cmnd *sc, +struct zfcp_fsf_req *fsf) {struct zfcp_adapter *adapter = (struct zfcp_adapter *) sc->device->host->hostdata[0 ];
@@ -442,7 +443,7 @@ void zfcp_dbf_scsi(char *tag, struct scs } } -debug_event (dbf->scsi,1 , rec,sizeof (*rec)); +debug_event (dbf->scsi, level, rec,sizeof (*rec));spin_unlock_irqrestore (&dbf->scsi_lock, flags); }
drivers/s390/scsi/zfcp_dbf.h +2 -2
@@ -284,7 +284,7 @@ static inlinevoid zfcp_dbf_hba_fsf_resp (char *tag,int level,struct zfcp_fsf_req *req) {if (debug_level_enabled (req->adapter->dbf->hba, level)) -zfcp_dbf_hba_fsf_res (tag, req); +zfcp_dbf_hba_fsf_res (tag, level, req); }/**
@@ -323,7 +323,7 @@ void _zfcp_dbf_scsi(char *tag, int level scmd->device->host->hostdata[0 ];if (debug_level_enabled (adapter->dbf->scsi, level)) -zfcp_dbf_scsi (tag, scmd, req); +zfcp_dbf_scsi (tag, level, scmd, req); }/**
drivers/s390/scsi/zfcp_ext.h +4 -3
@@ -3,7 +3,7 @@* * External function declarations. * -* Copyright IBM Corp. 2002, 2010 +* Copyright IBM Corp. 2002, 2015 */ #ifndef ZFCP_EXT_H
@@ -36,7 +36,7 @@ extern void zfcp_dbf_rec_trig(char *, st struct zfcp_port *, struct scsi_device *, u8, u8);extern void zfcp_dbf_rec_run (char *,struct zfcp_erp_action *);extern void zfcp_dbf_hba_fsf_uss (char *,struct zfcp_fsf_req *); -extern void zfcp_dbf_hba_fsf_res (char *,struct zfcp_fsf_req *); +extern void zfcp_dbf_hba_fsf_res (char *,int ,struct zfcp_fsf_req *);extern void zfcp_dbf_hba_bit_err (char *,struct zfcp_fsf_req *);extern void zfcp_dbf_hba_berr (struct zfcp_dbf *,struct zfcp_fsf_req *);extern void zfcp_dbf_hba_def_err (struct zfcp_adapter *,u64 ,u16 ,void **);
@@ -44,7 +44,8 @@ extern void zfcp_dbf_hba_basic(char *, sextern void zfcp_dbf_san_req (char *,struct zfcp_fsf_req *,u32 );extern void zfcp_dbf_san_res (char *,struct zfcp_fsf_req *);extern void zfcp_dbf_san_in_els (char *,struct zfcp_fsf_req *); -extern void zfcp_dbf_scsi (char *,struct scsi_cmnd *,struct zfcp_fsf_req *); +extern void zfcp_dbf_scsi (char *,int ,struct scsi_cmnd *, +struct zfcp_fsf_req *);/* zfcp_erp.c */ extern void zfcp_erp_set_adapter_status (struct zfcp_adapter *,u32 );
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/zfcp-fix-els-gs-request-response-length-for-hardware-data-router.patch queue-4.4/zfcp-trace-on-request-for-open-and-close-of-wka-port.patch queue-4.4/zfcp-close-window-with-unblocked-rport-during-rport-gone.patch queue-4.4/zfcp-retain-trace-level-for-scsi-and-hba-fsf-response-records.patch queue-4.4/zfcp-restore-dont-use-0-to-indicate-invalid-lun-in-rec-trace.patch queue-4.4/zfcp-fix-fc_host-port_type-with-npiv.patch queue-4.4/zfcp-fix-d_id-field-with-actual-value-on-tracing-san-responses.patch queue-4.4/zfcp-fix-payload-trace-length-for-san-request-response.patch queue-4.4/scsi-zfcp-spin_lock_irqsave-is-not-nestable.patch queue-4.4/zfcp-restore-tracing-of-handle-for-port-and-lun-with-hba-records.patch queue-4.4/zfcp-trace-full-payload-of-all-san-records-req-resp-iels.patch