Re: [RFC 3/7] cramfs: allow unlinking of files

Arnd Bergmann
2008-06-01T21:29:05Z

On Sunday 01 June 2008, Jörn Engel wrote:
> On Sat, 31 May 2008 17:20:16 +0200, arnd@arndb.de wrote:
> >
> > +int cramfs_unlink(struct inode *dir, struct dentry *dentry)
> > +{
> > +     struct inode *inode = dentry->d_inode;
> > +     struct dentry *new;
> > +
> > +     inode->i_ctime = dir->i_ctime = dir->i_mtime = CURRENT_TIME;
> > +     drop_nlink(inode);
> > +     new = d_alloc(dentry->d_parent, &dentry->d_name);
> > +     d_add(new, NULL);
> > +
> > +     dget(dentry);
>
> How is the negative dentry dropped on umount?  Looks like we want a
> per-sb list to put them on.  Then we can walk it and dput each one at
> umount time.

Good point. I think ramfs does exactly that, using kill_litter_super.
I haven't tested unmount so far, and should probably do something like
that in cramfs_put_super.

Arnd <><
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html