tech-kern archive

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

uvm_pageactivate, uvm_pageenqueue and uvm_pageqlock


With fork-intensive workloads there is a huge amount of contention on
uvm_pageqlock. Most of it comes from uvm_fault_internal, which passes
hints to the page replacement policy on ~every fault.

This patch changes uvm_pageactivate() and uvm_pageenqueue() to do an
unlocked check to see if operation actually needs to be done. Only if
true does it acquire the lock and call into the page replacement policy
to do the work.

I am not sure what should happen for clockpro's uvmpdpol_pageisactive_p(),



Home | Main Index | Thread Index | Old Index