alpha @ steudten Engineering wrote: > ======================================================= > [ INFO: possible circular locking dependency detected ] > 2.6.18-1.2189self #1 > ------------------------------------------------------- > kswapd0/186 is trying to acquire lock: > (&inode->i_mutex){--..}, at: [] mutex_lock+0x21/0x24 > > but task is already holding lock: > (iprune_mutex){--..}, at: [] mutex_lock+0x21/0x24 > > which lock already depends on the new lock. Thanks. __grab_cache_page wants to clear __GFP_FS, because it is holding the i_mutex so we don't want to reenter the filesystem in page reclaim. This would be an easy two liner, except those funny page_cache_alloc routines which take a mapping rather than a gfp_t argument :P Anyway, I'll get around to writing the real patch and queue it up with my other buffered write deadlock fixes. It should be fairly unlikely to cause you a deadlock. You could give this quick patch a try, though. Does it fix your problem? -- SUSE Labs, Novell Inc.