From 0380eba5f734e6881ae95155192c5c2d3cc949ca Mon Sep 17 00:00:00 2001 From: Weongyo Jeong Date: Thu, 16 Oct 2008 08:24:02 +0000 Subject: MFC r183587: sc->ndis_txidx should be cycle between 0 and sc->ndis_maxpkts, not NDIS_TXPKTS and don't allocate unused extra spaces for sc->ndis_txarray and sc->ndis_txpool. PR: kern/127644 Submitted by: Antoine Pelisse Approved by: re (gnn) --- sys/dev/if_ndis/if_ndis.c | 4 ++-- sys/dev/if_ndis/if_ndisvar.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'sys/dev') diff --git a/sys/dev/if_ndis/if_ndis.c b/sys/dev/if_ndis/if_ndis.c index d50bb05ce324..07d70aa1eb3f 100644 --- a/sys/dev/if_ndis/if_ndis.c +++ b/sys/dev/if_ndis/if_ndis.c @@ -660,12 +660,12 @@ ndis_attach(dev) sc->ndis_maxpkts = 10; sc->ndis_txarray = malloc(sizeof(ndis_packet *) * - NDIS_TXPKTS, M_DEVBUF, M_NOWAIT|M_ZERO); + sc->ndis_maxpkts, M_DEVBUF, M_NOWAIT|M_ZERO); /* Allocate a pool of ndis_packets for TX encapsulation. */ NdisAllocatePacketPool(&i, &sc->ndis_txpool, - NDIS_TXPKTS, PROTOCOL_RESERVED_SIZE_IN_PACKET); + sc->ndis_maxpkts, PROTOCOL_RESERVED_SIZE_IN_PACKET); if (i != NDIS_STATUS_SUCCESS) { sc->ndis_txpool = NULL; diff --git a/sys/dev/if_ndis/if_ndisvar.h b/sys/dev/if_ndis/if_ndisvar.h index f4382c6dfce6..79d89c5a0d97 100644 --- a/sys/dev/if_ndis/if_ndisvar.h +++ b/sys/dev/if_ndis/if_ndisvar.h @@ -87,7 +87,7 @@ TAILQ_HEAD(nch, ndis_cfglist); #define NDIS_TXPKTS 64 #define NDIS_INC(x) \ - (x)->ndis_txidx = ((x)->ndis_txidx + 1) % NDIS_TXPKTS + (x)->ndis_txidx = ((x)->ndis_txidx + 1) % (x)->ndis_maxpkts #if __FreeBSD_version < 600007 #define arpcom ic.ic_ac -- cgit v1.3