summaryrefslogtreecommitdiffstats
path: root/sys/dev/hatm/if_hatmvar.h
diff options
context:
space:
mode:
authorharti <harti@FreeBSD.org>2003-10-29 12:59:44 +0000
committerharti <harti@FreeBSD.org>2003-10-29 12:59:44 +0000
commit568c57f368a5b09aa3cac9b6d7ddb6fae11059c0 (patch)
tree9d42396102479ef0a920fb92a586c9ed15b548c1 /sys/dev/hatm/if_hatmvar.h
parent36edae8e0d6caa4c38b5624886e0b8a21fc77870 (diff)
downloadFreeBSD-src-568c57f368a5b09aa3cac9b6d7ddb6fae11059c0.zip
FreeBSD-src-568c57f368a5b09aa3cac9b6d7ddb6fae11059c0.tar.gz
Get rid of the mutexes for the exernal buffer free lists. Use
atomic instructions instead. Remove the stuff used to track whether an external mbuf travels through the system. This is temporary only and will come back soon.
Diffstat (limited to 'sys/dev/hatm/if_hatmvar.h')
-rw-r--r--sys/dev/hatm/if_hatmvar.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/sys/dev/hatm/if_hatmvar.h b/sys/dev/hatm/if_hatmvar.h
index 694dad1..184d98b 100644
--- a/sys/dev/hatm/if_hatmvar.h
+++ b/sys/dev/hatm/if_hatmvar.h
@@ -239,7 +239,6 @@ SLIST_HEAD(tpd_list, tpd);
/* each allocated page has one of these structures at its very end. */
struct mbuf_page_hdr {
uint8_t card[32]; /* bitmap for on-card */
- uint8_t used[32]; /* bitmap for used but not on-card */
uint16_t nchunks; /* chunks on this page */
bus_dmamap_t map; /* the DMA MAP */
uint32_t phys; /* physical base address */
@@ -292,9 +291,8 @@ struct mbuf1_chunk {
};
struct mbufx_free {
- SLIST_ENTRY(mbufx_free) link;
+ struct mbufx_free *link;
};
-SLIST_HEAD(mbufx_free_list, mbufx_free);
/*==================================================================*/
@@ -413,10 +411,7 @@ struct hatm_softc {
bus_dma_tag_t mbuf_tag;
struct mbuf_page **mbuf_pages;
u_int mbuf_npages;
- struct mtx mbuf0_mtx;
- struct mbufx_free_list mbuf0_list;
- struct mtx mbuf1_mtx;
- struct mbufx_free_list mbuf1_list;
+ struct mbufx_free *mbuf_list[2];
/* mbuf cluster tracking and mapping for group 0 */
struct mbuf **lbufs; /* mbufs */
OpenPOWER on IntegriCloud