SVNews r327468

NOTE: This service is experimental and subject to change! Use at your own risk!

2018-01-01 19:27:33 - r327468 by kib (Konstantin Belousov)

Complete list of files affected by revision r327468:

(Note: At the moment, these links point to ViewVC on svn.freebsd.org. They are probably slow. Do not overuse.)

  History   Contents   Diff   MODIFY   /head/sys/vm/vm_swapout.c  

Commit message:

Do not let vm_daemon run unbounded.

On a load where single anonymous object consumes almost all memory on
the large system, swapout code executes the iteration over the
corresponding object page queue for long time, owning the map and
object locks. This blocks pagedaemon which tries to lock the object,
and blocks other threads in the process in vm_fault() waiting for the
map lock.

Handle the issue by terminating the deactivation loop if we executed
too long and by yielding at the top level in vm_daemon.

Reported by: peterj, pho
Reviewed by: alc
Tested by: pho (as part of the larger patch)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D13671

 


Powered by Python FreeBSD support by secnetix GmbH & Co. KG

Page generated in 1 ms, 1 file printed. Current time is 2018-01-18 19:19:54. All times are in UTC/GMT.