tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: netbsd-6: pagedaemon freeze when low on memory
On Mon, Mar 04, 2013 at 02:43:47PM -0500, Richard Hansen wrote:
> Hi all,
>
> I believe I have found a bug in the pagedaemon (uvm_pageout() in
> src/sys/uvm/uvm_pdaemon.c) that causes the system to freeze when the
> kmem_arena runs low (<10% free):
>
> 1. line 254: uvm_km_va_starved_p() returns true
> 2. line 258: the !kmem_va_starved condition prevents the pagedaemon
> from sleeping
> 3. lines 330--346: no memory is freed -- it's all still in use
> 4. go to step #1
I've seen this too. One underlying issue is that the callbacks called
to free memory (e.g. reclaim from pool caches or buffer/vnode caches) do care
about physical memory but not about kernel virtual memory. This should probably
be fixed.
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index