On Tue, 2007-03-27 at 18:08 +0530, Pharaoh . wrote: > Sandeep, > can you elucidate it a little more? It might be little naive to ask > about this but can you tell how this entire thing is? I meant entire > thing about master page table and per process page tables. The page table entries for addresses beyond TASK_SIZE are actually the copied from the kernel page tables ( Thats the 3G/1G split). Now, when you vmalloc something in the kernel, it will allocate some virtual memory in the last 1G ( 128MB precisely on x86.. CMMIW).. right? Now, since your are vmalloc'ing something, obviously the kernel page tables are going to be changed right??? This change is not immediately made visible to all processes, because it involves syncing these page tables with each and every process alive.. (Which is as you may understand is huge and unnecessary overhead). Which is why, the page fault handler will sync the page tables of the process who actually tries to access the vmalloc'ed area. i hope this clears the picture. cheers, sandeep -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ