configfs: Don't try to d_delete() negative dentries.
authorJoel Becker <jlbec@evilplan.org>
Tue, 22 Feb 2011 09:09:49 +0000 (01:09 -0800)
committerJoel Becker <jlbec@evilplan.org>
Wed, 18 May 2011 10:30:58 +0000 (03:30 -0700)
commitdf7f99670a4c76f269ae57ce91876b309417a316
tree5af5b63ab22089f32f1f464035df061bc2955e8e
parentdf016c665b10ae80d8db67ec8103b50c5c234e5c
configfs: Don't try to d_delete() negative dentries.

When configfs is faking mkdir() on its subsystem or default group
objects, it starts by adding a negative dentry.  It then tries to
instantiate the group.  If that should fail, it must clean up after
itself.

I was using d_delete() here, but configfs_attach_group() promises to
return an empty dentry on error.  d_delete() explodes with the entry
dentry.  Let's try d_drop() instead.  The unhashing is what we want for
our dentry.

Signed-off-by: Joel Becker <jlbec@evilplan.org>
fs/configfs/dir.c