Author: arybchik
Date: Mon Jan  2 09:46:39 2017
New Revision: 311092
URL: https://svnweb.freebsd.org/changeset/base/311092

Log:
  MFC r310810
  
  sfxge(4): cleanup: check deferred packet list tunables once
  
  Sponsored by:   Solarflare Communications, Inc.

Modified:
  stable/10/sys/dev/sfxge/sfxge_tx.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/sfxge/sfxge_tx.c
==============================================================================
--- stable/10/sys/dev/sfxge/sfxge_tx.c  Mon Jan  2 09:45:20 2017        
(r311091)
+++ stable/10/sys/dev/sfxge/sfxge_tx.c  Mon Jan  2 09:46:39 2017        
(r311092)
@@ -1766,26 +1766,6 @@ sfxge_tx_qinit(struct sfxge_softc *sc, u
            (rc = tso_init(txq)) != 0)
                goto fail3;
 
-       if (sfxge_tx_dpl_get_max <= 0) {
-               log(LOG_ERR, "%s=%d must be greater than 0",
-                   SFXGE_PARAM_TX_DPL_GET_MAX, sfxge_tx_dpl_get_max);
-               rc = EINVAL;
-               goto fail_tx_dpl_get_max;
-       }
-       if (sfxge_tx_dpl_get_non_tcp_max <= 0) {
-               log(LOG_ERR, "%s=%d must be greater than 0",
-                   SFXGE_PARAM_TX_DPL_GET_NON_TCP_MAX,
-                   sfxge_tx_dpl_get_non_tcp_max);
-               rc = EINVAL;
-               goto fail_tx_dpl_get_max;
-       }
-       if (sfxge_tx_dpl_put_max < 0) {
-               log(LOG_ERR, "%s=%d must be greater or equal to 0",
-                   SFXGE_PARAM_TX_DPL_PUT_MAX, sfxge_tx_dpl_put_max);
-               rc = EINVAL;
-               goto fail_tx_dpl_put_max;
-       }
-
        /* Initialize the deferred packet list. */
        stdp = &txq->dpl;
        stdp->std_put_max = sfxge_tx_dpl_put_max;
@@ -1830,8 +1810,6 @@ sfxge_tx_qinit(struct sfxge_softc *sc, u
 
 fail_txq_stat_init:
 fail_dpl_node:
-fail_tx_dpl_put_max:
-fail_tx_dpl_get_max:
 fail3:
 fail_txq_node:
        free(txq->pend_desc, M_SFXGE);
@@ -1938,6 +1916,26 @@ sfxge_tx_init(struct sfxge_softc *sc)
        KASSERT(intr->state == SFXGE_INTR_INITIALIZED,
            ("intr->state != SFXGE_INTR_INITIALIZED"));
 
+       if (sfxge_tx_dpl_get_max <= 0) {
+               log(LOG_ERR, "%s=%d must be greater than 0",
+                   SFXGE_PARAM_TX_DPL_GET_MAX, sfxge_tx_dpl_get_max);
+               rc = EINVAL;
+               goto fail_tx_dpl_get_max;
+       }
+       if (sfxge_tx_dpl_get_non_tcp_max <= 0) {
+               log(LOG_ERR, "%s=%d must be greater than 0",
+                   SFXGE_PARAM_TX_DPL_GET_NON_TCP_MAX,
+                   sfxge_tx_dpl_get_non_tcp_max);
+               rc = EINVAL;
+               goto fail_tx_dpl_get_non_tcp_max;
+       }
+       if (sfxge_tx_dpl_put_max < 0) {
+               log(LOG_ERR, "%s=%d must be greater or equal to 0",
+                   SFXGE_PARAM_TX_DPL_PUT_MAX, sfxge_tx_dpl_put_max);
+               rc = EINVAL;
+               goto fail_tx_dpl_put_max;
+       }
+
        sc->txq_count = SFXGE_TXQ_NTYPES - 1 + sc->intr.n_alloc;
 
        sc->tso_fw_assisted = sfxge_tso_fw_assisted;
@@ -1990,5 +1988,8 @@ fail2:
 fail:
 fail_txq_node:
        sc->txq_count = 0;
+fail_tx_dpl_put_max:
+fail_tx_dpl_get_non_tcp_max:
+fail_tx_dpl_get_max:
        return (rc);
 }
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to