From nobody Tue Feb 7 19:18:16 2023 X-Original-To: dev-commits-src-main@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 4PBCZx0Pt6z3nbGB; Tue, 7 Feb 2023 19:18:17 +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 4PBCZw5K3nz4VR2; Tue, 7 Feb 2023 19:18:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675797496; 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=GGz/gFUVX2btWEJw2Vjbfj+2TwRfXvDqaPXDE2qpuiE=; b=gHbwZsdsyVW5J0YDSF0yOxvG7pJgubjAgwGaKTfW+zMngrJGt5bxUmLHLhyQMdI6jz/W+O tNv5lN/XaLnaRFAQVFMeOvHHefdVZPARU+4o77kwt0VzmT2YUV7PgieX80biIzBRfBwvNy 4nQvhMp5jRhGkFekPv7BtFlMoOf6plmeOONaaMDGiMrrXo3QPWmvT5ChJokCmo0Buy96c6 ZFP85KzGcTdmrz38wn9rwo1gOpxu4fDCo9vZa+/p7hsI++f5r/XiUjVQ3ymqk3k2Io0Oip I5lDWNiCRMaZbfmtF4i/fHtIVS3PlACjNWMZfC0N4yOhX80FhVXNaqbg5uNt4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675797496; 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=GGz/gFUVX2btWEJw2Vjbfj+2TwRfXvDqaPXDE2qpuiE=; b=G8V/s+YZKfJF+72WXX1vnp9GGrT3fQBbkvVZKb/1A1j0C4Vos1WMYD0a9s0UvOSir2NcEl zJFbnSXZk39DUqSnqG8ejZ5jzbemgp8buXOK7E+2RcnYlr4c6qB6TyJdUpx8JQCiy6lYRu B0iR8TKRxsEDOG991RQD17T6dlaYM+z9l4db1msynwwNE2Exn9mity+jTvgN7JgRxPuvwK IkJs1tr9LxXRxjm8Gk2tTue1YVDAKkm5e5WrobwbYnxq/2YlhjlCTWfgUWOfxdTfsvolk+ 5X1EzTluM8x1IEPDv6VAtErVFlnPuWhY3BFT+T3qkErjKag8SZ+BzbJcZbHKdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1675797496; a=rsa-sha256; cv=none; b=ASt0DCbH13J1Ws/rFAsjc+/6PQMyatOXhSPx1eb2gGa8LSdPAZPYs0ZxrQxSkdD63WYTtW 9/bmg4pXKelH78cFOPy+IlrvJ9pW/tufe1/R+ZOz/X+QBFmv0/XLi6pptK50LSXDZZ6JhS Uqg7VZZkE+Rm2OsgtTv/4EGduxNv9w/H9DTD6TXHkbgrEJO5zdGGb0DH6cpoMNCbBWuBtf tdPmbmCR68YD3BYZra2bicVTxCYi+FHTcl6J1uFaMgSX8ehfhOeT4lLApRXGZSJGteoWFz 3+5Zs99GedBWBERoxT2HXpqO0LgkVeASZAWTgSq4INnyopTPsBJQk/lJ0gTsSQ== 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 4PBCZw4LYszSVs; Tue, 7 Feb 2023 19:18:16 +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 317JIGoW049921; Tue, 7 Feb 2023 19:18:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 317JIG6q049920; Tue, 7 Feb 2023 19:18:16 GMT (envelope-from git) Date: Tue, 7 Feb 2023 19:18:16 GMT Message-Id: <202302071918.317JIG6q049920@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: b34a60c54f31 - main - Mechanically convert vtbe(4) to IfAPI List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b34a60c54f31512fe27913acd371183a9a52c7f4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=b34a60c54f31512fe27913acd371183a9a52c7f4 commit b34a60c54f31512fe27913acd371183a9a52c7f4 Author: Justin Hibbits AuthorDate: 2022-08-19 19:47:32 +0000 Commit: Justin Hibbits CommitDate: 2023-02-07 19:16:18 +0000 Mechanically convert vtbe(4) to IfAPI Reviewed by: zlei Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D37844 --- sys/dev/beri/virtio/network/if_vtbe.c | 73 +++++++++++++++++------------------ 1 file changed, 36 insertions(+), 37 deletions(-) diff --git a/sys/dev/beri/virtio/network/if_vtbe.c b/sys/dev/beri/virtio/network/if_vtbe.c index 263c0b334447..9ab66f753fc6 100644 --- a/sys/dev/beri/virtio/network/if_vtbe.c +++ b/sys/dev/beri/virtio/network/if_vtbe.c @@ -114,7 +114,7 @@ struct vtbe_softc { bus_space_tag_t bst; bus_space_handle_t bsh; device_t dev; - struct ifnet *ifp; + if_t ifp; int if_flags; struct mtx mtx; boolean_t is_attached; @@ -146,7 +146,7 @@ vtbe_txstart_locked(struct vtbe_softc *sc) struct virtio_net_hdr *vnh; struct vqueue_info *vq; struct iovec *tiov; - struct ifnet *ifp; + if_t ifp; struct mbuf *m; struct uio uio; int enqueued; @@ -165,7 +165,7 @@ vtbe_txstart_locked(struct vtbe_softc *sc) } ifp = sc->ifp; - if (ifp->if_drv_flags & IFF_DRV_OACTIVE) { + if (if_getdrvflags(ifp) & IFF_DRV_OACTIVE) { return; } @@ -178,11 +178,11 @@ vtbe_txstart_locked(struct vtbe_softc *sc) for (;;) { if (!vq_has_descs(vq)) { - ifp->if_drv_flags |= IFF_DRV_OACTIVE; + if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); break; } - IFQ_DRV_DEQUEUE(&ifp->if_snd, m); + m = if_dequeue(ifp); if (m == NULL) { break; } @@ -230,9 +230,9 @@ vtbe_txstart_locked(struct vtbe_softc *sc) } static void -vtbe_txstart(struct ifnet *ifp) +vtbe_txstart(if_t ifp) { - struct vtbe_softc *sc = ifp->if_softc; + struct vtbe_softc *sc = if_getsoftc(ifp); VTBE_LOCK(sc); vtbe_txstart_locked(sc); @@ -242,25 +242,25 @@ vtbe_txstart(struct ifnet *ifp) static void vtbe_stop_locked(struct vtbe_softc *sc) { - struct ifnet *ifp; + if_t ifp; VTBE_ASSERT_LOCKED(sc); ifp = sc->ifp; - ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); + if_setdrvflagbits(ifp, 0, (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)); } static void vtbe_init_locked(struct vtbe_softc *sc) { - struct ifnet *ifp = sc->ifp; + if_t ifp = sc->ifp; VTBE_ASSERT_LOCKED(sc); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) return; - ifp->if_drv_flags |= IFF_DRV_RUNNING; + if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); } static void @@ -274,34 +274,34 @@ vtbe_init(void *if_softc) } static int -vtbe_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) +vtbe_ioctl(if_t ifp, u_long cmd, caddr_t data) { struct ifmediareq *ifmr; struct vtbe_softc *sc; struct ifreq *ifr; int mask, error; - sc = ifp->if_softc; + sc = if_getsoftc(ifp); ifr = (struct ifreq *)data; error = 0; switch (cmd) { case SIOCSIFFLAGS: VTBE_LOCK(sc); - if (ifp->if_flags & IFF_UP) { + if (if_getflags(ifp) & IFF_UP) { pio_enable_irq(sc, 1); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { + if ((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) { vtbe_init_locked(sc); } } else { pio_enable_irq(sc, 0); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { vtbe_stop_locked(sc); } } - sc->if_flags = ifp->if_flags; + sc->if_flags = if_getflags(ifp); VTBE_UNLOCK(sc); break; case SIOCADDMULTI: @@ -316,9 +316,9 @@ vtbe_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) ifmr->ifm_current = ifmr->ifm_active; break; case SIOCSIFCAP: - mask = ifp->if_capenable ^ ifr->ifr_reqcap; + mask = if_getcapenable(ifp) ^ ifr->ifr_reqcap; if (mask & IFCAP_VLAN_MTU) { - ifp->if_capenable ^= IFCAP_VLAN_MTU; + if_togglecapenable(ifp, IFCAP_VLAN_MTU); } break; @@ -335,7 +335,7 @@ vtbe_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) static void vtbe_txfinish_locked(struct vtbe_softc *sc) { - struct ifnet *ifp; + if_t ifp; VTBE_ASSERT_LOCKED(sc); @@ -388,7 +388,7 @@ vtbe_proc_rx(struct vtbe_softc *sc, struct vqueue_info *vq) { struct iovec iov[DESC_COUNT]; struct iovec *tiov; - struct ifnet *ifp; + if_t ifp; struct uio uio; struct mbuf *m; int iolen; @@ -426,9 +426,9 @@ vtbe_proc_rx(struct vtbe_softc *sc, struct vqueue_info *vq) if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); - CURVNET_SET(ifp->if_vnet); + CURVNET_SET(if_getvnet(ifp)); VTBE_UNLOCK(sc); - (*ifp->if_input)(ifp, m); + if_input(ifp, m); VTBE_LOCK(sc); CURVNET_RESTORE(); @@ -563,7 +563,7 @@ vtbe_attach(device_t dev) { uint8_t macaddr[ETHER_ADDR_LEN]; struct vtbe_softc *sc; - struct ifnet *ifp; + if_t ifp; int reg; sc = device_get_softc(dev); @@ -613,20 +613,19 @@ vtbe_attach(device_t dev) /* Set up the ethernet interface. */ sc->ifp = ifp = if_alloc(IFT_ETHER); - ifp->if_baudrate = IF_Gbps(10); - ifp->if_softc = sc; + if_setbaudrate(ifp, IF_Gbps(10)); + if_setsoftc(ifp, sc); if_initname(ifp, device_get_name(dev), device_get_unit(dev)); - ifp->if_flags = (IFF_BROADCAST | IFF_SIMPLEX | + if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | IFF_PROMISC); - ifp->if_capabilities = IFCAP_VLAN_MTU; - ifp->if_capenable = ifp->if_capabilities; - ifp->if_start = vtbe_txstart; - ifp->if_ioctl = vtbe_ioctl; - ifp->if_init = vtbe_init; - IFQ_SET_MAXLEN(&ifp->if_snd, DESC_COUNT - 1); - ifp->if_snd.ifq_drv_maxlen = DESC_COUNT - 1; - IFQ_SET_READY(&ifp->if_snd); - ifp->if_hdrlen = sizeof(struct ether_vlan_header); + if_setcapabilities(ifp, IFCAP_VLAN_MTU); + if_setcapenable(ifp, if_getcapabilities(ifp)); + if_setstartfn(ifp, vtbe_txstart); + if_setioctlfn(ifp, vtbe_ioctl); + if_setinitfn(ifp, vtbe_init); + if_setsendqlen(ifp, DESC_COUNT - 1); + if_setsendqready(ifp); + if_setifheaderlen(ifp, sizeof(struct ether_vlan_header)); /* All ready to run, attach the ethernet interface. */ ether_ifattach(ifp, macaddr);