cvs commit: src/sys/vm swap_pager.c

Alan Cox alc at cs.rice.edu
Sun Oct 26 12:44:58 PST 2003


On Sun, Oct 26, 2003 at 03:34:05PM -0500, Jeff Roberson wrote:
> On Sun, 26 Oct 2003, Alan Cox wrote:
> 
> > With this change, you may see:
> >
> > lock order reversal
> >  1st 0xc24aab90 vm object (vm object) @ vm/swap_pager.c:1319
> >  2nd 0xc070f180 swap_pager swhash (swap_pager swhash) @ vm/swap_pager.c:1832
> >  3rd 0xc1036b90 vm object (vm object) @ vm/uma_core.c:876
> >
> > This is also a false positive.  The only vm object that is locked
> > after acquiring the "swap_pager swhash" mutex is one used internally
> > in UMA.  We will never acquire this vm object's mutex followed by
> > the "swap_pager swhash" mutex.
> 
> Does the swap_zone really need a backing object?  This is just so the
> operation wont fail for lack of kva, right?  Is this really necessary
> here?  I thought we did it before so that we could allocate at interrupt
> time, since pages could be allocated, but kva could not.  I doubt this
> code runs at real interrupt time anymore.
> 

What would you propose?  I believe switching to page_alloc() would
also produce a false LOR warning.

Regards,
Alan

> 
> >
> > Regards,
> > Alan
> >
> > On Sun, Oct 26, 2003 at 11:55:35AM -0800, Alan Cox wrote:
> > > alc         2003/10/26 11:55:35 PST
> > >
> > >   FreeBSD src repository
> > >
> > >   Modified files:
> > >     sys/vm               swap_pager.c
> > >   Log:
> > >    - Introduce and use a mutex synchronizing access to the swblock hash table.
> > >
> > >   Revision  Changes    Path
> > >   1.234     +20 -4     src/sys/vm/swap_pager.c
> >


More information about the cvs-src mailing list