summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordavidcs <davidcs@FreeBSD.org>2017-09-26 21:16:10 +0000
committerdavidcs <davidcs@FreeBSD.org>2017-09-26 21:16:10 +0000
commit961709dc6d81de5d31d7d27b1a291e13cce47d3a (patch)
treef7cf0f93235c620378dd051a61f8aeb5e87cb045
parent9d93b90f313014c7b9fee4a58c1d97cdeb0083e5 (diff)
downloadFreeBSD-src-961709dc6d81de5d31d7d27b1a291e13cce47d3a.zip
FreeBSD-src-961709dc6d81de5d31d7d27b1a291e13cce47d3a.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 f60e716..20ee66f 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)),
@@ -2030,7 +2037,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