]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Release laundered vnode pages to the head of the inactive queue.
authormarkj <markj@FreeBSD.org>
Wed, 23 Nov 2016 17:53:07 +0000 (17:53 +0000)
committermarkj <markj@FreeBSD.org>
Wed, 23 Nov 2016 17:53:07 +0000 (17:53 +0000)
commit4159d33f6b16b3b78d2340755a62233808caab03
tree8fb6d291c479baafe6057022371a638c2348b803
parent7982b0b181aeebcf59122f25693f554fa4a6f812
Release laundered vnode pages to the head of the inactive queue.

The swap pager enqueues laundered pages near the head of the inactive queue
to avoid another trip through LRU before reclamation. This change adds
support for this behaviour to the vnode pager and makes use of it in UFS and
ext2fs. Some ioflag handling is consolidated into a common subroutine so
that this support can be easily extended to other filesystems which make use
of the buffer cache. No changes are needed for ZFS since its putpages
routine always undirties the pages before returning, and the laundry
thread requeues the pages appropriately in this case.

Reviewed by: alc, kib
Differential Revision: https://reviews.freebsd.org/D8589
sys/fs/ext2fs/ext2_vnops.c
sys/kern/vfs_bio.c
sys/sys/buf.h
sys/sys/vnode.h
sys/ufs/ffs/ffs_vnops.c
sys/vm/vm_pageout.c
sys/vm/vm_pager.h
sys/vm/vnode_pager.c