On Thu, 2002-08-29 at 17:00, Andrew Morton wrote:
> That's an interesting point. page_table_lock is one of those locks
> which is occasionally held for ages, and frequently held for a short
> time.
Since latency is a direct function of lock held times in the preemptible
kernel, and I am seeing disgusting zap_page_range() latencies, the lock
is held a long time.
So we know it is held forever and a day... but is there contention?
> But I don't recall seeing nasty page_table_lock spintimes on
> anyone's lockmeter reports, so we can leave it as-is for now.
I do not recall seeing this either and I have not done my own tests.
Personally, I would love to rip out the "cond_resched_lock()" and just
do
spin_unlock();
spin_lock();
and be done with it. This gives automatic preemption support and the
SMP benefit. Preemption being an "automatic" consequence of improved
locking was always my selling point (albeit, this is a gross example of
improving the locking, but it gets the job done).
But, the current implementation was more palatable to you and Linus when
I first posted this, and that counts for something.
Robert Love
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Aug 31 2002 - 22:00:27 EST