--- linux-2.6.14/fs/open.c.org +++ linux-2.6.14/fs/open.c @@ -894,8 +894,11 @@ struct file *dentry_open(struct dentry * error = -ENFILE; f = get_empty_filp(); - if (f == NULL) + if (f == NULL) { + dput(dentry); + mntput(mnt); return ERR_PTR(error); + } return __dentry_open(dentry, mnt, flags, f, NULL); }