tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: netbsd-5 deadlocks when memory is low



Masao Uebayashi <uebayasi%gmail.com@localhost> wrote:

> So what I can think of now is, the underlying bdev can't finish I/O
> because it allocates memory to handle I/O requests?

I already spotted two points where ioflush was stuck in PUFFS code path,
and I added code so that it can act immediatly or get an error. That
helps, and I do not see ioflush deadlocking anymore. 

However the errors mean vnode are not really sync. When a process
deadlocks awaiting the PUFFS filesystem, while the PUFFS filesystems
sleeps on anonget2 (or sometime on flt_noram1), I can see that
uvmexp.paging is high as a few hundred, and it can even be thousands.

I did not notice other kernel threads sleeping on unusual places. 

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index