From nobody Fri Jan 13 16:10:56 2023 X-Original-To: dev-commits-src-all@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 4NtmcJ4hpcz2r4j1; Fri, 13 Jan 2023 16:10:56 +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 4NtmcJ4Fd5z4PfF; Fri, 13 Jan 2023 16:10:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1673626256; 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=NEkd2nV2BuALqEy42IVY6aO5xA3pHLg7WX9Rdl2HSU0=; b=csSvOFaHCLYIjt7AG795yYNc2bTNRRehl0dZO9Iv3QyirAcQvH8nkjTj0J1aPfr6N/ELG6 5NcFOvZwJ1o6FuR+IkQ5lLgGNtK3PS/DJGA+FQhXJzDaFstzy3bnpgtET719ISD5ctgcdp GWrmsq8Ne28pzeUjeCmc+HsMtG25CId29FGoBWaQi0Y+zKZ5BxEsLoWEN30NlockylK+0Q BuAGmpJUMrBsyzt4gzoMalTASvbxITZC0ItCqGHPj6X2PJ5+4tk5UHkxqeDqBKEbpaSmww 9JeNri90LAYLGE/kuDT2PLPlL022NG5IAeTEU4HlhvdQ+Ts9obidn6q3B7l3tQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1673626256; 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=NEkd2nV2BuALqEy42IVY6aO5xA3pHLg7WX9Rdl2HSU0=; b=m3KeWBWoOq1KsaCQQ6FcDPvJNZUN32Ktww6h3zHU1WX+vAOxjxathXNfew49EzH9YlwUMJ esuEhLRwP4DFcXXE0pXtjQTvZvNFwN88Qlt/ZWXxS/I1GBVblPxq9PqURcZOcLKpOTLNkD 7OsdqLXVs7nqiVXTWZCYs30qktC9CHmCMxp/o0uYvjNAhZLl3lYnWlG5YZ88lmR9qyjo9x FpAfcN6VCc6QRYalYMmzisvW79usHwn5Dgk6U9kqtiuoY/3KEoFnvs4TCxPORbAIx03auc rM0N9QvuJmFkNbPy9DyTYGictWwTRaiMgijZbHUfpKBqS7GeL5W5oOgCl0tDnQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1673626256; a=rsa-sha256; cv=none; b=bKHXtTDNvtEV7pNram59UkIRJdPyc3U3Fc6IIXS2Yo47KKid0PTWB/GmSsoRhsvEh+Gf8N vkWw6pW0z6rV6H9EqvlwXAH6v/bcspdOhUK9rYuZ2KvP4KzIeb3zVsy6ngpPfC9JH1hSDw wXwamZ4gnWPciickKOABkcP+cWCoC6Bc00YvZ0ZOjbDS0rUcwhM8jdxOIuz9ph+Ceds+SL nyiS2b+BU2R7OpY25laO9EmDAn+5EDKN9ux6CVD7tfgCaaXKR1CfX5DaZN4NYHG4RZd1I+ 9sTTAZ23nYPISbNLgM5xVGoWE1A4DvNIzW06gRgjq4466kvo8bRI198P0/xsWw== 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 4NtmcJ38gnz1CcD; Fri, 13 Jan 2023 16:10:56 +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 30DGAuwu091967; Fri, 13 Jan 2023 16:10:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30DGAuKQ091966; Fri, 13 Jan 2023 16:10:56 GMT (envelope-from git) Date: Fri, 13 Jan 2023 16:10:56 GMT Message-Id: <202301131610.30DGAuKQ091966@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marcin Wojtas Subject: git: 7583c633e0aa - main - Mechanically convert ena(4) to DrvAPI List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mw X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7583c633e0aa5572715d1c792cdc505c2237e820 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by mw: URL: https://cgit.FreeBSD.org/src/commit/?id=7583c633e0aa5572715d1c792cdc505c2237e820 commit 7583c633e0aa5572715d1c792cdc505c2237e820 Author: Justin Hibbits AuthorDate: 2023-01-13 16:04:09 +0000 Commit: Marcin Wojtas CommitDate: 2023-01-13 16:09:17 +0000 Mechanically convert ena(4) to DrvAPI Reviewed by: mw Differential Revision: https://reviews.freebsd.org/D37837 --- sys/dev/ena/ena.c | 36 ++++++++++++++++++------------------ sys/dev/ena/ena_datapath.c | 14 +++++++------- sys/dev/ena/ena_netmap.c | 10 +++++----- 3 files changed, 30 insertions(+), 30 deletions(-) diff --git a/sys/dev/ena/ena.c b/sys/dev/ena/ena.c index 4dcbb709c586..72846a8bed51 100644 --- a/sys/dev/ena/ena.c +++ b/sys/dev/ena/ena.c @@ -575,7 +575,7 @@ ena_release_all_tx_dmamap(struct ena_ring *tx_ring) for (i = 0; i < tx_ring->ring_size; ++i) { tx_info = &tx_ring->tx_buffer_info[i]; #ifdef DEV_NETMAP - if (adapter->ifp->if_capenable & IFCAP_NETMAP) { + if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) { nm_info = &tx_info->nm_info; for (j = 0; j < ENA_PKT_MAX_BUFS; ++j) { if (nm_info->map_seg[j] != NULL) { @@ -661,7 +661,7 @@ ena_setup_tx_resources(struct ena_adapter *adapter, int qid) } #ifdef DEV_NETMAP - if (adapter->ifp->if_capenable & IFCAP_NETMAP) { + if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) { map = tx_ring->tx_buffer_info[i].nm_info.map_seg; for (j = 0; j < ENA_PKT_MAX_BUFS; j++) { err = bus_dmamap_create(adapter->tx_buf_tag, 0, @@ -750,7 +750,7 @@ ena_free_tx_resources(struct ena_adapter *adapter, int qid) tx_ring->tx_buffer_info[i].dmamap); #ifdef DEV_NETMAP - if (adapter->ifp->if_capenable & IFCAP_NETMAP) { + if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) { nm_info = &tx_ring->tx_buffer_info[i].nm_info; for (j = 0; j < ENA_PKT_MAX_BUFS; j++) { if (nm_info->socket_buf_idx[j] != 0) { @@ -882,7 +882,7 @@ ena_setup_rx_resources(struct ena_adapter *adapter, unsigned int qid) } /* Create LRO for the ring */ - if ((adapter->ifp->if_capenable & IFCAP_LRO) != 0) { + if ((if_getcapenable(adapter->ifp) & IFCAP_LRO) != 0) { int err = tcp_lro_init(&rx_ring->lro); if (err != 0) { ena_log(pdev, ERR, "LRO[%d] Initialization failed!\n", @@ -1292,7 +1292,7 @@ ena_free_rx_bufs(struct ena_adapter *adapter, unsigned int qid) ena_free_rx_mbuf(adapter, rx_ring, rx_info); #ifdef DEV_NETMAP if (((if_getflags(adapter->ifp) & IFF_DYING) == 0) && - (adapter->ifp->if_capenable & IFCAP_NETMAP)) { + (if_getcapenable(adapter->ifp) & IFCAP_NETMAP)) { if (rx_info->netmap_buf_idx != 0) ena_netmap_free_rx_slot(adapter, rx_ring, rx_info); @@ -1964,7 +1964,7 @@ ena_up_complete(struct ena_adapter *adapter) } } - rc = ena_change_mtu(adapter->ifp, adapter->ifp->if_mtu); + rc = ena_change_mtu(adapter->ifp, if_getmtu(adapter->ifp)); if (unlikely(rc != 0)) return (rc); @@ -2225,7 +2225,7 @@ ena_ioctl(if_t ifp, u_long command, caddr_t data) struct ifreq *ifr; int rc; - adapter = ifp->if_softc; + adapter = if_getsoftc(ifp); ifr = (struct ifreq *)data; /* @@ -2234,7 +2234,7 @@ ena_ioctl(if_t ifp, u_long command, caddr_t data) rc = 0; switch (command) { case SIOCSIFMTU: - if (ifp->if_mtu == ifr->ifr_mtu) + if (if_getmtu(ifp) == ifr->ifr_mtu) break; ENA_LOCK_LOCK(); ena_down(adapter); @@ -2246,10 +2246,10 @@ ena_ioctl(if_t ifp, u_long command, caddr_t data) break; case SIOCSIFFLAGS: - if ((ifp->if_flags & IFF_UP) != 0) { + if ((if_getflags(ifp) & IFF_UP) != 0) { if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) { - if ((ifp->if_flags & - (IFF_PROMISC | IFF_ALLMULTI)) != 0) { + if ((if_getflags(ifp) & (IFF_PROMISC | + IFF_ALLMULTI)) != 0) { ena_log(adapter->pdev, INFO, "ioctl promisc/allmulti\n"); } @@ -2280,8 +2280,8 @@ ena_ioctl(if_t ifp, u_long command, caddr_t data) { int reinit = 0; - if (ifr->ifr_reqcap != ifp->if_capenable) { - ifp->if_capenable = ifr->ifr_reqcap; + if (ifr->ifr_reqcap != if_getcapenable(ifp)) { + if_setcapenable(ifp, ifr->ifr_reqcap); reinit = 1; } @@ -2414,10 +2414,10 @@ ena_setup_ifnet(device_t pdev, struct ena_adapter *adapter, if_setcapabilitiesbit(ifp, caps, 0); /* TSO parameters */ - ifp->if_hw_tsomax = ENA_TSO_MAXSIZE - - (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN); - ifp->if_hw_tsomaxsegcount = adapter->max_tx_sgl_size - 1; - ifp->if_hw_tsomaxsegsize = ENA_TSO_MAXSIZE; + if_sethwtsomax(ifp, ENA_TSO_MAXSIZE - + (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN)); + if_sethwtsomaxsegcount(ifp, adapter->max_tx_sgl_size - 1); + if_sethwtsomaxsegsize(ifp, ENA_TSO_MAXSIZE); if_setifheaderlen(ifp, sizeof(struct ether_vlan_header)); if_setcapenable(ifp, if_getcapabilities(ifp)); @@ -3744,7 +3744,7 @@ ena_detach(device_t pdev) int rc; /* Make sure VLANS are not using driver */ - if (adapter->ifp->if_vlantrunk != NULL) { + if (if_vlantrunkinuse(adapter->ifp)) { ena_log(adapter->pdev, ERR, "VLAN is in use, detach first\n"); return (EBUSY); } diff --git a/sys/dev/ena/ena_datapath.c b/sys/dev/ena/ena_datapath.c index 5a021a9304cc..17e352bf8bdf 100644 --- a/sys/dev/ena/ena_datapath.c +++ b/sys/dev/ena/ena_datapath.c @@ -115,7 +115,7 @@ void ena_deferred_mq_start(void *arg, int pending) { struct ena_ring *tx_ring = (struct ena_ring *)arg; - struct ifnet *ifp = tx_ring->adapter->ifp; + if_t ifp = tx_ring->adapter->ifp; while (!drbr_empty(ifp, tx_ring->br) && tx_ring->running && (if_getdrvflags(ifp) & IFF_DRV_RUNNING) != 0) { @@ -128,7 +128,7 @@ ena_deferred_mq_start(void *arg, int pending) int ena_mq_start(if_t ifp, struct mbuf *m) { - struct ena_adapter *adapter = ifp->if_softc; + struct ena_adapter *adapter = if_getsoftc(ifp); struct ena_ring *tx_ring; int ret, is_drbr_empty; uint32_t i; @@ -179,7 +179,7 @@ ena_mq_start(if_t ifp, struct mbuf *m) void ena_qflush(if_t ifp) { - struct ena_adapter *adapter = ifp->if_softc; + struct ena_adapter *adapter = if_getsoftc(ifp); struct ena_ring *tx_ring = adapter->tx_ring; int i; @@ -643,8 +643,8 @@ ena_rx_cleanup(struct ena_ring *rx_ring) break; } - if (((ifp->if_capenable & IFCAP_RXCSUM) != 0) || - ((ifp->if_capenable & IFCAP_RXCSUM_IPV6) != 0)) { + if (((if_getcapenable(ifp) & IFCAP_RXCSUM) != 0) || + ((if_getcapenable(ifp) & IFCAP_RXCSUM_IPV6) != 0)) { ena_rx_checksum(rx_ring, &ena_rx_ctx, mbuf); } @@ -659,7 +659,7 @@ ena_rx_cleanup(struct ena_ring *rx_ring) * should be computed by hardware. */ do_if_input = 1; - if (((ifp->if_capenable & IFCAP_LRO) != 0) && + if (((if_getcapenable(ifp) & IFCAP_LRO) != 0) && ((mbuf->m_pkthdr.csum_flags & CSUM_IP_VALID) != 0) && (ena_rx_ctx.l4_proto == ENA_ETH_IO_L4_PROTO_TCP)) { /* @@ -675,7 +675,7 @@ ena_rx_cleanup(struct ena_ring *rx_ring) if (do_if_input != 0) { ena_log_io(pdev, DBG, "calling if_input() with mbuf %p\n", mbuf); - (*ifp->if_input)(ifp, mbuf); + if_input(ifp, mbuf); } counter_enter(); diff --git a/sys/dev/ena/ena_netmap.c b/sys/dev/ena/ena_netmap.c index e1244ffc8a44..d80791759efb 100644 --- a/sys/dev/ena/ena_netmap.c +++ b/sys/dev/ena/ena_netmap.c @@ -224,7 +224,7 @@ ena_ring_in_netmap(struct ena_adapter *adapter, int qid, enum txrx x) struct netmap_adapter *na; struct netmap_kring *kring; - if (adapter->ifp->if_capenable & IFCAP_NETMAP) { + if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) { na = NA(adapter->ifp); kring = (x == NR_RX) ? na->rx_rings[qid] : na->tx_rings[qid]; if (kring->nr_mode == NKR_NETMAP_ON) @@ -271,8 +271,8 @@ ena_netmap_reset_tx_ring(struct ena_adapter *adapter, int qid) static int ena_netmap_reg(struct netmap_adapter *na, int onoff) { - struct ifnet *ifp = na->ifp; - struct ena_adapter *adapter = ifp->if_softc; + if_t ifp = na->ifp; + struct ena_adapter *adapter = if_getsoftc(ifp); device_t pdev = adapter->pdev; struct netmap_kring *kring; enum txrx t; @@ -528,7 +528,7 @@ ena_netmap_map_single_slot(struct netmap_adapter *na, struct netmap_slot *slot, device_t pdev; int rc; - pdev = ((struct ena_adapter *)na->ifp->if_softc)->pdev; + pdev = ((struct ena_adapter *)if_getsoftc(na->ifp))->pdev; *vaddr = PNMB(na, slot, paddr); if (unlikely(vaddr == NULL)) { @@ -1065,7 +1065,7 @@ ena_netmap_fill_ctx(struct netmap_kring *kring, struct ena_netmap_ctx *ctx, { ctx->kring = kring; ctx->na = kring->na; - ctx->adapter = ctx->na->ifp->if_softc; + ctx->adapter = if_getsoftc(ctx->na->ifp); ctx->lim = kring->nkr_num_slots - 1; ctx->io_cq = &ctx->adapter->ena_dev->io_cq_queues[ena_qid]; ctx->io_sq = &ctx->adapter->ena_dev->io_sq_queues[ena_qid];