Index | Thread | Search

From:
jan@openbsd.org
Subject:
Re: ix(4) igx(4) struct names
To:
Alexander Bluhm <bluhm@openbsd.org>
Cc:
tech@openbsd.org
Date:
Sat, 18 May 2024 14:14:46 +0200

Download raw body.

Thread
On Fri, May 17, 2024 at 11:03:09PM +0200, Alexander Bluhm wrote:
> When debugging ix driver, I got confused by "ddb> show struct"
> showing bogus values.  Reason is that struct names for rx_ring and
> tx_ring are shared between ix(4) and igc(4), but are different
> objects.  ddb picked the wrong one.
> 
> Can we make those structs unique by adding a prefix?  ok?

ok jan@

> Index: dev/pci/if_igc.c
> ===================================================================
> RCS file: /data/mirror/openbsd/cvs/src/sys/dev/pci/if_igc.c,v
> diff -u -p -r1.23 if_igc.c
> --- dev/pci/if_igc.c	7 May 2024 18:35:23 -0000	1.23
> +++ dev/pci/if_igc.c	17 May 2024 20:28:58 -0000
> @@ -107,21 +107,21 @@ void	igc_setup_interface(struct igc_soft
>  
>  void	igc_init(void *);
>  void	igc_start(struct ifqueue *);
> -int	igc_txeof(struct tx_ring *);
> +int	igc_txeof(struct igc_txring *);
>  void	igc_stop(struct igc_softc *);
>  int	igc_ioctl(struct ifnet *, u_long, caddr_t);
>  int	igc_rxrinfo(struct igc_softc *, struct if_rxrinfo *);
> -int	igc_rxfill(struct rx_ring *);
> +int	igc_rxfill(struct igc_rxring *);
>  void	igc_rxrefill(void *);
> -int	igc_rxeof(struct rx_ring *);
> +int	igc_rxeof(struct igc_rxring *);
>  void	igc_rx_checksum(uint32_t, struct mbuf *, uint32_t);
>  void	igc_watchdog(struct ifnet *);
>  void	igc_media_status(struct ifnet *, struct ifmediareq *);
>  int	igc_media_change(struct ifnet *);
>  void	igc_iff(struct igc_softc *);
>  void	igc_update_link_status(struct igc_softc *);
> -int	igc_get_buf(struct rx_ring *, int);
> -int	igc_tx_ctx_setup(struct tx_ring *, struct mbuf *, int, uint32_t *,
> +int	igc_get_buf(struct igc_rxring *, int);
> +int	igc_tx_ctx_setup(struct igc_txring *, struct mbuf *, int, uint32_t *,
>  	    uint32_t *);
>  
>  void	igc_configure_queues(struct igc_softc *);
> @@ -132,18 +132,18 @@ void	igc_disable_intr(struct igc_softc *
>  int	igc_intr_link(void *);
>  int	igc_intr_queue(void *);
>  
> -int	igc_allocate_transmit_buffers(struct tx_ring *);
> +int	igc_allocate_transmit_buffers(struct igc_txring *);
>  int	igc_setup_transmit_structures(struct igc_softc *);
> -int	igc_setup_transmit_ring(struct tx_ring *);
> +int	igc_setup_transmit_ring(struct igc_txring *);
>  void	igc_initialize_transmit_unit(struct igc_softc *);
>  void	igc_free_transmit_structures(struct igc_softc *);
> -void	igc_free_transmit_buffers(struct tx_ring *);
> -int	igc_allocate_receive_buffers(struct rx_ring *);
> +void	igc_free_transmit_buffers(struct igc_txring *);
> +int	igc_allocate_receive_buffers(struct igc_rxring *);
>  int	igc_setup_receive_structures(struct igc_softc *);
> -int	igc_setup_receive_ring(struct rx_ring *);
> +int	igc_setup_receive_ring(struct igc_rxring *);
>  void	igc_initialize_receive_unit(struct igc_softc *);
>  void	igc_free_receive_structures(struct igc_softc *);
> -void	igc_free_receive_buffers(struct rx_ring *);
> +void	igc_free_receive_buffers(struct igc_rxring *);
>  void	igc_initialize_rss_mapping(struct igc_softc *);
>  
>  void	igc_get_hw_control(struct igc_softc *);
> @@ -374,8 +374,8 @@ int
>  igc_allocate_queues(struct igc_softc *sc)
>  {
>  	struct igc_queue *iq;
> -	struct tx_ring *txr;
> -	struct rx_ring *rxr;
> +	struct igc_txring *txr;
> +	struct igc_rxring *rxr;
>  	int i, rsize, rxconf, tsize, txconf;
>  
>  	/* Allocate the top level queue structs. */
> @@ -387,7 +387,7 @@ igc_allocate_queues(struct igc_softc *sc
>  	}
>  
>  	/* Allocate the TX ring. */
> -	sc->tx_rings = mallocarray(sc->sc_nqueues, sizeof(struct tx_ring),
> +	sc->tx_rings = mallocarray(sc->sc_nqueues, sizeof(struct igc_txring),
>  	    M_DEVBUF, M_NOWAIT | M_ZERO);
>  	if (sc->tx_rings == NULL) {
>  		printf("%s: unable to allocate TX ring\n", DEVNAME(sc));
> @@ -395,7 +395,7 @@ igc_allocate_queues(struct igc_softc *sc
>  	}
>  	
>  	/* Allocate the RX ring. */
> -	sc->rx_rings = mallocarray(sc->sc_nqueues, sizeof(struct rx_ring),
> +	sc->rx_rings = mallocarray(sc->sc_nqueues, sizeof(struct igc_rxring),
>  	    M_DEVBUF, M_NOWAIT | M_ZERO);
>  	if (sc->rx_rings == NULL) {
>  		printf("%s: unable to allocate RX ring\n", DEVNAME(sc));
> @@ -456,10 +456,12 @@ err_rx_desc:
>  err_tx_desc:
>  	for (txr = sc->tx_rings; txconf > 0; txr++, txconf--)
>  		igc_dma_free(sc, &txr->txdma);
> -	free(sc->rx_rings, M_DEVBUF, sc->sc_nqueues * sizeof(struct rx_ring));
> +	free(sc->rx_rings, M_DEVBUF,
> +	    sc->sc_nqueues * sizeof(struct igc_rxring));
>  	sc->rx_rings = NULL;
>  rx_fail:
> -	free(sc->tx_rings, M_DEVBUF, sc->sc_nqueues * sizeof(struct tx_ring));
> +	free(sc->tx_rings, M_DEVBUF,
> +	    sc->sc_nqueues * sizeof(struct igc_txring));
>  	sc->tx_rings = NULL;
>  fail:
>  	return ENOMEM;
> @@ -833,8 +835,8 @@ igc_setup_interface(struct igc_softc *sc
>  	for (i = 0; i < sc->sc_nqueues; i++) {
>  		struct ifqueue *ifq = ifp->if_ifqs[i];
>  		struct ifiqueue *ifiq = ifp->if_iqs[i];
> -		struct tx_ring *txr = &sc->tx_rings[i];
> -		struct rx_ring *rxr = &sc->rx_rings[i];
> +		struct igc_txring *txr = &sc->tx_rings[i];
> +		struct igc_rxring *rxr = &sc->rx_rings[i];
>  
>  		ifq->ifq_softc = txr;
>  		txr->ifq = ifq;
> @@ -849,7 +851,7 @@ igc_init(void *arg)
>  {
>  	struct igc_softc *sc = (struct igc_softc *)arg;
>  	struct ifnet *ifp = &sc->sc_ac.ac_if;
> -	struct rx_ring *rxr;
> +	struct igc_rxring *rxr;
>  	uint32_t ctrl = 0;
>  	int i, s;
>  
> @@ -959,7 +961,7 @@ igc_start(struct ifqueue *ifq)
>  {
>  	struct ifnet *ifp = ifq->ifq_if;
>  	struct igc_softc *sc = ifp->if_softc;
> -	struct tx_ring *txr = ifq->ifq_softc;
> +	struct igc_txring *txr = ifq->ifq_softc;
>  	union igc_adv_tx_desc *txdesc;
>  	struct igc_tx_buf *txbuf;
>  	bus_dmamap_t map;
> @@ -1067,7 +1069,7 @@ igc_start(struct ifqueue *ifq)
>  }
>  
>  int
> -igc_txeof(struct tx_ring *txr)
> +igc_txeof(struct igc_txring *txr)
>  {
>  	struct igc_softc *sc = txr->sc;
>  	struct ifqueue *ifq = txr->ifq;
> @@ -1223,7 +1225,7 @@ int
>  igc_rxrinfo(struct igc_softc *sc, struct if_rxrinfo *ifri)
>  {
>  	struct if_rxring_info *ifr;
> -	struct rx_ring *rxr;
> +	struct igc_rxring *rxr;
>  	int error, i, n = 0;
>  
>  	ifr = mallocarray(sc->sc_nqueues, sizeof(*ifr), M_DEVBUF,
> @@ -1244,7 +1246,7 @@ igc_rxrinfo(struct igc_softc *sc, struct
>  }
>  
>  int
> -igc_rxfill(struct rx_ring *rxr)
> +igc_rxfill(struct igc_rxring *rxr)
>  {
>  	struct igc_softc *sc = rxr->sc;
>  	int i, post = 0;
> @@ -1277,7 +1279,7 @@ igc_rxfill(struct rx_ring *rxr)
>  void
>  igc_rxrefill(void *xrxr)
>  {
> -	struct rx_ring *rxr = xrxr;
> +	struct igc_rxring *rxr = xrxr;
>  	struct igc_softc *sc = rxr->sc;
>  
>  	if (igc_rxfill(rxr)) {
> @@ -1296,7 +1298,7 @@ igc_rxrefill(void *xrxr)
>   *
>   *********************************************************************/
>  int
> -igc_rxeof(struct rx_ring *rxr)
> +igc_rxeof(struct igc_rxring *rxr)
>  {
>  	struct igc_softc *sc = rxr->sc;
>  	struct ifnet *ifp = &sc->sc_ac.ac_if;
> @@ -1657,7 +1659,7 @@ igc_update_link_status(struct igc_softc 
>   *
>   **********************************************************************/
>  int
> -igc_get_buf(struct rx_ring *rxr, int i)
> +igc_get_buf(struct igc_rxring *rxr, int i)
>  {
>  	struct igc_softc *sc = rxr->sc;
>  	struct igc_rx_buf *rxbuf;
> @@ -1812,8 +1814,8 @@ igc_intr_queue(void *arg)
>  	struct igc_queue *iq = arg;
>  	struct igc_softc *sc = iq->sc;
>  	struct ifnet *ifp = &sc->sc_ac.ac_if;
> -	struct rx_ring *rxr = iq->rxr;
> -	struct tx_ring *txr = iq->txr;
> +	struct igc_rxring *rxr = iq->rxr;
> +	struct igc_txring *txr = iq->txr;
>  
>  	if (ifp->if_flags & IFF_RUNNING) {
>  		igc_txeof(txr);
> @@ -1833,7 +1835,7 @@ igc_intr_queue(void *arg)
>   *
>   **********************************************************************/
>  int
> -igc_allocate_transmit_buffers(struct tx_ring *txr)
> +igc_allocate_transmit_buffers(struct igc_txring *txr)
>  {
>  	struct igc_softc *sc = txr->sc;
>  	struct igc_tx_buf *txbuf;
> @@ -1875,7 +1877,7 @@ fail:
>  int
>  igc_setup_transmit_structures(struct igc_softc *sc)
>  {
> -	struct tx_ring *txr = sc->tx_rings;
> +	struct igc_txring *txr = sc->tx_rings;
>  	int i;
>  
>  	for (i = 0; i < sc->sc_nqueues; i++, txr++) {
> @@ -1895,7 +1897,7 @@ fail:
>   *
>   **********************************************************************/
>  int
> -igc_setup_transmit_ring(struct tx_ring *txr)
> +igc_setup_transmit_ring(struct igc_txring *txr)
>  {
>  	struct igc_softc *sc = txr->sc;
>  
> @@ -1927,7 +1929,7 @@ void
>  igc_initialize_transmit_unit(struct igc_softc *sc)
>  {
>  	struct ifnet *ifp = &sc->sc_ac.ac_if;
> -	struct tx_ring *txr;
> +	struct igc_txring *txr;
>  	struct igc_hw *hw = &sc->hw;
>  	uint64_t bus_addr;
>  	uint32_t tctl, txdctl = 0;
> @@ -1981,7 +1983,7 @@ igc_initialize_transmit_unit(struct igc_
>  void
>  igc_free_transmit_structures(struct igc_softc *sc)
>  {
> -	struct tx_ring *txr = sc->tx_rings;
> +	struct igc_txring *txr = sc->tx_rings;
>  	int i;
>  
>  	for (i = 0; i < sc->sc_nqueues; i++, txr++)
> @@ -1994,7 +1996,7 @@ igc_free_transmit_structures(struct igc_
>   *
>   **********************************************************************/
>  void
> -igc_free_transmit_buffers(struct tx_ring *txr)
> +igc_free_transmit_buffers(struct igc_txring *txr)
>  {
>  	struct igc_softc *sc = txr->sc;
>  	struct igc_tx_buf *txbuf;
> @@ -2035,7 +2037,7 @@ igc_free_transmit_buffers(struct tx_ring
>   **********************************************************************/
>  
>  int
> -igc_tx_ctx_setup(struct tx_ring *txr, struct mbuf *mp, int prod,
> +igc_tx_ctx_setup(struct igc_txring *txr, struct mbuf *mp, int prod,
>      uint32_t *cmd_type_len, uint32_t *olinfo_status)
>  {
>  	struct ether_extracted ext;
> @@ -2140,7 +2142,7 @@ igc_tx_ctx_setup(struct tx_ring *txr, st
>   *
>   **********************************************************************/
>  int
> -igc_allocate_receive_buffers(struct rx_ring *rxr)
> +igc_allocate_receive_buffers(struct igc_rxring *rxr)
>  {
>  	struct igc_softc *sc = rxr->sc;
>  	struct igc_rx_buf *rxbuf;
> @@ -2183,7 +2185,7 @@ fail:
>  int
>  igc_setup_receive_structures(struct igc_softc *sc)
>  {
> -	struct rx_ring *rxr = sc->rx_rings;
> +	struct igc_rxring *rxr = sc->rx_rings;
>  	int i;
>  
>  	for (i = 0; i < sc->sc_nqueues; i++, rxr++) {
> @@ -2203,7 +2205,7 @@ fail:
>   *
>   **********************************************************************/
>  int
> -igc_setup_receive_ring(struct rx_ring *rxr)
> +igc_setup_receive_ring(struct igc_rxring *rxr)
>  {
>  	struct igc_softc *sc = rxr->sc;
>  	struct ifnet *ifp = &sc->sc_ac.ac_if;
> @@ -2238,7 +2240,7 @@ igc_setup_receive_ring(struct rx_ring *r
>  void
>  igc_initialize_receive_unit(struct igc_softc *sc)
>  {
> -        struct rx_ring *rxr = sc->rx_rings;
> +        struct igc_rxring *rxr = sc->rx_rings;
>          struct igc_hw *hw = &sc->hw;
>  	uint32_t rctl, rxcsum, srrctl = 0;
>  	int i;
> @@ -2342,7 +2344,7 @@ igc_initialize_receive_unit(struct igc_s
>  void
>  igc_free_receive_structures(struct igc_softc *sc)
>  {
> -	struct rx_ring *rxr;
> +	struct igc_rxring *rxr;
>  	int i;
>  
>  	for (i = 0, rxr = sc->rx_rings; i < sc->sc_nqueues; i++, rxr++)
> @@ -2358,7 +2360,7 @@ igc_free_receive_structures(struct igc_s
>   *
>   **********************************************************************/
>  void
> -igc_free_receive_buffers(struct rx_ring *rxr)
> +igc_free_receive_buffers(struct igc_rxring *rxr)
>  {
>  	struct igc_softc *sc = rxr->sc;
>  	struct igc_rx_buf *rxbuf;
> Index: dev/pci/if_igc.h
> ===================================================================
> RCS file: /data/mirror/openbsd/cvs/src/sys/dev/pci/if_igc.h,v
> diff -u -p -r1.3 if_igc.h
> --- dev/pci/if_igc.h	6 May 2024 04:25:52 -0000	1.3
> +++ dev/pci/if_igc.h	17 May 2024 20:25:03 -0000
> @@ -250,14 +250,14 @@ struct igc_queue {
>  	char			name[16];
>  	pci_intr_handle_t	ih;
>  	void			*tag;
> -	struct tx_ring		*txr;
> -	struct rx_ring		*rxr;
> +	struct igc_txring	*txr;
> +	struct igc_rxring	*rxr;
>  };
>  
>  /*
>   * The transmit ring, one per tx queue.
>   */
> -struct tx_ring {
> +struct igc_txring {
>  	struct igc_softc	*sc;
>  	struct ifqueue		*ifq;
>  	uint32_t		me;
> @@ -273,7 +273,7 @@ struct tx_ring {
>  /*
>   * The Receive ring, one per rx queue.
>   */
> -struct rx_ring {
> +struct igc_rxring {
>  	struct igc_softc	*sc;
>  	struct ifiqueue		*ifiq;
>  	uint32_t		me;
> @@ -316,8 +316,8 @@ struct igc_softc {
>  	unsigned int		sc_nqueues;
>  	struct igc_queue	*queues;
>  
> -	struct tx_ring		*tx_rings;
> -	struct rx_ring		*rx_rings;
> +	struct igc_txring	*tx_rings;
> +	struct igc_rxring	*rx_rings;
>  
>  	/* Multicast array memory */
>  	uint8_t			*mta;
> Index: dev/pci/if_ix.c
> ===================================================================
> RCS file: /data/mirror/openbsd/cvs/src/sys/dev/pci/if_ix.c,v
> diff -u -p -r1.214 if_ix.c
> --- dev/pci/if_ix.c	13 May 2024 01:15:51 -0000	1.214
> +++ dev/pci/if_ix.c	17 May 2024 20:21:54 -0000
> @@ -131,39 +131,39 @@ void	ixgbe_config_delay_values(struct ix
>  void	ixgbe_add_media_types(struct ix_softc *);
>  void	ixgbe_config_link(struct ix_softc *);
>  
> -int	ixgbe_allocate_transmit_buffers(struct tx_ring *);
> +int	ixgbe_allocate_transmit_buffers(struct ix_txring *);
>  int	ixgbe_setup_transmit_structures(struct ix_softc *);
> -int	ixgbe_setup_transmit_ring(struct tx_ring *);
> +int	ixgbe_setup_transmit_ring(struct ix_txring *);
>  void	ixgbe_initialize_transmit_units(struct ix_softc *);
>  void	ixgbe_free_transmit_structures(struct ix_softc *);
> -void	ixgbe_free_transmit_buffers(struct tx_ring *);
> +void	ixgbe_free_transmit_buffers(struct ix_txring *);
>  
> -int	ixgbe_allocate_receive_buffers(struct rx_ring *);
> +int	ixgbe_allocate_receive_buffers(struct ix_rxring *);
>  int	ixgbe_setup_receive_structures(struct ix_softc *);
> -int	ixgbe_setup_receive_ring(struct rx_ring *);
> +int	ixgbe_setup_receive_ring(struct ix_rxring *);
>  void	ixgbe_initialize_receive_units(struct ix_softc *);
>  void	ixgbe_free_receive_structures(struct ix_softc *);
> -void	ixgbe_free_receive_buffers(struct rx_ring *);
> +void	ixgbe_free_receive_buffers(struct ix_rxring *);
>  void	ixgbe_initialize_rss_mapping(struct ix_softc *);
> -int	ixgbe_rxfill(struct rx_ring *);
> +int	ixgbe_rxfill(struct ix_rxring *);
>  void	ixgbe_rxrefill(void *);
>  
>  int	ixgbe_intr(struct ix_softc *sc);
>  void	ixgbe_enable_intr(struct ix_softc *);
>  void	ixgbe_disable_intr(struct ix_softc *);
> -int	ixgbe_txeof(struct tx_ring *);
> -int	ixgbe_rxeof(struct rx_ring *);
> +int	ixgbe_txeof(struct ix_txring *);
> +int	ixgbe_rxeof(struct ix_rxring *);
>  void	ixgbe_rx_offload(uint32_t, uint16_t, struct mbuf *);
>  void	ixgbe_iff(struct ix_softc *);
>  void	ixgbe_map_queue_statistics(struct ix_softc *);
>  void	ixgbe_update_link_status(struct ix_softc *);
> -int	ixgbe_get_buf(struct rx_ring *, int);
> -int	ixgbe_encap(struct tx_ring *, struct mbuf *);
> +int	ixgbe_get_buf(struct ix_rxring *, int);
> +int	ixgbe_encap(struct ix_txring *, struct mbuf *);
>  int	ixgbe_dma_malloc(struct ix_softc *, bus_size_t,
>  		    struct ixgbe_dma_alloc *, int);
>  void	ixgbe_dma_free(struct ix_softc *, struct ixgbe_dma_alloc *);
>  static int
> -	ixgbe_tx_ctx_setup(struct tx_ring *, struct mbuf *, uint32_t *,
> +	ixgbe_tx_ctx_setup(struct ix_txring *, struct mbuf *, uint32_t *,
>  	    uint32_t *);
>  void	ixgbe_set_ivar(struct ix_softc *, uint8_t, uint8_t, int8_t);
>  void	ixgbe_configure_ivars(struct ix_softc *);
> @@ -188,8 +188,8 @@ int	ixgbe_queue_intr(void *);
>  
>  #if NKSTAT > 0
>  static void	ix_kstats(struct ix_softc *);
> -static void	ix_rxq_kstats(struct ix_softc *, struct rx_ring *);
> -static void	ix_txq_kstats(struct ix_softc *, struct tx_ring *);
> +static void	ix_rxq_kstats(struct ix_softc *, struct ix_rxring *);
> +static void	ix_txq_kstats(struct ix_softc *, struct ix_txring *);
>  static void	ix_kstats_tick(void *);
>  #endif
>  
> @@ -451,7 +451,7 @@ ixgbe_start(struct ifqueue *ifq)
>  {
>  	struct ifnet		*ifp = ifq->ifq_if;
>  	struct ix_softc		*sc = ifp->if_softc;
> -	struct tx_ring		*txr = ifq->ifq_softc;
> +	struct ix_txring	*txr = ifq->ifq_softc;
>  	struct mbuf  		*m_head;
>  	unsigned int		 head, free, used;
>  	int			 post = 0;
> @@ -639,7 +639,7 @@ int
>  ixgbe_rxrinfo(struct ix_softc *sc, struct if_rxrinfo *ifri)
>  {
>  	struct if_rxring_info *ifr, ifr1;
> -	struct rx_ring *rxr;
> +	struct ix_rxring *rxr;
>  	int error, i;
>  	u_int n = 0;
>  
> @@ -673,7 +673,7 @@ void
>  ixgbe_watchdog(struct ifnet * ifp)
>  {
>  	struct ix_softc *sc = (struct ix_softc *)ifp->if_softc;
> -	struct tx_ring *txr = sc->tx_rings;
> +	struct ix_txring *txr = sc->tx_rings;
>  	struct ixgbe_hw *hw = &sc->hw;
>  	int		tx_hang = FALSE;
>  	int		i;
> @@ -735,7 +735,7 @@ ixgbe_init(void *arg)
>  {
>  	struct ix_softc	*sc = (struct ix_softc *)arg;
>  	struct ifnet	*ifp = &sc->arpcom.ac_if;
> -	struct rx_ring	*rxr = sc->rx_rings;
> +	struct ix_rxring	*rxr = sc->rx_rings;
>  	uint32_t	 k, txdctl, rxdctl, rxctrl, mhadd, itr;
>  	int		 i, s, err;
>  
> @@ -1076,8 +1076,8 @@ ixgbe_queue_intr(void *vque)
>  	struct ix_queue *que = vque;
>  	struct ix_softc	*sc = que->sc;
>  	struct ifnet	*ifp = &sc->arpcom.ac_if;
> -	struct rx_ring	*rxr = que->rxr;
> -	struct tx_ring	*txr = que->txr;
> +	struct ix_rxring	*rxr = que->rxr;
> +	struct ix_txring	*txr = que->txr;
>  
>  	if (ISSET(ifp->if_flags, IFF_RUNNING)) {
>  		ixgbe_rxeof(rxr);
> @@ -1101,8 +1101,8 @@ ixgbe_legacy_intr(void *arg)
>  {
>  	struct ix_softc	*sc = (struct ix_softc *)arg;
>  	struct ifnet	*ifp = &sc->arpcom.ac_if;
> -	struct rx_ring	*rxr = sc->rx_rings;
> -	struct tx_ring	*txr = sc->tx_rings;
> +	struct ix_rxring	*rxr = sc->rx_rings;
> +	struct ix_txring	*txr = sc->tx_rings;
>  	int rv;
>  
>  	rv = ixgbe_intr(sc);
> @@ -1423,7 +1423,7 @@ ixgbe_media_change(struct ifnet *ifp)
>   **********************************************************************/
>  
>  int
> -ixgbe_encap(struct tx_ring *txr, struct mbuf *m_head)
> +ixgbe_encap(struct ix_txring *txr, struct mbuf *m_head)
>  {
>  	struct ix_softc *sc = txr->sc;
>  	uint32_t	olinfo_status = 0, cmd_type_len;
> @@ -1953,8 +1953,8 @@ ixgbe_setup_interface(struct ix_softc *s
>  	for (i = 0; i < sc->num_queues; i++) {
>  		struct ifqueue *ifq = ifp->if_ifqs[i];
>  		struct ifiqueue *ifiq = ifp->if_iqs[i];
> -		struct tx_ring *txr = &sc->tx_rings[i];
> -		struct rx_ring *rxr = &sc->rx_rings[i];
> +		struct ix_txring *txr = &sc->tx_rings[i];
> +		struct ix_rxring *rxr = &sc->rx_rings[i];
>  
>  		ifq->ifq_softc = txr;
>  		txr->ifq = ifq;
> @@ -2142,8 +2142,8 @@ ixgbe_allocate_queues(struct ix_softc *s
>  {
>  	struct ifnet	*ifp = &sc->arpcom.ac_if;
>  	struct ix_queue *que;
> -	struct tx_ring *txr;
> -	struct rx_ring *rxr;
> +	struct ix_txring *txr;
> +	struct ix_rxring *rxr;
>  	int rsize, tsize;
>  	int txconf = 0, rxconf = 0, i;
>  
> @@ -2156,14 +2156,14 @@ ixgbe_allocate_queues(struct ix_softc *s
>  
>  	/* Then allocate the TX ring struct memory */
>  	if (!(sc->tx_rings = mallocarray(sc->num_queues,
> -	    sizeof(struct tx_ring), M_DEVBUF, M_NOWAIT | M_ZERO))) {
> +	    sizeof(struct ix_txring), M_DEVBUF, M_NOWAIT | M_ZERO))) {
>  		printf("%s: Unable to allocate TX ring memory\n", ifp->if_xname);
>  		goto fail;
>  	}
>  
>  	/* Next allocate the RX */
>  	if (!(sc->rx_rings = mallocarray(sc->num_queues,
> -	    sizeof(struct rx_ring), M_DEVBUF, M_NOWAIT | M_ZERO))) {
> +	    sizeof(struct ix_rxring), M_DEVBUF, M_NOWAIT | M_ZERO))) {
>  		printf("%s: Unable to allocate RX ring memory\n", ifp->if_xname);
>  		goto rx_fail;
>  	}
> @@ -2235,10 +2235,10 @@ err_rx_desc:
>  err_tx_desc:
>  	for (txr = sc->tx_rings; txconf > 0; txr++, txconf--)
>  		ixgbe_dma_free(sc, &txr->txdma);
> -	free(sc->rx_rings, M_DEVBUF, sc->num_queues * sizeof(struct rx_ring));
> +	free(sc->rx_rings, M_DEVBUF, sc->num_queues * sizeof(struct ix_rxring));
>  	sc->rx_rings = NULL;
>  rx_fail:
> -	free(sc->tx_rings, M_DEVBUF, sc->num_queues * sizeof(struct tx_ring));
> +	free(sc->tx_rings, M_DEVBUF, sc->num_queues * sizeof(struct ix_txring));
>  	sc->tx_rings = NULL;
>  fail:
>  	return (ENOMEM);
> @@ -2252,7 +2252,7 @@ fail:
>   *
>   **********************************************************************/
>  int
> -ixgbe_allocate_transmit_buffers(struct tx_ring *txr)
> +ixgbe_allocate_transmit_buffers(struct ix_txring *txr)
>  {
>  	struct ix_softc 	*sc = txr->sc;
>  	struct ifnet		*ifp = &sc->arpcom.ac_if;
> @@ -2293,7 +2293,7 @@ fail:
>   *
>   **********************************************************************/
>  int
> -ixgbe_setup_transmit_ring(struct tx_ring *txr)
> +ixgbe_setup_transmit_ring(struct ix_txring *txr)
>  {
>  	struct ix_softc		*sc = txr->sc;
>  	int			 error;
> @@ -2325,7 +2325,7 @@ ixgbe_setup_transmit_ring(struct tx_ring
>  int
>  ixgbe_setup_transmit_structures(struct ix_softc *sc)
>  {
> -	struct tx_ring *txr = sc->tx_rings;
> +	struct ix_txring *txr = sc->tx_rings;
>  	int		i, error;
>  
>  	for (i = 0; i < sc->num_queues; i++, txr++) {
> @@ -2348,7 +2348,7 @@ void
>  ixgbe_initialize_transmit_units(struct ix_softc *sc)
>  {
>  	struct ifnet	*ifp = &sc->arpcom.ac_if;
> -	struct tx_ring	*txr;
> +	struct ix_txring	*txr;
>  	struct ixgbe_hw	*hw = &sc->hw;
>  	int		 i;
>  	uint64_t	 tdba;
> @@ -2430,7 +2430,7 @@ ixgbe_initialize_transmit_units(struct i
>  void
>  ixgbe_free_transmit_structures(struct ix_softc *sc)
>  {
> -	struct tx_ring *txr = sc->tx_rings;
> +	struct ix_txring *txr = sc->tx_rings;
>  	int		i;
>  
>  	for (i = 0; i < sc->num_queues; i++, txr++)
> @@ -2443,7 +2443,7 @@ ixgbe_free_transmit_structures(struct ix
>   *
>   **********************************************************************/
>  void
> -ixgbe_free_transmit_buffers(struct tx_ring *txr)
> +ixgbe_free_transmit_buffers(struct ix_txring *txr)
>  {
>  	struct ix_softc *sc = txr->sc;
>  	struct ixgbe_tx_buf *tx_buffer;
> @@ -2561,7 +2561,7 @@ ixgbe_tx_offload(struct mbuf *mp, uint32
>  }
>  
>  static int
> -ixgbe_tx_ctx_setup(struct tx_ring *txr, struct mbuf *mp,
> +ixgbe_tx_ctx_setup(struct ix_txring *txr, struct mbuf *mp,
>      uint32_t *cmd_type_len, uint32_t *olinfo_status)
>  {
>  	struct ixgbe_adv_tx_context_desc *TXD;
> @@ -2614,7 +2614,7 @@ ixgbe_tx_ctx_setup(struct tx_ring *txr, 
>   *
>   **********************************************************************/
>  int
> -ixgbe_txeof(struct tx_ring *txr)
> +ixgbe_txeof(struct ix_txring *txr)
>  {
>  	struct ix_softc			*sc = txr->sc;
>  	struct ifqueue			*ifq = txr->ifq;
> @@ -2684,7 +2684,7 @@ ixgbe_txeof(struct tx_ring *txr)
>   *
>   **********************************************************************/
>  int
> -ixgbe_get_buf(struct rx_ring *rxr, int i)
> +ixgbe_get_buf(struct ix_rxring *rxr, int i)
>  {
>  	struct ix_softc		*sc = rxr->sc;
>  	struct ixgbe_rx_buf	*rxbuf;
> @@ -2733,7 +2733,7 @@ ixgbe_get_buf(struct rx_ring *rxr, int i
>   *
>   **********************************************************************/
>  int
> -ixgbe_allocate_receive_buffers(struct rx_ring *rxr)
> +ixgbe_allocate_receive_buffers(struct ix_rxring *rxr)
>  {
>  	struct ix_softc		*sc = rxr->sc;
>  	struct ifnet		*ifp = &sc->arpcom.ac_if;
> @@ -2774,7 +2774,7 @@ fail:
>   *
>   **********************************************************************/
>  int
> -ixgbe_setup_receive_ring(struct rx_ring *rxr)
> +ixgbe_setup_receive_ring(struct ix_rxring *rxr)
>  {
>  	struct ix_softc		*sc = rxr->sc;
>  	struct ifnet		*ifp = &sc->arpcom.ac_if;
> @@ -2806,7 +2806,7 @@ ixgbe_setup_receive_ring(struct rx_ring 
>  }
>  
>  int
> -ixgbe_rxfill(struct rx_ring *rxr)
> +ixgbe_rxfill(struct ix_rxring *rxr)
>  {
>  	struct ix_softc *sc = rxr->sc;
>  	int		 post = 0;
> @@ -2842,7 +2842,7 @@ ixgbe_rxfill(struct rx_ring *rxr)
>  void
>  ixgbe_rxrefill(void *xrxr)
>  {
> -	struct rx_ring *rxr = xrxr;
> +	struct ix_rxring *rxr = xrxr;
>  	struct ix_softc *sc = rxr->sc;
>  
>  	if (ixgbe_rxfill(rxr)) {
> @@ -2862,7 +2862,7 @@ ixgbe_rxrefill(void *xrxr)
>  int
>  ixgbe_setup_receive_structures(struct ix_softc *sc)
>  {
> -	struct rx_ring *rxr = sc->rx_rings;
> +	struct ix_rxring *rxr = sc->rx_rings;
>  	int i;
>  
>  	for (i = 0; i < sc->num_queues; i++, rxr++)
> @@ -2886,7 +2886,7 @@ void
>  ixgbe_initialize_receive_units(struct ix_softc *sc)
>  {
>  	struct ifnet	*ifp = &sc->arpcom.ac_if;
> -	struct rx_ring	*rxr = sc->rx_rings;
> +	struct ix_rxring	*rxr = sc->rx_rings;
>  	struct ixgbe_hw	*hw = &sc->hw;
>  	uint32_t	bufsz, fctrl, srrctl, rxcsum, rdrxctl;
>  	uint32_t	hlreg;
> @@ -3061,7 +3061,7 @@ ixgbe_initialize_rss_mapping(struct ix_s
>  void
>  ixgbe_free_receive_structures(struct ix_softc *sc)
>  {
> -	struct rx_ring *rxr;
> +	struct ix_rxring *rxr;
>  	int		i;
>  
>  	for (i = 0, rxr = sc->rx_rings; i < sc->num_queues; i++, rxr++)
> @@ -3077,7 +3077,7 @@ ixgbe_free_receive_structures(struct ix_
>   *
>   **********************************************************************/
>  void
> -ixgbe_free_receive_buffers(struct rx_ring *rxr)
> +ixgbe_free_receive_buffers(struct ix_rxring *rxr)
>  {
>  	struct ix_softc		*sc;
>  	struct ixgbe_rx_buf	*rxbuf;
> @@ -3116,7 +3116,7 @@ ixgbe_free_receive_buffers(struct rx_rin
>   *
>   *********************************************************************/
>  int
> -ixgbe_rxeof(struct rx_ring *rxr)
> +ixgbe_rxeof(struct ix_rxring *rxr)
>  {
>  	struct ix_softc 	*sc = rxr->sc;
>  	struct ifnet   		*ifp = &sc->arpcom.ac_if;
> @@ -3850,7 +3850,7 @@ ix_kstats(struct ix_softc *sc)
>  }
>  
>  static void
> -ix_rxq_kstats(struct ix_softc *sc, struct rx_ring *rxr)
> +ix_rxq_kstats(struct ix_softc *sc, struct ix_rxring *rxr)
>  {
>  	struct ix_rxq_kstats *stats;
>  	struct kstat *ks;
> @@ -3874,7 +3874,7 @@ ix_rxq_kstats(struct ix_softc *sc, struc
>  }
>  
>  static void
> -ix_txq_kstats(struct ix_softc *sc, struct tx_ring *txr)
> +ix_txq_kstats(struct ix_softc *sc, struct ix_txring *txr)
>  {
>  	struct ix_txq_kstats *stats;
>  	struct kstat *ks;
> @@ -3980,7 +3980,7 @@ int
>  ix_rxq_kstats_read(struct kstat *ks)
>  {
>  	struct ix_rxq_kstats *stats = ks->ks_data;
> -	struct rx_ring *rxr = ks->ks_softc;
> +	struct ix_rxring *rxr = ks->ks_softc;
>  	struct ix_softc *sc = rxr->sc;
>  	struct ixgbe_hw	*hw = &sc->hw;
>  	uint32_t i = rxr->me;
> @@ -4007,7 +4007,7 @@ int
>  ix_txq_kstats_read(struct kstat *ks)
>  {
>  	struct ix_txq_kstats *stats = ks->ks_data;
> -	struct tx_ring *txr = ks->ks_softc;
> +	struct ix_txring *txr = ks->ks_softc;
>  	struct ix_softc *sc = txr->sc;
>  	struct ixgbe_hw	*hw = &sc->hw;
>  	uint32_t i = txr->me;
> Index: dev/pci/if_ix.h
> ===================================================================
> RCS file: /data/mirror/openbsd/cvs/src/sys/dev/pci/if_ix.h,v
> diff -u -p -r1.46 if_ix.h
> --- dev/pci/if_ix.h	4 Aug 2023 10:58:27 -0000	1.46
> +++ dev/pci/if_ix.h	17 May 2024 20:20:40 -0000
> @@ -158,14 +158,14 @@ struct ix_queue {
>  	char			name[8];
>  	pci_intr_handle_t	ih;
>  	void			*tag;
> -	struct tx_ring		*txr;
> -	struct rx_ring		*rxr;
> +	struct ix_txring	*txr;
> +	struct ix_rxring	*rxr;
>  };
>  
>  /*
>   * The transmit ring, one per tx queue
>   */
> -struct tx_ring {
> +struct ix_txring {
>  	struct ix_softc		*sc;
>  	struct ifqueue		*ifq;
>  	uint32_t		me;
> @@ -190,7 +190,7 @@ struct tx_ring {
>  /*
>   * The Receive ring, one per rx queue
>   */
> -struct rx_ring {
> +struct ix_rxring {
>  	struct ix_softc		*sc;
>  	struct ifiqueue		*ifiq;
>  	uint32_t		me;
> @@ -262,14 +262,14 @@ struct ix_softc {
>  	 * Transmit rings:
>  	 *	Allocated at run time, an array of rings.
>  	 */
> -	struct tx_ring		*tx_rings;
> +	struct ix_txring	*tx_rings;
>  	int			num_tx_desc;
>  
>  	/*
>  	 * Receive rings:
>  	 *	Allocated at run time, an array of rings.
>  	 */
> -	struct rx_ring		*rx_rings;
> +	struct ix_rxring	*rx_rings;
>  	uint64_t		que_mask;
>  	int			num_rx_desc;
>  
>