kernel - SWAP CACHE part 11/many - Write improvements, fix backing store free
* Improve write staging by not counting VM pages which already have a
swap assignment when doing the limited scan of the INACTIVE VM page
queue.
As the swapcache starts to perform more and more disk I/O goes to it,
radically increasing the data rate and also radically increasing the
rate at which pages are shuffled between VM page queues. At some
point enough data is coming from the swapcache that vm.swapcache.maxlaunder
is unable to keep up even when sufficient burst bandwidth is available.
This led to an asymptotic caching curve. After the fix the caching
curve is linear (for data sets which fit in the swapcache).
* The swapcache associated with meta-data (VCHR vnodes) was not being
destroyed on umount. Adjust a conditional such that it is properly
destroyed. Otherwise stale data might be retained across e.g. a
media change.