The patch titled revert allow-file-systems-to-manually-d_move-inside-of-rename has been removed from the -mm tree. Its filename is revert-allow-file-systems-to-manually-d_move-inside-of-rename.patch This patch was dropped because it is obsolete ------------------------------------------------------ Subject: revert allow-file-systems-to-manually-d_move-inside-of-rename From: Andrew Morton <akpm@xxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- fs/namei.c | 6 +++--- fs/nfs/dir.c | 3 ++- fs/nfs/super.c | 10 +++++----- include/linux/fs.h | 7 +++---- 4 files changed, 13 insertions(+), 13 deletions(-) diff -puN fs/namei.c~revert-allow-file-systems-to-manually-d_move-inside-of-rename fs/namei.c --- a/fs/namei.c~revert-allow-file-systems-to-manually-d_move-inside-of-rename +++ a/fs/namei.c @@ -2370,8 +2370,7 @@ static int vfs_rename_dir(struct inode * dput(new_dentry); } if (!error) - if (!(old_dir->i_sb->s_type->fs_flags & FS_RENAME_DOES_D_MOVE)) - d_move(old_dentry,new_dentry); + d_move(old_dentry,new_dentry); return error; } @@ -2394,7 +2393,8 @@ static int vfs_rename_other(struct inode else error = old_dir->i_op->rename(old_dir, old_dentry, new_dir, new_dentry); if (!error) { - if (!(old_dir->i_sb->s_type->fs_flags & FS_RENAME_DOES_D_MOVE)) + /* The following d_move() should become unconditional */ + if (!(old_dir->i_sb->s_type->fs_flags & FS_ODD_RENAME)) d_move(old_dentry, new_dentry); } if (target) diff -puN fs/nfs/dir.c~revert-allow-file-systems-to-manually-d_move-inside-of-rename fs/nfs/dir.c --- a/fs/nfs/dir.c~revert-allow-file-systems-to-manually-d_move-inside-of-rename +++ a/fs/nfs/dir.c @@ -1682,7 +1682,8 @@ out: if (rehash) d_rehash(rehash); if (!error) { - d_move(old_dentry, new_dentry); + if (!S_ISDIR(old_inode->i_mode)) + d_move(old_dentry, new_dentry); nfs_renew_times(new_dentry); nfs_set_verifier(new_dentry, nfs_save_change_attribute(new_dir)); } diff -puN fs/nfs/super.c~revert-allow-file-systems-to-manually-d_move-inside-of-rename fs/nfs/super.c --- a/fs/nfs/super.c~revert-allow-file-systems-to-manually-d_move-inside-of-rename +++ a/fs/nfs/super.c @@ -71,7 +71,7 @@ static struct file_system_type nfs_fs_ty .name = "nfs", .get_sb = nfs_get_sb, .kill_sb = nfs_kill_super, - .fs_flags = FS_RENAME_DOES_D_MOVE|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, + .fs_flags = FS_ODD_RENAME|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, }; struct file_system_type nfs_xdev_fs_type = { @@ -79,7 +79,7 @@ struct file_system_type nfs_xdev_fs_type .name = "nfs", .get_sb = nfs_xdev_get_sb, .kill_sb = nfs_kill_super, - .fs_flags = FS_RENAME_DOES_D_MOVE|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, + .fs_flags = FS_ODD_RENAME|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, }; static struct super_operations nfs_sops = { @@ -107,7 +107,7 @@ static struct file_system_type nfs4_fs_t .name = "nfs4", .get_sb = nfs4_get_sb, .kill_sb = nfs4_kill_super, - .fs_flags = FS_RENAME_DOES_D_MOVE|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, + .fs_flags = FS_ODD_RENAME|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, }; struct file_system_type nfs4_xdev_fs_type = { @@ -115,7 +115,7 @@ struct file_system_type nfs4_xdev_fs_typ .name = "nfs4", .get_sb = nfs4_xdev_get_sb, .kill_sb = nfs4_kill_super, - .fs_flags = FS_RENAME_DOES_D_MOVE|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, + .fs_flags = FS_ODD_RENAME|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, }; struct file_system_type nfs4_referral_fs_type = { @@ -123,7 +123,7 @@ struct file_system_type nfs4_referral_fs .name = "nfs4", .get_sb = nfs4_referral_get_sb, .kill_sb = nfs4_kill_super, - .fs_flags = FS_RENAME_DOES_D_MOVE|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, + .fs_flags = FS_ODD_RENAME|FS_REVAL_DOT|FS_BINARY_MOUNTDATA, }; static struct super_operations nfs4_sops = { diff -puN include/linux/fs.h~revert-allow-file-systems-to-manually-d_move-inside-of-rename include/linux/fs.h --- a/include/linux/fs.h~revert-allow-file-systems-to-manually-d_move-inside-of-rename +++ a/include/linux/fs.h @@ -92,10 +92,9 @@ extern int dir_notify_enable; #define FS_REQUIRES_DEV 1 #define FS_BINARY_MOUNTDATA 2 #define FS_REVAL_DOT 16384 /* Check the paths ".", ".." for staleness */ -#define FS_RENAME_DOES_D_MOVE 32768 /* FS will handle d_move() - * during rename() internally. - */ - +#define FS_ODD_RENAME 32768 /* Temporary stuff; will go away as soon + * as nfs_rename() will be cleaned up + */ /* * These are the fs-independent mount-flags: up to 32 flags are supported */ _ Patches currently in -mm which might be from akpm@xxxxxxxx are origin.patch revert-pci-quirk-for-ibm-dock-ii-cardbus-controllers.patch ext4_blk_type_from_sector_t_to_ulonglong-fix.patch ext4-uninline-ext4_get_group_no_and_offset.patch ext4-64-bit-divide-fix.patch ext4-rename-logic_sb_block.patch ext4-whitespace-cleanups.patch git-acpi.patch acpi-preserve-correct-battery-state-through-suspend-resume-cycles-tidy.patch acpi-asus-s3-resume-fix.patch sony_apci-resume.patch git-cifs-fixup.patch cifs-kconfig-dont-select-connector.patch w1-kconfig-fix.patch git-dvb-build-fix.patch git-geode-fixup.patch git-gfs2.patch git-input-fixup.patch libata-return-sense-data-in-hdio_drive_cmd-ioctl-tidy.patch git-netdev-all.patch libphy-dont-do-that.patch forcedeth-power-management-support-tidy.patch drivers-net-ns83820c-add-paramter-to-disable-auto.patch git-pcmcia-fixup.patch git-serial-fixup.patch pci-optionally-sort-device-lists-breadth-first-tweaks.patch pci-optionally-sort-device-lists-breadth-first-force-on.patch git-scsi-target-fixup.patch git-scsi-target-vs-git-block.patch revert-gregkh-usb-usb-ehci-hcd-split-scan_periodic-to-reuse-code-for-spanned-completions.patch xpad-dance-pad-support-tidy.patch git-watchdog.patch x86_64-dump_trace-atomicity-fix.patch spinlock-debug-all-cpu-backtrace.patch spinlock-debug-all-cpu-backtrace-fix.patch spinlock-debug-all-cpu-backtrace-fix-2.patch spinlock-debug-all-cpu-backtrace-fix-3.patch xfs-rename-uio_read.patch touchkit-ps-2-touchscreen-driver-regs-fix.patch direct-io-sync-and-invalidate-file-region-when-falling-back-to-buffered-write-fixes.patch get-rid-of-zone_table.patch swap-token-new-scheme-to-preempt-token-tidy.patch radix-tree-rcu-lockless-readside.patch acx1xx-wireless-driver.patch swsusp-add-resume_offset-command-line-parameter-rev-2.patch deprecate-smbfs-in-favour-of-cifs.patch edac-new-opteron-athlon64-memory-controller-driver.patch add-address_space_operationsbatch_write.patch add-config_headers_check-option-to-automatically-run-make-headers_check-nobble.patch kbuild-dont-put-temp-files-in-the-source-tree.patch grow_buffers-infinite-loop-fix.patch invalidate_inode_pages2_range-debug.patch lockdep-annotate-nfs-nfsd-in-kernel-sockets-tidy.patch generic-implementatation-of-bug.patch generic-implementatation-of-bug-fix.patch generic-bug-for-i386.patch generic-bug-for-x86-64.patch log2-implement-a-general-integer-log2-facility-in-the-kernel-fix.patch fs-cache-provide-a-filesystem-specific-syncable-page-bit-ext4.patch fs-cache-make-kafs-use-fs-cache-fix.patch fs-cache-make-kafs-use-fs-cache-vs-streamline-generic_file_-interfaces-and-filemap.patch nfs-use-local-caching-12-fix.patch fs-cache-cachefiles-a-cache-that-backs-onto-a-mounted-filesystem-log2-fix.patch swap_prefetch-vs-zoned-counters.patch readahead-sysctl-parameters.patch make-copy_from_user_inatomic-not-zero-the-tail-on-i386-vs-reiser4.patch make-kmem_cache_destroy-return-void-reiser4.patch reiser4-hardirq-include-fix.patch reiser4-run-truncate_inode_pages-in-reiser4_delete_inode.patch reiser4-get_sb_dev-fix.patch reiser4-vs-zoned-allocator.patch reiser4-rename-generic_sounding_globalspatch-fix.patch hpt3xx-rework-rate-filtering-tidy.patch gtod-persistent-clock-support-i386.patch hrtimers-state-tracking.patch clockevents-drivers-for-i386.patch kevent-core-files-fix.patch kevent-core-files-s390-hack.patch kevent-socket-notifications-fix-2.patch kevent-socket-notifications-fix-4.patch nr_blockdev_pages-in_interrupt-warning.patch device-suspend-debug.patch slab-leaks3-default-y.patch x86-kmap_atomic-debugging.patch restore-rogue-readahead-printk.patch put_bh-debug.patch acpi_format_exception-debug.patch jmicron-warning-fix.patch squash-ipc-warnings.patch squash-transmeta-warnings.patch squash-udf-warnings.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html