Commit ec270e59 authored by Linus Torvalds's avatar Linus Torvalds

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
parents 6a94cb73 5a6bb103
...@@ -841,7 +841,6 @@ const struct file_operations fat_dir_operations = { ...@@ -841,7 +841,6 @@ const struct file_operations fat_dir_operations = {
.compat_ioctl = fat_compat_dir_ioctl, .compat_ioctl = fat_compat_dir_ioctl,
#endif #endif
.fsync = file_fsync, .fsync = file_fsync,
.llseek = generic_file_llseek,
}; };
static int fat_get_short_entry(struct inode *dir, loff_t *pos, 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) ...@@ -749,6 +749,8 @@ static struct dentry *fat_get_parent(struct dentry *child)
brelse(bh); brelse(bh);
parent = d_obtain_alias(inode); parent = d_obtain_alias(inode);
if (!IS_ERR(parent))
parent->d_op = sb->s_root->d_op;
out: out:
unlock_super(sb); unlock_super(sb);
......
...@@ -78,7 +78,7 @@ static int vfat_revalidate_ci(struct dentry *dentry, struct nameidata *nd) ...@@ -78,7 +78,7 @@ static int vfat_revalidate_ci(struct dentry *dentry, struct nameidata *nd)
* for creation. * for creation.
*/ */
if (!(nd->flags & (LOOKUP_CONTINUE | LOOKUP_PARENT))) { if (!(nd->flags & (LOOKUP_CONTINUE | LOOKUP_PARENT))) {
if (nd->flags & LOOKUP_CREATE) if (nd->flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET))
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment