lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 23 Nov 2006 12:28:28 -0500
From:	Mathieu Desnoyers <compudj@...stal.dyndns.org>
To:	Al Viro <viro@....linux.org.uk>
Cc:	Greg KH <greg@...ah.com>, ltt-dev@...fik.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH 5/5] libfs : file/directory removal fix, 2.6.18

* Al Viro (viro@....linux.org.uk) wrote:
> On Thu, Nov 23, 2006 at 08:50:56AM +0000, Al Viro wrote:
> > On Thu, Nov 23, 2006 at 03:22:44AM -0500, Mathieu Desnoyers wrote:
> > > Fix file and directory removal in libfs. Add inotify support for file removal.
> > > 
> > > The following scenario :
> > > create dir a
> > > create dir a/b
> > > 
> > > cd a/b (some process goes in cwd a/b)
> > > 
> > > rmdir a/b
> > > rmdir a
> > >
> > > fails due to the fact that "a" appears to be non empty.
> > 
> > What?  Caller will do d_delete() itself.  Care to show a version where
> > that would happen and post an strace of the second rmdir?
> > 
> > > It is because the "b"
> > > dentry is not deleted from "a" and still in use. The same problem happens if
> > > "b" is a file. d_delete is nice enough to know when it needs to unhash and free
> > > the dentry if nothing else is using it or, if someone is using it, to remove it
> > > from the hash queues and wait for it to be deleted when it has no users.
> > > 
> > > The nice side-effect of this fix is that it calls the file removal
> > > notification.
> > 
> > NAK.  First of all, I won't believe you without actual strace.
> > 
> > What's more, WTF would fs _method_ call idiotify?  Keep that crap
> > out of filesystems; caller will do it for us just fine.
> 
> PS: debugfs, sysfs et sodding alia should take care to do things equivalent
> to vfs_unlink(), etc.  _That_ is definitive user of fs methods, which, in
> turn, sets the rules for library helpers used by such.
> 

Ok, I will tweak my modification so it sits in debugfs then.

Thanks,

Mathieu

OpenPGP public key:              http://krystal.dyndns.org:8080/key/compudj.gpg
Key fingerprint:     8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ