Revert a portion of kern_malloc.c:1.99, which (in addition to adding
malloc profiling) also modified the set of pre-defined buckets for the memory allocator. For reasons unknown to me, this resulted in extensive memory corruption in the kernel, in particular on SMP boxes, so I'm committing this work-around until Jeff gets a chance to debug it properly. David Wolfskill pointed me at this commit as the one that might be a problem; I've been running this code on two dual-processor burn-in boxes for about 12 hours now, and the rate of panics due to memory corruption has dropped to zero (from one every five minutes). Hopefully not treading on the toes of: jeff
This commit is contained in:
parent
aabc5d3d44
commit
bd796eb25f
@ -90,7 +90,7 @@ static char *kmemlimit;
|
||||
#define KMEM_ZBASE 16
|
||||
#define KMEM_ZMASK (KMEM_ZBASE - 1)
|
||||
|
||||
#define KMEM_ZMAX 8192
|
||||
#define KMEM_ZMAX 65536
|
||||
#define KMEM_ZSIZE (KMEM_ZMAX >> KMEM_ZSHIFT)
|
||||
static u_int8_t kmemsize[KMEM_ZSIZE + 1];
|
||||
|
||||
@ -110,6 +110,8 @@ struct {
|
||||
{2048, "2048", NULL},
|
||||
{4096, "4096", NULL},
|
||||
{8192, "8192", NULL},
|
||||
{32768, "32768", NULL},
|
||||
{65536, "65536", NULL},
|
||||
{0, NULL},
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user