cvs commit: src/sys/amd64/include vmparam.h src/sys/arm/include vmparam.h src/sys/i386/include vmparam.h src/sys/ia64/include vmparam.h src/sys/kern kern_exec.c vfs_bio.c src/sys/powerpc/include vmparam.h src/sys/sparc64/include ...

Kostik Belousov kostikbel at gmail.com
Tue Sep 25 10:12:10 PDT 2007


On Tue, Sep 25, 2007 at 11:45:10AM -0500, Alan Cox wrote:
> Rink Springer wrote:
> >Hi Alan,
> >
> >On Tue, Sep 25, 2007 at 06:25:07AM +0000, Alan Cox wrote:
> >  
> >>  Change the management of cached pages (PQ_CACHE) in two fundamental
> >>  ways:
> >>    
> >
> >With this change, KDE no longer starts up; the process 'kbuildsycoca'
> >seems to wait forever in status 'madvpo'. Reverting this changeset fixes
> >the problem.
> >
> >  
> 
> This is a problem with madvise(WILLNEED).  I believe that the attached 
> patch will fix it.
> 
> Thanks,
> Alan
> 
> 
> 

> Index: vm/vm_object.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/vm/vm_object.c,v
> retrieving revision 1.383
> diff -p -u -r1.383 vm_object.c
> --- vm/vm_object.c	25 Sep 2007 06:25:06 -0000	1.383
> +++ vm/vm_object.c	25 Sep 2007 16:17:40 -0000
> @@ -1105,7 +1105,8 @@ shadowlookup:
>  			/*
>  			 * If the page is cached, reactivate it.
>  			 */
> -			m = vm_page_alloc(tobject, tpindex, VM_ALLOC_IFCACHED);
> +			m = vm_page_alloc(tobject, tpindex, VM_ALLOC_IFCACHED |
> +			    VM_ALLOC_NOBUSY);
>  		}
>  		if (m == NULL) {
>  			/*

Yes, this indeed fixes the problem. Several minutes ago I suggested the
same change to rdivacky@, and he reported that the problem is gone.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-all/attachments/20070925/9da1e4fe/attachment.pgp


More information about the cvs-all mailing list