jme: Convert driver to CTLFLAG_MPSAFE
Replace CTLFLAG_NEEDGIANT with CTLFLAG_MPSAFE for all interrupt coalescing sysctls. The driver uses jme_mtx mutex for proper synchronization and does not require Giant lock. Sysctls converted: - dev.jme.X.tx_coal_to (TX coalescing timeout) - dev.jme.X.tx_coal_pkt (TX coalescing packet count) - dev.jme.X.rx_coal_to (RX coalescing timeout) - dev.jme.X.rx_coal_pkt (RX coalescing packet count) - dev.jme.X.process_limit (max RX events to process) Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54618
This commit is contained in:
committed by
Mark Johnston
parent
0b908de1d0
commit
c2a55efd74
@@ -971,23 +971,23 @@ jme_sysctl_node(struct jme_softc *sc)
|
||||
child = SYSCTL_CHILDREN(device_get_sysctl_tree(sc->jme_dev));
|
||||
|
||||
SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "tx_coal_to",
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, &sc->jme_tx_coal_to,
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &sc->jme_tx_coal_to,
|
||||
0, sysctl_hw_jme_tx_coal_to, "I", "jme tx coalescing timeout");
|
||||
|
||||
SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "tx_coal_pkt",
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, &sc->jme_tx_coal_pkt,
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &sc->jme_tx_coal_pkt,
|
||||
0, sysctl_hw_jme_tx_coal_pkt, "I", "jme tx coalescing packet");
|
||||
|
||||
SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "rx_coal_to",
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, &sc->jme_rx_coal_to,
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &sc->jme_rx_coal_to,
|
||||
0, sysctl_hw_jme_rx_coal_to, "I", "jme rx coalescing timeout");
|
||||
|
||||
SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "rx_coal_pkt",
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, &sc->jme_rx_coal_pkt,
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &sc->jme_rx_coal_pkt,
|
||||
0, sysctl_hw_jme_rx_coal_pkt, "I", "jme rx coalescing packet");
|
||||
|
||||
SYSCTL_ADD_PROC(ctx, child, OID_AUTO, "process_limit",
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT,
|
||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE,
|
||||
&sc->jme_process_limit, 0, sysctl_hw_jme_proc_limit, "I",
|
||||
"max number of Rx events to process");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user