+#ifdef CONFIG_CIFS_DFS_UPCALL + if (is_remote) { + inode->i_op = + &cifs_dfs_referral_inode_operations; + inode->i_fop = NULL; i_fop should never be set to NULL. Just leave it alone so it stays at &empty_fops. +#ifdef CONFIG_CIFS_DFS_UPCALL + if (is_remote) { + inode->i_op = + &cifs_dfs_referral_inode_operations; + inode->i_fop = NULL; + } else { + inode->i_op = &cifs_dir_inode_ops; + inode->i_fop = &cifs_dir_ops; + } +#else inode->i_op = &cifs_dir_inode_ops; inode->i_fop = &cifs_dir_ops; +#endif This code and everything surrounding it is duplicated in two functions. Please refactor it into a common helper before adding new code to it. - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html