linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* should delete_inode be allowed to be called from shrink_dcache?
@ 2004-11-27 11:40 Vladimir Saveliev
  2004-11-27 18:40 ` Al Viro
  0 siblings, 1 reply; 2+ messages in thread
From: Vladimir Saveliev @ 2004-11-27 11:40 UTC (permalink / raw)
  To: Al Viro; +Cc: linux-kernel

Hello

Is there anything wrong that

mkdir dir
cd dir
rmdir ../dir
ls file
cd ..

leaves after itself two dentries - negative one ("file") and dentry of
directory "dir" which is attached to inode of that directory?

After that a process may get into somefs_delete_inode trying to free
pages by shrinking dcache (it will first free negative dentry and then
its parent).
If process is doing that being already in somefs_write (for example)
some filesystems may have problems.


Thanks


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: should delete_inode be allowed to be called from shrink_dcache?
  2004-11-27 11:40 should delete_inode be allowed to be called from shrink_dcache? Vladimir Saveliev
@ 2004-11-27 18:40 ` Al Viro
  0 siblings, 0 replies; 2+ messages in thread
From: Al Viro @ 2004-11-27 18:40 UTC (permalink / raw)
  To: Vladimir Saveliev; +Cc: linux-kernel

On Sat, Nov 27, 2004 at 02:40:57PM +0300, Vladimir Saveliev wrote:
> Hello
> 
> Is there anything wrong that
> 
> mkdir dir
> cd dir
> rmdir ../dir
> ls file
> cd ..
> 
> leaves after itself two dentries - negative one ("file") and dentry of
> directory "dir" which is attached to inode of that directory?

No, it's legitimate (and can happen in other scenarios).
 
> After that a process may get into somefs_delete_inode trying to free
> pages by shrinking dcache (it will first free negative dentry and then
> its parent).
> If process is doing that being already in somefs_write (for example)
> some filesystems may have problems.

Details, please...  All filesystems I'm familiar with won't (AFAICS) have
any problems with that.  What exactly do you have in mind?  Note that
in a lot of areas you get GFP_NOFS allocations anyway - that's the primary
defense against deadlocks and it's almost always enough.  The only trouble
I can recall more or less recently was hpfs - there we had (among shitpiles
of other races) several places that required explicit GFP_NOFS.  Usually
it just works...

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-11-27 18:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-11-27 11:40 should delete_inode be allowed to be called from shrink_dcache? Vladimir Saveliev
2004-11-27 18:40 ` Al Viro

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).