summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordavidcs <davidcs@FreeBSD.org>2017-09-26 21:02:19 +0000
committerdavidcs <davidcs@FreeBSD.org>2017-09-26 21:02:19 +0000
commit0eab77362b3014f9d82da07c8b7f63a1574aceff (patch)
treea3517e4ab2f122a5d711113e57d1582037646050
parent12cd91cf4c6b96a24427c0de5374916f2808d263 (diff)
downloadFreeBSD-src-0eab77362b3014f9d82da07c8b7f63a1574aceff.zip
FreeBSD-src-0eab77362b3014f9d82da07c8b7f63a1574aceff.tar.gz
MFC r323782
Add sysctl "enable_minidump" to turn on/off automatic minidump retrieval
-rw-r--r--sys/dev/qlxgbe/ql_def.h1
-rw-r--r--sys/dev/qlxgbe/ql_os.c10
2 files changed, 10 insertions, 1 deletions
diff --git a/sys/dev/qlxgbe/ql_def.h b/sys/dev/qlxgbe/ql_def.h
index beb3f4e..d768dbd 100644
--- a/sys/dev/qlxgbe/ql_def.h
+++ b/sys/dev/qlxgbe/ql_def.h
@@ -239,6 +239,7 @@ struct qla_host {
volatile const char *qla_lock;
volatile const char *qla_unlock;
uint32_t dbg_level;
+ uint32_t enable_minidump;
uint8_t fw_ver_str[32];
diff --git a/sys/dev/qlxgbe/ql_os.c b/sys/dev/qlxgbe/ql_os.c
index f504de1..46e6715 100644
--- a/sys/dev/qlxgbe/ql_os.c
+++ b/sys/dev/qlxgbe/ql_os.c
@@ -185,6 +185,13 @@ qla_add_sysctls(qla_host_t *ha)
OID_AUTO, "debug", CTLFLAG_RW,
&ha->dbg_level, ha->dbg_level, "Debug Level");
+ ha->enable_minidump = 1;
+ SYSCTL_ADD_UINT(device_get_sysctl_ctx(dev),
+ SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
+ OID_AUTO, "enable_minidump", CTLFLAG_RW,
+ &ha->enable_minidump, ha->enable_minidump,
+ "Minidump retrival is enabled only when this is set");
+
ha->std_replenish = QL_STD_REPLENISH_THRES;
SYSCTL_ADD_UINT(device_get_sysctl_ctx(dev),
SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
@@ -2025,7 +2032,8 @@ device_printf(ha->pci_dev, "%s: enter\n", __func__);
ha->msg_from_peer = 0;
- ql_minidump(ha);
+ if (ha->enable_minidump)
+ ql_minidump(ha);
(void) ql_init_hw(ha);
OpenPOWER on IntegriCloud