diff --git a/src/sys/lib/kmalloc.c b/src/sys/lib/kmalloc.c index dfaadd0..17ba935 100644 --- a/src/sys/lib/kmalloc.c +++ b/src/sys/lib/kmalloc.c @@ -256,11 +256,6 @@ int i = 0x0; spinLock(&mallocSpinLock); - - //If Kernel Descriptor Is NULL Initialize Malloc - if (emptyKernDesc == 0x0) { - initMalloc(); - } len = MALLOC_ALIGN(len); @@ -271,14 +266,14 @@ for (tmpDesc1 = freeKernDesc;tmpDesc1 != 0x0;tmpDesc1=tmpDesc1->next) { assert(tmpDesc1); if (tmpDesc1->limit >= len) { - if (tmpDesc1->prev != 0x0) { + if (tmpDesc1->prev != 0x0) tmpDesc1->prev->next = tmpDesc1->next; + if (tmpDesc1->next != 0x0) tmpDesc1->next->prev = tmpDesc1->prev; - } - else { + if (tmpDesc1 == freeKernDesc) freeKernDesc = tmpDesc1->next; - freeKernDesc->prev = 0x0; - } + if (freeKernDesc == 0x0) + kprintf("hmm no more kern desc\n"); tmpDesc1->prev = 0x0; tmpDesc1->next = kernDesc; kernDesc->prev = tmpDesc1; @@ -375,7 +370,7 @@ for (i=0;i < (tmpDesc1->limit/4);i++) { data[i] = 0x0; } - mergeMemBlocks(); + //mergeMemBlocks(); spinUnlock(&mallocSpinLock); return; } @@ -387,6 +382,9 @@ /*** $Log$ + Revision 1.17 2004/07/24 23:04:44 reddawg + Changes... mark let me know if you fault at pid 185 when you type stress + Revision 1.16 2004/07/21 10:02:09 reddawg devfs: renamed functions device system: renamed functions