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

Some VM questions



Hi All,

I was going thru the VM initialisation on my 2.4.2 kernel and had 
the following doubts:

(i) If alloc_page is called with HIGHMEM, then it allocates pages 
 from all of the 3 zones; for NORMAL it gets from NORMAL and DMA 
and for DMA specifically from DMA. What is the logic behind this? 
If a certain zone is marked as DMA and if kernel is stealing pages 
for normal allocation then won't it be unfair to device driver 
that is expecting a DMA page?

(ii) The initialisation of zones happens in order DMA, NORMAL and 
HIGHMEM. (struct zone_names etc...) Is there any reason why this 
is being done? The kernel is assuming that pages marked for DMA 
precedes the pages meant for NORMAL. What happens if I change this 
order?

Thanks
Raghav
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/