diff options
| author | KATO Takenori <kato@FreeBSD.org> | 1997-01-18 10:21:45 +0000 |
|---|---|---|
| committer | KATO Takenori <kato@FreeBSD.org> | 1997-01-18 10:21:45 +0000 |
| commit | ece9035f435004c26d890aa6f7a722fcd26378ad (patch) | |
| tree | 63b9e644958461e9a1818957c141d5b8b53f5e7e /sys | |
| parent | caff6392623e1b60fe4534c0e3fc40b3c2164e9a (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/pc98/i386/machdep.c | 17 | ||||
| -rw-r--r-- | sys/pc98/pc98/machdep.c | 17 |
2 files changed, 16 insertions, 18 deletions
diff --git a/sys/pc98/i386/machdep.c b/sys/pc98/i386/machdep.c index 726f7b70922c..b75d3fc333db 100644 --- a/sys/pc98/i386/machdep.c +++ b/sys/pc98/i386/machdep.c @@ -351,16 +351,15 @@ again: * Finally, allocate mbuf pool. Since mclrefcnt is an off-size * we use the more space efficient malloc in place of kmem_alloc. */ - mclrefcnt = (char *)malloc(nmbclusters+PAGE_SIZE/MCLBYTES, - M_MBUF, M_NOWAIT); - bzero(mclrefcnt, nmbclusters+PAGE_SIZE/MCLBYTES); - mcl_map = kmem_suballoc(kmem_map, (vm_offset_t *)&mbutl, &maxaddr, - nmbclusters * MCLBYTES, FALSE); { - vm_size_t mb_map_size; - mb_map_size = nmbufs * MSIZE; - mb_map = kmem_suballoc(kmem_map, &minaddr, &maxaddr, - round_page(mb_map_size), FALSE); + vm_offset_t mb_map_size; + + mb_map_size = nmbufs * MSIZE + nmbclusters * MCLBYTES; + mb_map_size = roundup2(mb_map_size, max(MCLBYTES, PAGE_SIZE)); + mclrefcnt = malloc(mb_map_size / MCLBYTES, M_MBUF, M_NOWAIT); + bzero(mclrefcnt, mb_map_size / MCLBYTES); + mb_map = kmem_suballoc(kmem_map, (vm_offset_t *)&mbutl, &maxaddr, + mb_map_size, FALSE); } /* diff --git a/sys/pc98/pc98/machdep.c b/sys/pc98/pc98/machdep.c index 726f7b70922c..b75d3fc333db 100644 --- a/sys/pc98/pc98/machdep.c +++ b/sys/pc98/pc98/machdep.c @@ -351,16 +351,15 @@ again: * Finally, allocate mbuf pool. Since mclrefcnt is an off-size * we use the more space efficient malloc in place of kmem_alloc. */ - mclrefcnt = (char *)malloc(nmbclusters+PAGE_SIZE/MCLBYTES, - M_MBUF, M_NOWAIT); - bzero(mclrefcnt, nmbclusters+PAGE_SIZE/MCLBYTES); - mcl_map = kmem_suballoc(kmem_map, (vm_offset_t *)&mbutl, &maxaddr, - nmbclusters * MCLBYTES, FALSE); { - vm_size_t mb_map_size; - mb_map_size = nmbufs * MSIZE; - mb_map = kmem_suballoc(kmem_map, &minaddr, &maxaddr, - round_page(mb_map_size), FALSE); + vm_offset_t mb_map_size; + + mb_map_size = nmbufs * MSIZE + nmbclusters * MCLBYTES; + mb_map_size = roundup2(mb_map_size, max(MCLBYTES, PAGE_SIZE)); + mclrefcnt = malloc(mb_map_size / MCLBYTES, M_MBUF, M_NOWAIT); + bzero(mclrefcnt, mb_map_size / MCLBYTES); + mb_map = kmem_suballoc(kmem_map, (vm_offset_t *)&mbutl, &maxaddr, + mb_map_size, FALSE); } /* |
