Make the shortfall target smaller and wake the laundry thread on demand.
Rather than waking up periodically, the laundry is now woken up by the
pagedaemon after an inactive queue scan. If the scan failed to reach its
target, the laundry thread will attempt to make up the shortfall before
the next inactive queue scan. This helps avoid excessive laundering in
scenarios where the inactive queue is not a significant source of
reclaimable memory (e.g., when most of a system's memory belongs to the ZFS
ARC) by giving lowmem handlers a chance to help make up for a page shortage
before setting a laundering target.
Reported by: pho
Reviewed by: alc