From: Viswas G <Viswas.G@microchip.com>
To: <linux-scsi@vger.kernel.org>
Cc: <Vasanthalakshmi.Tharmarajan@microchip.com>,
<Viswas.G@microchip.com>, <Ruksar.devadi@microchip.com>,
<vishakhavc@google.com>, <radha@google.com>,
<jinpu.wang@cloud.ionos.com>,
Ashokkumar N <Ashokkumar.N@microchip.com>,
"John Garry" <john.garry@huawei.com>
Subject: [PATCH v2 4/7] pm80xx: Add sysfs attribute to track iop1 count
Date: Wed, 24 Mar 2021 22:33:54 +0530 [thread overview]
Message-ID: <20210324170357.9765-5-Viswas.G@microchip.com> (raw)
In-Reply-To: <20210324170357.9765-1-Viswas.G@microchip.com>
From: Vishakha Channapattan <vishakhavc@google.com>
A new sysfs variable 'ctl_iop1_count' is being introduced that tells if
the controller is alive by indicating controller ticks. If on subsequent
run we see the ticks changing that indicates that controller is not
dead.
Tested: Using 'ctl_iop1_count' sysfs variable we can see ticks
incrementing
mvae14:~# cat /sys/class/scsi_host/host*/ctl_iop1_count
0x00000069
0x0000006b
0x0000006d
0x00000072
Signed-off-by: Vishakha Channapattan <vishakhavc@google.com>
Signed-off-by: Viswas G <Viswas.G@microchip.com>
Signed-off-by: Ruksar Devadi <Ruksar.devadi@microchip.com>
Signed-off-by: Ashokkumar N <Ashokkumar.N@microchip.com>
Signed-off-by: Radha Ramachandran <radha@google.com>
---
drivers/scsi/pm8001/pm8001_ctl.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/drivers/scsi/pm8001/pm8001_ctl.c b/drivers/scsi/pm8001/pm8001_ctl.c
index b8170da49112..78d5f573eac8 100644
--- a/drivers/scsi/pm8001/pm8001_ctl.c
+++ b/drivers/scsi/pm8001/pm8001_ctl.c
@@ -964,6 +964,29 @@ static ssize_t ctl_iop0_count_show(struct device *cdev,
}
static DEVICE_ATTR_RO(ctl_iop0_count);
+/**
+ * ctl_iop1_count_show - controller iop1 count check
+ * @cdev: pointer to embedded class device
+ * @buf: the buffer returned
+ *
+ * A sysfs 'read-only' shost attribute.
+ */
+
+static ssize_t ctl_iop1_count_show(struct device *cdev,
+ struct device_attribute *attr, char *buf)
+{
+ struct Scsi_Host *shost = class_to_shost(cdev);
+ struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost);
+ struct pm8001_hba_info *pm8001_ha = sha->lldd_ha;
+ unsigned int iop1cnt;
+ int c;
+
+ iop1cnt = pm8001_mr32(pm8001_ha->general_stat_tbl_addr, 20);
+ c = sysfs_emit(buf, "0x%08x\n", iop1cnt);
+ return c;
+}
+static DEVICE_ATTR_RO(ctl_iop1_count);
+
struct device_attribute *pm8001_host_attrs[] = {
&dev_attr_interface_rev,
&dev_attr_controller_fatal_error,
@@ -990,6 +1013,7 @@ struct device_attribute *pm8001_host_attrs[] = {
&dev_attr_ctl_mpi_state,
&dev_attr_ctl_raae_count,
&dev_attr_ctl_iop0_count,
+ &dev_attr_ctl_iop1_count,
NULL,
};
--
2.16.3
next prev parent reply other threads:[~2021-03-24 16:55 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-24 17:03 [PATCH v2 0/7] pm80xx updates Viswas G
2021-03-24 17:03 ` [PATCH v2 1/7] pm80xx: Add sysfs attribute to check mpi state Viswas G
2021-03-24 20:04 ` kernel test robot
2021-03-24 20:04 ` kernel test robot
2021-03-24 20:04 ` [RFC PATCH] pm80xx: mpiStateText[] can be static kernel test robot
2021-03-24 20:04 ` kernel test robot
2021-03-25 4:55 ` [PATCH v2 1/7] pm80xx: Add sysfs attribute to check mpi state Jinpu Wang
2021-03-25 7:10 ` [kbuild] " Dan Carpenter
2021-03-25 7:10 ` Dan Carpenter
2021-03-25 7:10 ` Dan Carpenter
2021-03-24 17:03 ` [PATCH v2 2/7] pm80xx: Add sysfs attribute to track RAAE count Viswas G
2021-03-25 4:49 ` Jinpu Wang
2021-03-24 17:03 ` [PATCH v2 3/7] pm80xx: Add sysfs attribute to track iop0 count Viswas G
2021-03-25 4:48 ` Jinpu Wang
2021-03-24 17:03 ` Viswas G [this message]
2021-03-25 4:49 ` [PATCH v2 4/7] pm80xx: Add sysfs attribute to track iop1 count Jinpu Wang
2021-03-24 17:03 ` [PATCH v2 5/7] pm80xx: Completing pending IO after fatal error Viswas G
2021-03-24 17:03 ` [PATCH v2 6/7] pm80xx: Reset PI and CI memory during re-initialize Viswas G
2021-03-24 17:03 ` [PATCH v2 7/7] pm80xx: remove global lock from outbound queue processing Viswas G
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210324170357.9765-5-Viswas.G@microchip.com \
--to=viswas.g@microchip.com \
--cc=Ashokkumar.N@microchip.com \
--cc=Ruksar.devadi@microchip.com \
--cc=Vasanthalakshmi.Tharmarajan@microchip.com \
--cc=jinpu.wang@cloud.ionos.com \
--cc=john.garry@huawei.com \
--cc=linux-scsi@vger.kernel.org \
--cc=radha@google.com \
--cc=vishakhavc@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.