tech-kern archive

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

Re: Adaptive RW locks



Following up again..  It turns out the deadlocks I saw with this were down
to a problem with kernel_lock that has since been solved.

I made a couple more tweaks to it: up the max number of tracked holds to 8
because vmobjlock became a rwlock, and because aiodoned is gone now be more
selective giving up and going to sleep in the softint case (walk down the
list of pinned LWPs on curcpu and see if any of them holds the lock that's
wanted, if not held on curcpu then some other CPU has it, and it's OK to
spin).

	http://www.netbsd.org/~ad/2020/rwlock3.diff

I'm going to sit on this change for a while longer though to make sure there
is no performance regression or other problems.

Andrew


Home | Main Index | Thread Index | Old Index