HomeFreeBSD

Allow swap_pager_putpages() to allocate one block at a time.

Description

Allow swap_pager_putpages() to allocate one block at a time.

The minimum allocation size of 4 blocks is an old policy that came with
the "new" swap pager in r42957. Since then the blist allocator has
gotten better at reducing fragmentation; for example, with r349777 it
can return a range that spans multiple leaves. When swap space is close
to being exhaused, the minimum of 4 blocks most likely exacerbates
memory pressure, so reduce it to 1.

Reported by: alc
Tested by: pho
Reviewed by: alc, dougm, kib
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D23763

Details

Provenance
markjAuthored on
Reviewer
alc
Differential Revision
D23763: Allow swap_pager_putpages() to allocate one block at a time.
Parents
rS358260: loader: alloc_pread() should set errno if malloc fails
Branches
Unknown
Tags
Unknown