Page MenuHomeFreeBSD

linuxkpi: Fix the shrinker scan target
ClosedPublic

Authored by markj on Jan 18 2021, 5:57 PM.

Details

Summary

Use the number of items scanned to control the duration of the shrink
loop. Otherwise, if a consumer like TTM is not able to free the number
of items requested, we'll just keep looping. This more closely matches
the behaviour of the out-of-tree implementation.

I'm not sure that it makes sense to scan until we've visited roughly
every object in the pool, but this at least fixes some nasty hangs I'm
seeing with amdgpu when the system runs out of free pages.

Diff Detail

Repository
R10 FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.