subr_blist.c (111119) | subr_blist.c (116182) |
---|---|
1 | |
2/* 3 * BLIST.C - Bitmap allocator/deallocator, using a radix tree with hinting 4 * 5 * (c)Copyright 1998, Matthew Dillon. Terms for use and redistribution 6 * are covered by the BSD Copyright as found in /usr/src/COPYRIGHT. 7 * 8 * This module implements a general bitmap allocator/deallocator. The 9 * allocator eats around 2 bits per 'block'. The module does not --- 44 unchanged lines hidden (view full) --- 54 * BLIST_BMAP_RADIX blocks per call. It will panic with 'allocation too 55 * large' if you try. This is an area that could use improvement. The 56 * radix is large enough that this restriction does not effect the swap 57 * system, though. Currently only the allocation code is effected by 58 * this algorithmic unfeature. The freeing code can handle arbitrary 59 * ranges. 60 * 61 * This code can be compiled stand-alone for debugging. | 1/* 2 * BLIST.C - Bitmap allocator/deallocator, using a radix tree with hinting 3 * 4 * (c)Copyright 1998, Matthew Dillon. Terms for use and redistribution 5 * are covered by the BSD Copyright as found in /usr/src/COPYRIGHT. 6 * 7 * This module implements a general bitmap allocator/deallocator. The 8 * allocator eats around 2 bits per 'block'. The module does not --- 44 unchanged lines hidden (view full) --- 53 * BLIST_BMAP_RADIX blocks per call. It will panic with 'allocation too 54 * large' if you try. This is an area that could use improvement. The 55 * radix is large enough that this restriction does not effect the swap 56 * system, though. Currently only the allocation code is effected by 57 * this algorithmic unfeature. The freeing code can handle arbitrary 58 * ranges. 59 * 60 * This code can be compiled stand-alone for debugging. |
62 * 63 * $FreeBSD: head/sys/kern/subr_blist.c 111119 2003-02-19 05:47:46Z imp $ | |
64 */ 65 | 61 */ 62 |
63#include <sys/cdefs.h> 64__FBSDID("$FreeBSD: head/sys/kern/subr_blist.c 116182 2003-06-11 00:56:59Z obrien $"); 65 |
|
66#ifdef _KERNEL 67 68#include <sys/param.h> 69#include <sys/systm.h> 70#include <sys/lock.h> 71#include <sys/kernel.h> 72#include <sys/blist.h> 73#include <sys/malloc.h> --- 1007 unchanged lines hidden --- | 66#ifdef _KERNEL 67 68#include <sys/param.h> 69#include <sys/systm.h> 70#include <sys/lock.h> 71#include <sys/kernel.h> 72#include <sys/blist.h> 73#include <sys/malloc.h> --- 1007 unchanged lines hidden --- |