Приветствую,
Система x86, линукс ядро 2.6.35
Читаю
https://www.kernel.org/doc/Documentation/DMA-API.txt секцию «Part Id» про функцию
dma_map_single() Там есть такие слова:
CODE
it is recommended that driver writers map virtual regions that begin and end on page boundaries (which are guaranteed also to be cache line boundaries).
Я знаю (и об этом написано в LDD), что
get_free_page() гарантирует выделение памяти по границе страницы. А будет ли гарантировать подобное
kmem_cache_alloc()? (Драйвер, с которым я работаю, держит небольшой buffer pool и из него черпает буферы для dma операций).
Спасибо.