From nobody Thu Oct 08 20:44:12 2026 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 4j12645nR3z4n300 for ; Thu, 08 Oct 2026 20:44: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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4j12643G6Nz4cKB for ; Thu, 08 Oct 2026 20:44:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791492252; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J/1jSPmQJG4mt+MtrCOlgkFBpHt1QeRafDA9KzP2C5o=; b=D+0MvxiQ0fZ8zElZT/rRpuSpvYp8ysbgL5DvhXhGE8S7gPMR6UuiIP3KhqTY8y7gO1HDZD 5kTtsvFwE5GTbVZ0Al2XG9+yeuvUyKB44C7709TuoRN/rpAQVTetDKV4aWTlgS44FeP+1n 7g17ZwuSyfNZN2KKej8fKT7ybBUOVlLiKs7kep9SedDnF+5RV6paYJlpo9kTv/pm0tExJp 4peZrWC37udi32l7ZGRZPjZpXte8jRZt2sp0584nc7a6P//pB0YP1H45vAhsuBA/4yw4YA P2CjyrED46R+IE8LxhMv2CyQNZxrLoP2zwjd+gF9+O+DTpNjGSLMXyo5vfPedw== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1791492252; b=GXFTf9WGmngG4lQpfhovuSHfBdQsn5pUHSpydxF63IBi9YHuSvERruHnXb9+yM8uvi02pV eGWdN3wTsjOawXpd157ZDAl2nyYX+Kk/pxK4ilf/QDJ+cdqpafY1NiTDJBarDnW9Zs6+Wi 7VcNwhfHI1MYmRDMyXhdcrNKXNsrWsuT5ytfgeEdWHyizcvC9Qd9qj++zK37CN/0xLcpD1 K0lWi5FRoZJ3o3mwvacE56bz+WQmPspEAEhYo8J2fpJiuqv4l5zg6ifMXnnryXla9pPj+8 G0bRcQA2I/P3OVFr9YMaK9cBalUCEu2B5pFmh9v10jU2vg7g+BdiEQkg3K9FTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791492252; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J/1jSPmQJG4mt+MtrCOlgkFBpHt1QeRafDA9KzP2C5o=; b=gE1ntcIYnGMpAXE277gcI1VVAhHaKtmSlgrtRim+4ASDwSG4WXMq4BzR9MLpjXHr/KhDOf gAUtpu/dG1aaT1ZVP8eXuZ9LUFpk+bkyPxUxdQ1Hqw7B1KBS5ogHlLCG6ahe912RQReLQ5 rkkAQLeqai8Zu+dzUUd0xR1S7d4e1KM0x9CeJmUd5M3/k+3KibTwBX11KcIrjv/JQ3RzI3 UQhTlqkfchG4TxiqNqxMmH1PUfw6EAJsf0eehHkmFuPrGiRhxllC0+AoGDrZCXOqGSTS2s 4YZxYlZQUN1lqM8POyNhA1otyEop7LVEgtqKgy93ZSRirSviMxHm1rJAaCs50g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4j12641NkYzwp1 for ; Thu, 08 Oct 2026 20:44:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3226f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 08 Oct 2026 20:44:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Navdeep Parhar From: John Baldwin Subject: git: 0fc022224a5d - stable/15 - cxgbe KTLS tx: Distribute FW6_PLD replies across rx queues 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: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0fc022224a5df9d4b5a3a11af36b43eec9f0d1f6 Auto-Submitted: auto-generated Date: Thu, 08 Oct 2026 20:44:12 +0000 Message-Id: <6ac8009c.3226f.6947f5ff@gitrepo.freebsd.org> The branch stable/15 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=0fc022224a5df9d4b5a3a11af36b43eec9f0d1f6 commit 0fc022224a5df9d4b5a3a11af36b43eec9f0d1f6 Author: Navdeep Parhar AuthorDate: 2025-10-21 17:29:28 +0000 Commit: John Baldwin CommitDate: 2026-10-08 20:42:32 +0000 cxgbe KTLS tx: Distribute FW6_PLD replies across rx queues If the connection flowid is available then the replies are requested on the rx queue that is receiving wire traffic for the connection. This reduces contention for the txq lock. Reviewed by: jhb MFC after: 3 days Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D53385 (cherry picked from commit a6ae6090bb3dc14eda750aa53650fccf4c0bf818) --- sys/dev/cxgbe/crypto/t7_kern_tls.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/sys/dev/cxgbe/crypto/t7_kern_tls.c b/sys/dev/cxgbe/crypto/t7_kern_tls.c index 217459126361..d9710b5bd13f 100644 --- a/sys/dev/cxgbe/crypto/t7_kern_tls.c +++ b/sys/dev/cxgbe/crypto/t7_kern_tls.c @@ -141,7 +141,8 @@ alloc_tlspcb(struct ifnet *ifp, struct vi_info *vi, int flags) tlsp->tx_key_addr = -1; tlsp->ghash_offset = -1; tlsp->rx_chid = pi->rx_chan; - tlsp->rx_qid = sc->sge.rxq[pi->vi->first_rxq].iq.abs_id; + tlsp->rx_qid = -1; + tlsp->txq = NULL; mbufq_init(&tlsp->pending_mbufs, INT_MAX); return (tlsp); @@ -157,7 +158,8 @@ t7_tls_tag_alloc(struct ifnet *ifp, union if_snd_tag_alloc_params *params, struct vi_info *vi; struct inpcb *inp; struct sge_txq *txq; - int error, iv_size, keyid, mac_first; + int error, iv_size, keyid, mac_first, qidx; + uint32_t flowid; tls = params->tls.tls; @@ -250,11 +252,15 @@ t7_tls_tag_alloc(struct ifnet *ifp, union if_snd_tag_alloc_params *params, goto failed; } - txq = &sc->sge.txq[vi->first_txq]; if (inp->inp_flowtype != M_HASHTYPE_NONE) - txq += ((inp->inp_flowid % (vi->ntxq - vi->rsrv_noflowq)) + - vi->rsrv_noflowq); - tlsp->txq = txq; + flowid = inp->inp_flowid; + else + flowid = arc4random(); + qidx = flowid % vi->nrxq + vi->first_rxq; + tlsp->rx_qid = sc->sge.rxq[qidx].iq.abs_id; + qidx = (flowid % (vi->ntxq - vi->rsrv_noflowq)) + vi->rsrv_noflowq + + vi->first_txq; + tlsp->txq = txq = &sc->sge.txq[qidx]; INP_RUNLOCK(inp); error = ktls_setup_keys(tlsp, tls, txq);