From nobody Sun Apr 30 06:58:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Q8HH84WnSz48sRv; Sun, 30 Apr 2023 06:58:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Q8HH841gJz3Nth; Sun, 30 Apr 2023 06:58:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1682837892; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xxn0RKvX7HldXlTzsOvgo8jL0xHRP+pRipmLroWJL+w=; b=xVd8VeBFUONux6DYiHu7Hl6g8Ii6dUAkr24ewPtd0vOzQJXBQMAvG7yfNQJZROeJivzrNT ZhDuQ0OUWFcgLR1ljHekpv3gEwiI8TvT99t9kKkxhQ0Xbk7RRwo4e2q392UdZlrZIbtOsb CT4gEnj2V9dB2SOPYd+0UZJorODtIuW7x1TRNlNFLlPYjWuIQIGUdHYZ9JuCPHv0p0R3dh W/5nAS62NULKJ2e0jC1xuhc5gk5zyDT4u8xfwE51KeKDrqkLA+NWoaHdwn3Legejt0tk77 tBAHeA5oDZvv0XHHhUdZ36JCi2IlF6dvAjunyhODRJ4I3J4kxTNn4Ieaa4Z/CA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1682837892; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xxn0RKvX7HldXlTzsOvgo8jL0xHRP+pRipmLroWJL+w=; b=yWG4C17hNFuDeuHuDapn8jv0/ktWi5xphV8txc5AG4WR6KoL1MhY7JvWcbNAmcwmYF6hNS GAlOHNSBLZKWbH/uCUDS4iUFvWa801HRXFQakBivmMW/Vio6ItLGoEcGyoLZbYXTdNIrTp 5mXNJCPEQFFrecMrBALGWVpqPQgIVeER7LjyWXc2Gve0y1/wA/As3QARVaGmKTSPcLgrAf W6m6cuYf9Z/NKvkDN+9GfKtGz96yj07ldSvirZXOESlfUkAoZAhSYMLY/GP2E4V4QipwDq dCw62Q65j0rghdrnrNDhw26u327cxb6UnzD9gzotIkxTTMK+TcMCi7Q6Q9CR7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1682837892; a=rsa-sha256; cv=none; b=I2rQols0vxiI4blTjeDhtM5tfgO1Sura147/NRW4KzIRjhwe1AVgHFaw6aWA/Zd3hG3txj YZp9vuNY+n47gtdSfqzrDUR0Evd+CnoOKuK9VBSs+61HBck91CDo983ttIHAZqsuKLv5V8 VnSbif9cKKV8Bj2Hb8Q+ONC1excMrCbAaD9x9S6cWwJKDQpKZuAPW24xtZlntgIojFPbAk zGY9HGR+iWJgyHkTP7z5pNmr2UkcPJ9tg/0g+oFxAF9sXrnhHjDF63wBGVapAhjduidj+T Nk/DCVBmxh0/Mml7++Zifrvl43fu3Dq87fPa5ZowZEzfOwDKuZTRmbxM1H/8zg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Q8HH837d6zDhV; Sun, 30 Apr 2023 06:58:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33U6wCVd071892; Sun, 30 Apr 2023 06:58:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33U6wCCD071891; Sun, 30 Apr 2023 06:58:12 GMT (envelope-from git) Date: Sun, 30 Apr 2023 06:58:12 GMT Message-Id: <202304300658.33U6wCCD071891@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Hans Petter Selasky Subject: git: e8ad47b65447 - stable/13 - mlx5en(4): Don't wait for receive queue to fill up with mbufs during open channels. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: hselasky X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e8ad47b65447c98050f4888aa0c3298663bb6ddb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by hselasky: URL: https://cgit.FreeBSD.org/src/commit/?id=e8ad47b65447c98050f4888aa0c3298663bb6ddb commit e8ad47b65447c98050f4888aa0c3298663bb6ddb Author: Hans Petter Selasky AuthorDate: 2023-04-18 11:42:17 +0000 Commit: Hans Petter Selasky CommitDate: 2023-04-30 06:56:19 +0000 mlx5en(4): Don't wait for receive queue to fill up with mbufs during open channels. Failure to get mbufs may be transient. Don't permanently fail to open the channels due to lack of mbufs. This also makes modifying channel parameters faster. Sponsored by: NVIDIA Networking (cherry picked from commit 1943c40cd655b7259b9b21849f328362c97a2657) --- sys/dev/mlx5/mlx5_en/en.h | 2 -- sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c | 5 ----- sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 26 -------------------------- 3 files changed, 33 deletions(-) diff --git a/sys/dev/mlx5/mlx5_en/en.h b/sys/dev/mlx5/mlx5_en/en.h index f552b1b653a6..41ea5c493d46 100644 --- a/sys/dev/mlx5/mlx5_en/en.h +++ b/sys/dev/mlx5/mlx5_en/en.h @@ -107,7 +107,6 @@ #define MLX5E_PARAMS_DEFAULT_RX_CQ_MODERATION_PKTS 0x20 #define MLX5E_PARAMS_DEFAULT_TX_CQ_MODERATION_USEC 0x10 #define MLX5E_PARAMS_DEFAULT_TX_CQ_MODERATION_PKTS 0x20 -#define MLX5E_PARAMS_DEFAULT_MIN_RX_WQES 0x80 #define MLX5E_PARAMS_DEFAULT_RX_HASH_LOG_TBL_SZ 0x7 #define MLX5E_CACHELINE_SIZE CACHE_LINE_SIZE #define MLX5E_HW2SW_MTU(hwmtu) \ @@ -672,7 +671,6 @@ struct mlx5e_params { u16 rx_cq_moderation_pkts; u16 tx_cq_moderation_usec; u16 tx_cq_moderation_pkts; - u16 min_rx_wqes; bool hw_lro_en; bool cqe_zipping_en; u32 lro_wqe_sz; diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c b/sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c index f57d70080a46..ec861a4b260c 100644 --- a/sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c +++ b/sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c @@ -1035,11 +1035,6 @@ mlx5e_ethtool_handler(SYSCTL_HANDLER_ARGS) priv->params_ethtool.rx_queue_size = 1 << priv->params.log_rq_size; - /* update least number of RX WQEs */ - priv->params.min_rx_wqes = min( - priv->params_ethtool.rx_queue_size - 1, - MLX5E_PARAMS_DEFAULT_MIN_RX_WQES); - /* restart network interface, if any */ if (was_opened) mlx5e_open_locked(priv->ifp); diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c index 97dcc04d7ae8..8bedf0ab7729 100644 --- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c +++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c @@ -1402,23 +1402,6 @@ mlx5e_disable_rq(struct mlx5e_rq *rq) mlx5_core_destroy_rq(mdev, rq->rqn); } -static int -mlx5e_wait_for_min_rx_wqes(struct mlx5e_rq *rq) -{ - struct mlx5e_channel *c = rq->channel; - struct mlx5e_priv *priv = c->priv; - struct mlx5_wq_ll *wq = &rq->wq; - int i; - - for (i = 0; i < 1000; i++) { - if (wq->cur_sz >= priv->params.min_rx_wqes) - return (0); - - msleep(4); - } - return (-ETIMEDOUT); -} - static int mlx5e_open_rq(struct mlx5e_channel *c, struct mlx5e_rq_param *param, @@ -2504,7 +2487,6 @@ mlx5e_open_channels(struct mlx5e_priv *priv) struct mlx5e_channel_param *cparam; int err; int i; - int j; cparam = malloc(sizeof(*cparam), M_MLX5EN, M_WAITOK); @@ -2538,12 +2520,6 @@ mlx5e_open_channels(struct mlx5e_priv *priv) intr_setaffinity(irq, CPU_WHICH_INTRHANDLER, &cpuset); } } - - for (j = 0; j < priv->params.num_channels; j++) { - err = mlx5e_wait_for_min_rx_wqes(&priv->channel[j].rq); - if (err) - goto err_close_channels; - } free(cparam, M_MLX5EN); return (0); @@ -3817,8 +3793,6 @@ mlx5e_build_ifp_priv(struct mlx5_core_dev *mdev, MLX5E_PARAMS_DEFAULT_TX_CQ_MODERATION_USEC; priv->params.tx_cq_moderation_pkts = MLX5E_PARAMS_DEFAULT_TX_CQ_MODERATION_PKTS; - priv->params.min_rx_wqes = - MLX5E_PARAMS_DEFAULT_MIN_RX_WQES; priv->params.rx_hash_log_tbl_sz = (order_base_2(num_comp_vectors) > MLX5E_PARAMS_DEFAULT_RX_HASH_LOG_TBL_SZ) ?