diff options
author | np <np@FreeBSD.org> | 2013-08-30 02:13:36 +0000 |
---|---|---|
committer | np <np@FreeBSD.org> | 2013-08-30 02:13:36 +0000 |
commit | 52fb8d39b96999553e323b71edca7c86d9cb64bd (patch) | |
tree | 886d888bf52fbccc39dadafcbf30ea54106f0f77 | |
parent | 70b405bb1a0f0eb79efc5bbe4242c98baa4e1cbc (diff) | |
download | FreeBSD-src-52fb8d39b96999553e323b71edca7c86d9cb64bd.zip FreeBSD-src-52fb8d39b96999553e323b71edca7c86d9cb64bd.tar.gz |
Fix the sysctl that displays whether buffer packing is enabled
or not.
-rw-r--r-- | sys/dev/cxgbe/t4_sge.c | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/sys/dev/cxgbe/t4_sge.c b/sys/dev/cxgbe/t4_sge.c index b46631e..776b6c5 100644 --- a/sys/dev/cxgbe/t4_sge.c +++ b/sys/dev/cxgbe/t4_sge.c @@ -604,6 +604,17 @@ t4_create_dma_tag(struct adapter *sc) return (rc); } +static inline int +enable_buffer_packing(struct adapter *sc) +{ + + if (sc->flags & BUF_PACKING_OK && + ((is_t5(sc) && buffer_packing) || /* 1 or -1 both ok for T5 */ + (is_t4(sc) && buffer_packing == 1))) + return (1); + return (0); +} + void t4_sge_sysctls(struct adapter *sc, struct sysctl_ctx_list *ctx, struct sysctl_oid_list *children) @@ -622,7 +633,7 @@ t4_sge_sysctls(struct adapter *sc, struct sysctl_ctx_list *ctx, NULL, cong_drop, "congestion drop setting"); SYSCTL_ADD_INT(ctx, children, OID_AUTO, "buffer_packing", CTLFLAG_RD, - NULL, sc->flags & BUF_PACKING_OK ? 1 : 0, + NULL, enable_buffer_packing(sc), "pack multiple frames in one fl buffer"); SYSCTL_ADD_INT(ctx, children, OID_AUTO, "fl_pack", CTLFLAG_RD, @@ -841,12 +852,7 @@ t4_setup_port_queues(struct port_info *pi) * b) allocate queue iff it will take direct interrupts. */ bufsize = mtu_to_bufsize(ifp->if_mtu); - if (sc->flags & BUF_PACKING_OK && - ((is_t5(sc) && buffer_packing) || /* 1 or -1 both ok for T5 */ - (is_t4(sc) && buffer_packing == 1))) - pack = 1; - else - pack = 0; + pack = enable_buffer_packing(sc); for_each_rxq(pi, i, rxq) { init_iq(&rxq->iq, sc, pi->tmr_idx, pi->pktc_idx, pi->qsize_rxq, |