Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6: fat: make sure to set d_ops in fat_get_parent fat: fix duplicate addition of ->llseek handler fat: drop negative dentry on rename() path
This commit is contained in:
commit
ec270e59a7
|
@ -841,7 +841,6 @@ const struct file_operations fat_dir_operations = {
|
|||
.compat_ioctl = fat_compat_dir_ioctl,
|
||||
#endif
|
||||
.fsync = file_fsync,
|
||||
.llseek = generic_file_llseek,
|
||||
};
|
||||
|
||||
static int fat_get_short_entry(struct inode *dir, loff_t *pos,
|
||||
|
|
|
@ -749,6 +749,8 @@ static struct dentry *fat_get_parent(struct dentry *child)
|
|||
brelse(bh);
|
||||
|
||||
parent = d_obtain_alias(inode);
|
||||
if (!IS_ERR(parent))
|
||||
parent->d_op = sb->s_root->d_op;
|
||||
out:
|
||||
unlock_super(sb);
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ static int vfat_revalidate_ci(struct dentry *dentry, struct nameidata *nd)
|
|||
* for creation.
|
||||
*/
|
||||
if (!(nd->flags & (LOOKUP_CONTINUE | LOOKUP_PARENT))) {
|
||||
if (nd->flags & LOOKUP_CREATE)
|
||||
if (nd->flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET))
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue