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

+3 -2
-1
fs/fat/dir.c
··· 841 841 .compat_ioctl = fat_compat_dir_ioctl, 842 842 #endif 843 843 .fsync = file_fsync, 844 - .llseek = generic_file_llseek, 845 844 }; 846 845 847 846 static int fat_get_short_entry(struct inode *dir, loff_t *pos,
+2
fs/fat/inode.c
··· 749 749 brelse(bh); 750 750 751 751 parent = d_obtain_alias(inode); 752 + if (!IS_ERR(parent)) 753 + parent->d_op = sb->s_root->d_op; 752 754 out: 753 755 unlock_super(sb); 754 756
+1 -1
fs/fat/namei_vfat.c
··· 78 78 * for creation. 79 79 */ 80 80 if (!(nd->flags & (LOOKUP_CONTINUE | LOOKUP_PARENT))) { 81 - if (nd->flags & LOOKUP_CREATE) 81 + if (nd->flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET)) 82 82 return 0; 83 83 } 84 84