Hi,

Why do we need both page_table_lock & mmap_sem in the kernel. Why isn't
mmap_sem good enough for serialization. As far as i see it, all attempts to
change the page table hierarchy in the kernel is done after holding the
write lock on mmap_sem. As we are already holding the write lock, we do we
need an extra page_table_lock (spinlock) ? Are there any code paths in the
kernel which attempt to modify the page table hierarchy without holding the
write lock on mmap_sem ?

page_table_lock is a finer grained lock than mmap_sem but page_table_lock is
only taken after holding a write lock on mmap_sem (as far as i can tell).

What is the reasoning behind having an extra spinlock?

Thanks.

Venkatram Tummala
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to