DragonFly BSD
DragonFly bugs List (threaded) for 2003-09
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

contigmalloc for low address in SI_SUB_KMEM

From: qhwt@xxxxxxxxxxxxx
Date: Wed, 3 Sep 2003 19:52:06 +0900

Two questions:
  - Is contigmalloc1() supposed to be able to allocate a memory range
  0 - 0x9FFFF when the initialization stage is in SI_SUB_KMEM?
  - Is there a way to find who grabbed that area, if any

I'm trying to cope with a weird error from acpi_alloc_wakeup_handler()
(not in our tree, look at /sys/i386/acpica/acpi_wakeup.c in
FreeBSD-STABLE tree), which calls bus_dmamem_alloc(), which eventually
calls contigmalloc(), which failed.
On ACPI-enabled-FreeBSD-STABLE kernel running on the same machine, the
allocation doesn't fail, so I think it's not specific to this hardware.

Adding some printf's around contigmalloc1(), I've found that the lowest
possible value available in vm_page_array was something like 0x5db000,
which is far above 0x9FFFF, and allocation always fails. I even inserted
a test code at the end of vm_mem_init(), but the result was the same;
no success below 0x5db000. I need to look at much more codes around this
because I'm new to vm stuffs, and I hope someone can track this down.
My kernel config file is available on request.

Sincerely yours.

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]