On the other hand, having __get_free_pages allow for various
attributes that belong to pages would be a good idea. It should for
example allow you to specify that you require a DMA-able page on a PC.
(You're all thinking about pages below 16M, right? Good. I was talking
about pages below 4G for a PCI bus-mastering card...)
As a user of __get_free_pages or kmalloc, you should be able to specify
"I NEED DMA" or "I prefer non-DMA".
__get_free_pages should call an "exception" routine when it gets "none
available" on a request. This will happen if no "flagged as
uncacheable" pages happen to be free, and the exception routine will
map a page uncacheable, and return that. The exception routine for
"normal" pages may look to see if there are any free uncached pages
and claim them back...
Roger.
-- ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2137555 ** *-- BitWizard writes Linux device drivers for any device you may have! --* ------ Microsoft SELLS you Windows, Linux GIVES you the whole house ------
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/