diff --git a/drivers/pktmem.c b/drivers/pktmem.c index 173b0bf..b2497b7 100644 --- a/drivers/pktmem.c +++ b/drivers/pktmem.c @@ -8,6 +8,7 @@ * * %LICENSE% */ + #include "physmmap.h" #include "pktmem.h" #include "lwip/mem.h" @@ -16,17 +17,17 @@ #include #include +#include #define CACHE_LINE_SIZE 64 -#define PAGE_SIZE 4096 #define TRUE_LRU 0 -#define PKT_BUF_SIZE (2048 - CACHE_LINE_SIZE) -#define PKT_BUF_CNT (size_t)((PAGE_SIZE - CACHE_LINE_SIZE) / PKT_BUF_SIZE) -#define PKT_BUF_IDX 11 // log2(PAGE_SIZE) - ceil(log2(PKT_BUF_CNT)) +#define PKT_BUF_SIZE (2048 - CACHE_LINE_SIZE) +#define PKT_BUF_CNT (size_t)((_PAGE_SIZE - CACHE_LINE_SIZE) / PKT_BUF_SIZE) +#define PKT_BUF_IDX 11 /* log2(_PAGE_SIZE) - ceil(log2(PKT_BUF_CNT)) */ #define PKT_BUF_CACHE_SIZE 16 @@ -65,8 +66,8 @@ static void net_listDel(buf_page_head_t *ph) static void net_freePktBuf(void *p) { - buf_page_head_t *ph = (void *)((uintptr_t)p & ~(PAGE_SIZE - 1)); - unsigned which = ((size_t)p & (PAGE_SIZE - 1)) >> PKT_BUF_IDX; + buf_page_head_t *ph = (void *)((uintptr_t)p & ~(_PAGE_SIZE - 1)); + unsigned which = ((size_t)p & (_PAGE_SIZE - 1)) >> PKT_BUF_IDX; unsigned old_mask; old_mask = ph->free_mask; @@ -76,7 +77,7 @@ static void net_freePktBuf(void *p) if (pkt_bufs_free > PKT_BUF_CACHE_SIZE && ph->free_mask == (1 << PKT_BUF_CNT) - 1) { if (old_mask) net_listDel(ph); - munmap(ph, PAGE_SIZE); + munmap(ph, _PAGE_SIZE); pkt_bufs_free -= PKT_BUF_CNT; return; } @@ -113,7 +114,7 @@ static ssize_t net_allocPktBuf(void **bufp) if (!pkt_bufs_free) { SYS_ARCH_UNPROTECT(old_level); - ph = dmammap(PAGE_SIZE); + ph = dmammap(_PAGE_SIZE); if (!ph) { printf("mmap: no memory?\n"); return 0;