tech-kern archive

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

Re: rwlock changes



On Sat, Apr 05, 2008 at 06:37:52PM +0100, Iain Hibbert wrote:

> On Sat, 5 Apr 2008, Andrew Doran wrote:
> 
> > - Fix a bug in rw_downgrade() where the turnstile lock was not released.
> 
> could this be related to a problem I've been seeing intermittently with
> (I'm coming to think) union filesystems, where some process accessing a
> file on the fs gets stuck in 'tstile' causing the system to gradually lock
> up as other processes stack up behind it.. ?

A leaked turnstile lock would likely cause a hard lockup where eventually
you couldn't even run commands.. Sounds like what you're running into is a
vnode locking problem.
 
> possibly this occurs when deleting files on the union but I've not managed
> to pin it down..

The problem with unionfs is that it makes dodgy assumptions about vnode
locking that break down badly with the kernel being properly multithreaded.
There is a port of FreeBSD's rewritten unionfs in fs/unionfs which doesn't
have those problems. I still haven't figured out exactly what should happen
in unionfs_lookup(), so unfortunatley it hasn't replaced the old unionfs
yet. :-(

Andrew


Home | Main Index | Thread Index | Old Index