Subject: Re: kern/21107: genfs_putpages modifies page tables without proper locking
To: Brian Buhrow <buhrow@lothlorien.nfbcal.org>
From: Chuck Silvers <chuq@chuq.com>
List: netbsd-bugs
Date: 04/15/2003 07:09:12
On Fri, Apr 11, 2003 at 11:55:17PM -0700, Brian Buhrow wrote:
> 
> >Number:         21107
> >Category:       kern
> >Synopsis:       /usr/src/sys/miscfs/genfs/genfs_vnops.c has an unprotected page table modify in genfs_putpages()
...
> 	/usr/src/sys/miscfs/genfs/genfs_vnops.c:genfs_putpages() attempts to
> clean pages with the pmap_clear_modify() routine without locking the uvm
> page queues.  On some systems, including I386 and Sparc architectures, this
> results in intermittent illegal page faults which panic the system.

hi,

it is not required that the page queues be locked around calls to
pmap_clear_modify().  I don't know why this change would make any difference,
do you have any explanation?  note that this change could only affect MP
kernels anyway, since the pageq lock is a spinlock.

can you provide any information about the panics you mention?
(I'm not going to have time to work on this myself, but maybe someone else
could investigate if a dump was available.)

-Chuck