|
Daniel Wagner |
264716 |
From: James Smart <jsmart2021@gmail.com>
|
|
Daniel Wagner |
264716 |
Date: Fri, 3 Dec 2021 16:26:43 -0800
|
|
Daniel Wagner |
264716 |
Subject: scsi: lpfc: Add additional debugfs support for CMF
|
|
Daniel Wagner |
264716 |
Patch-mainline: Queued in subsystem maintainer repository
|
|
Daniel Wagner |
264716 |
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git
|
|
Daniel Wagner |
264716 |
Git-commit: 6014a2468f0e49194f612b1f09f99eacee0a409a
|
|
Daniel Wagner |
264716 |
References: bsc1192145
|
|
Daniel Wagner |
264716 |
|
|
Daniel Wagner |
264716 |
Dump raw CMF parameter information in debugfs cgn_buffer.
|
|
Daniel Wagner |
264716 |
|
|
Daniel Wagner |
264716 |
Link: https://lore.kernel.org/r/20211204002644.116455-9-jsmart2021@gmail.com
|
|
Daniel Wagner |
264716 |
Co-developed-by: Justin Tee <justin.tee@broadcom.com>
|
|
Daniel Wagner |
264716 |
Signed-off-by: Justin Tee <justin.tee@broadcom.com>
|
|
Daniel Wagner |
264716 |
Signed-off-by: James Smart <jsmart2021@gmail.com>
|
|
Daniel Wagner |
264716 |
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
|
|
Daniel Wagner |
264716 |
Acked-by: Daniel Wagner <dwagner@suse.de>
|
|
Daniel Wagner |
264716 |
---
|
|
Daniel Wagner |
264716 |
drivers/scsi/lpfc/lpfc_debugfs.c | 13 ++++++++++++-
|
|
Daniel Wagner |
264716 |
1 file changed, 12 insertions(+), 1 deletion(-)
|
|
Daniel Wagner |
264716 |
|
|
Daniel Wagner |
264716 |
--- a/drivers/scsi/lpfc/lpfc_debugfs.c
|
|
Daniel Wagner |
264716 |
+++ b/drivers/scsi/lpfc/lpfc_debugfs.c
|
|
Daniel Wagner |
264716 |
@@ -5491,7 +5491,7 @@ lpfc_cgn_buffer_read(struct file *file,
|
|
Daniel Wagner |
264716 |
if (len > (LPFC_CGN_BUF_SIZE - LPFC_DEBUG_OUT_LINE_SZ)) {
|
|
Daniel Wagner |
264716 |
len += scnprintf(buffer + len, LPFC_CGN_BUF_SIZE - len,
|
|
Daniel Wagner |
264716 |
"Truncated . . .\n");
|
|
Daniel Wagner |
264716 |
- break;
|
|
Daniel Wagner |
264716 |
+ goto out;
|
|
Daniel Wagner |
264716 |
}
|
|
Daniel Wagner |
264716 |
len += scnprintf(buffer + len, LPFC_CGN_BUF_SIZE - len,
|
|
Daniel Wagner |
264716 |
"%03x: %08x %08x %08x %08x "
|
|
Daniel Wagner |
264716 |
@@ -5502,6 +5502,17 @@ lpfc_cgn_buffer_read(struct file *file,
|
|
Daniel Wagner |
264716 |
cnt += 32;
|
|
Daniel Wagner |
264716 |
ptr += 8;
|
|
Daniel Wagner |
264716 |
}
|
|
Daniel Wagner |
264716 |
+ if (len > (LPFC_CGN_BUF_SIZE - LPFC_DEBUG_OUT_LINE_SZ)) {
|
|
Daniel Wagner |
264716 |
+ len += scnprintf(buffer + len, LPFC_CGN_BUF_SIZE - len,
|
|
Daniel Wagner |
264716 |
+ "Truncated . . .\n");
|
|
Daniel Wagner |
264716 |
+ goto out;
|
|
Daniel Wagner |
264716 |
+ }
|
|
Daniel Wagner |
264716 |
+ len += scnprintf(buffer + len, LPFC_CGN_BUF_SIZE - len,
|
|
Daniel Wagner |
264716 |
+ "Parameter Data\n");
|
|
Daniel Wagner |
264716 |
+ ptr = (uint32_t *)&phba->cgn_p;
|
|
Daniel Wagner |
264716 |
+ len += scnprintf(buffer + len, LPFC_CGN_BUF_SIZE - len,
|
|
Daniel Wagner |
264716 |
+ "%08x %08x %08x %08x\n",
|
|
Daniel Wagner |
264716 |
+ *ptr, *(ptr + 1), *(ptr + 2), *(ptr + 3));
|
|
Daniel Wagner |
264716 |
out:
|
|
Daniel Wagner |
264716 |
return simple_read_from_buffer(buf, nbytes, ppos, buffer, len);
|
|
Daniel Wagner |
264716 |
}
|