We are currently working with FreeBSD 4.3 and we found out that
kldloading/kldunloading modules working with contigmalloc()/contigfree()
like if_xl.ko produces a memory leak.
This is due to the contigfree() function which seems to uncompletely release
the memory ressource allocated in vm_page_array.
When contigmalloc() steps in vm_page_array, it does not find back
the pages previously released by contigfree()
The loop vm/vm_page.c is this one:
for (i = start; i < cnt.v_page_count; i++) {
int pqtype;
phys = VM_PAGE_TO_PHYS(&pga[i]);
pqtype = pga[i].queue - pga[i].pc;
if (pqtype == PQ_FREE
It fails on the `pqtype == PQ_FREE' test
and the previously allocated (and supposedly released by contigfree)
pages can't be reallocated.
Anyone has a patch?
Thanx,
Patrick.
--
UDcast: Full IP over Broadcast Media
Phone: (+33) (0)4 93 00 16 99
Mobile: (+33) (0)6 14 21 55 98
Fax: (+33) (0)4 93 00 16 61 http://www.UDcast.com
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message