dogfooding over in clusteradm land
Don Lewis
truckman at FreeBSD.org
Tue Jan 3 09:45:40 UTC 2012
On 3 Jan, Kostik Belousov wrote:
> This sounds very plausible. I think that there is no sense in restarting
> the scan if it is requested in async mode at all. See below.
>
> Would be thrilled if this finally solves the svn2cvs issues.
>
> commit 41aaafe5e3be5387949f303b8766da64ee4a521f
> Author: Kostik Belousov <kostik at sirion>
> Date: Tue Jan 3 11:16:30 2012 +0200
>
> Do not restart the scan in vm_object_page_clean() if requested
> mode is async.
>
> Proposed by: truckman
>
> diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
> index 716916f..52fc08b 100644
> --- a/sys/vm/vm_object.c
> +++ b/sys/vm/vm_object.c
> @@ -841,7 +841,8 @@ rescan:
> if (p->valid == 0)
> continue;
> if (vm_page_sleep_if_busy(p, TRUE, "vpcwai")) {
> - if (object->generation != curgeneration)
> + if ((flags & OBJPC_SYNC) != 0 &&
> + object->generation != curgeneration)
> goto rescan;
> np = vm_page_find_least(object, pi);
> continue;
I wonder if it would make more sense to just skip the busy pages in
async mode instead of sleeping ...
More information about the freebsd-current
mailing list