diff options
| author | Stefan Eßer <se@FreeBSD.org> | 2005-01-01 19:05:46 +0000 |
|---|---|---|
| committer | Stefan Eßer <se@FreeBSD.org> | 2005-01-01 19:05:46 +0000 |
| commit | b67e92b0388e95a238984c5cebaa954e6ee7e951 (patch) | |
| tree | d1d94fa506245829b78bdbe30a7111cf53b4a439 /sys/dev/sym | |
| parent | 9a706e4158416b872fcf1e19eb2b334f54762206 (diff) | |
Notes
Diffstat (limited to 'sys/dev/sym')
| -rw-r--r-- | sys/dev/sym/sym_hipd.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/dev/sym/sym_hipd.c b/sys/dev/sym/sym_hipd.c index ced33f34c166..a7376712a351 100644 --- a/sys/dev/sym/sym_hipd.c +++ b/sys/dev/sym/sym_hipd.c @@ -431,7 +431,11 @@ static void MDELAY(int ms) { while (ms--) UDELAY(1000); } */ #define MEMO_SHIFT 4 /* 16 bytes minimum memory chunk */ +#ifndef __amd64__ #define MEMO_PAGE_ORDER 0 /* 1 PAGE maximum */ +#else +#define MEMO_PAGE_ORDER 1 /* 2 PAGEs maximum on amd64 */ +#endif #if 0 #define MEMO_FREE_UNUSED /* Free unused pages immediately */ #endif @@ -440,8 +444,14 @@ static void MDELAY(int ms) { while (ms--) UDELAY(1000); } #define MEMO_CLUSTER_SIZE (1UL << MEMO_CLUSTER_SHIFT) #define MEMO_CLUSTER_MASK (MEMO_CLUSTER_SIZE-1) +#ifndef __amd64__ #define get_pages() malloc(MEMO_CLUSTER_SIZE, M_DEVBUF, M_NOWAIT) #define free_pages(p) free((p), M_DEVBUF) +#else +#define get_pages() contigmalloc(MEMO_CLUSTER_SIZE, M_DEVBUF, \ + 0, 0, 1LL << 32, PAGE_SIZE, 1LL << 32) +#define free_pages(p) contigfree((p), MEMO_CLUSTER_SIZE, M_DEVBUF) +#endif typedef u_long m_addr_t; /* Enough bits to bit-hack addresses */ |
