wired memory - again!

Ian Lepore freebsd at damnhippie.dyndns.org
Tue Jun 12 14:52:43 UTC 2012


On Sat, 2012-06-09 at 22:45 +0200, Wojciech Puchar wrote:
> >
> > First, all memory allocated by UMA and consequently malloc(9) is
> > wired. In other words, almost all memory used by kernel is accounted
> > as wired.
> >
> yes i understand this. still i found no way how to find out what allocated 
> that much.
> 
> 
> > Second, the buffer cache wires the pages which are inserted into VMIO
> > buffers. So your observation is basically right, cached buffers means
> 
> what are exactly "VMIO" buffers. i understand that page must be wired WHEN 
> doing I/O.
> But i have too much wired memory even when doing no I/O at all.

I agree, this is The Big Question for me.  Why does the system keep
wired writable mappings of the buffers in kva after the IO operations
are completed?  

If it did not do so, it would fix the instruction-cache-disabled bug
that kills performance on VIVT cache architectures (arm and mips) and it
would reduce the amount of wired memory (that apparently doesn't need to
be wired, unless I've missed the implications of a previous reply in
this thread).

-- Ian



More information about the freebsd-hackers mailing list