kernel_optimize_test/fs/xfs
Christoph Hellwig cfa853e47d [XFS] remove manual lookup from xfs_rename and simplify locking
->rename already gets the target inode passed if it exits. Pass it down to
xfs_rename so that we can avoid looking it up again. Also simplify locking
as the first lock section in xfs_rename can go away now: the isdir is an
invariant over the lifetime of the inode, and new_parent and the nlink
check are namespace topology protected by i_mutex in the VFS. The projid
check needs to move into the second lock section anyway to not be racy.

Also kill the now unused xfs_dir_lookup_int and remove the now-unused
first_locked argumet to xfs_lock_inodes.

SGI-PV: 976035
SGI-Modid: xfs-linux-melb:xfs-kern:30903a

Signed-off-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
2008-04-29 15:54:12 +10:00
..
linux-2.6 [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
quota [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
support [XFS] Use power-of-2 sized buffers to reduce overhead 2008-04-18 11:40:04 +10:00
Kconfig [XFS] Remove CONFIG_XFS_SECURITY. 2008-04-18 12:04:19 +10:00
Makefile [XFS] Added quota targets and removed dmapi directory 2008-02-18 13:06:17 +11:00
xfs_acl.c [XFS] kill xfs_getattr 2008-04-29 15:53:16 +10:00
xfs_acl.h [XFS] use generic_permission 2008-02-07 18:22:38 +11:00
xfs_ag.h [XFS] Unwrap pagb_lock. 2008-02-07 16:46:39 +11:00
xfs_alloc_btree.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_alloc_btree.h
xfs_alloc.c [XFS] fix logic error in xfs_alloc_ag_vextent_near() 2008-04-18 12:03:02 +10:00
xfs_alloc.h [XFS] Lazy Superblock Counters 2007-07-14 15:28:50 +10:00
xfs_arch.h xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_attr_leaf.c [XFS] Always use di_forkoff when checking for attr space. 2008-04-18 12:03:40 +10:00
xfs_attr_leaf.h
xfs_attr_sf.h
xfs_attr.c [XFS] Remove CONFIG_XFS_SECURITY. 2008-04-18 12:04:19 +10:00
xfs_attr.h [XFS] kill struct bhv_vnode 2007-10-16 11:40:24 +10:00
xfs_bit.c [XFS] Undo bit ops cleanup mod due to regression on 32-bit powermac 2008-02-26 17:05:44 +11:00
xfs_bit.h [XFS] Undo bit ops cleanup mod due to regression on 32-bit powermac 2008-02-26 17:05:44 +11:00
xfs_bmap_btree.c [XFS] replace remaining __FUNCTION__ occurrences 2008-04-18 11:51:26 +10:00
xfs_bmap_btree.h [XFS] remove shouting-indirection macros from xfs_sb.h 2008-04-10 16:24:45 +10:00
xfs_bmap.c [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
xfs_bmap.h [XFS] replace remaining __FUNCTION__ occurrences 2008-04-18 11:51:26 +10:00
xfs_btree.c
xfs_btree.h [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_buf_item.c [XFS] Ensure xfs_bawrite() errors are checked. 2008-04-18 12:00:35 +10:00
xfs_buf_item.h [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_clnt.h [XFS] If you mount an XFS filesystem with no mount options at all, then 2008-02-28 20:37:56 -08:00
xfs_da_btree.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_da_btree.h [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_dfrag.c [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs_dfrag.h
xfs_dinode.h [XFS] Remove CFORK macros and use code directly in IFORK and DFORK macros. 2008-02-07 18:19:24 +11:00
xfs_dir2_block.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_dir2_block.h [XFS] use filldir internally 2007-10-15 16:49:49 +10:00
xfs_dir2_data.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_dir2_data.h [XFS] Reduce shouting by removing unnecessary macros from dir2 code. 2007-07-14 15:37:02 +10:00
xfs_dir2_leaf.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_dir2_leaf.h [XFS] use filldir internally 2007-10-15 16:49:49 +10:00
xfs_dir2_node.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_dir2_node.h [XFS] Reduce shouting by removing unnecessary macros from dir2 code. 2007-07-14 15:37:02 +10:00
xfs_dir2_sf.c [XFS] Put the correct offset in dirent d_off 2007-12-18 17:16:23 +11:00
xfs_dir2_sf.h [XFS] use filldir internally 2007-10-15 16:49:49 +10:00
xfs_dir2_trace.c
xfs_dir2_trace.h
xfs_dir2.c [XFS] remove bhv_vname_t and xfs_rename code 2008-04-18 12:00:12 +10:00
xfs_dir2.h [XFS] remove bhv_vname_t and xfs_rename code 2008-04-18 12:00:12 +10:00
xfs_dmapi.h [XFS] kill the vfs_flags member in struct bhv_vfs 2007-10-16 11:45:57 +10:00
xfs_dmops.c [XFS] fixups after behavior removal merge into mainline git 2007-10-19 17:14:45 +10:00
xfs_error.c [XFS] lose xfs_hex_dump in favor of print_hex_dump 2008-02-07 18:13:05 +11:00
xfs_error.h [XFS] lose xfs_hex_dump in favor of print_hex_dump 2008-02-07 18:13:05 +11:00
xfs_extfree_item.c [XFS] Unwrap AIL_LOCK 2008-02-07 16:44:23 +11:00
xfs_extfree_item.h
xfs_filestream.c [XFS] replace remaining __FUNCTION__ occurrences 2008-04-18 11:51:26 +10:00
xfs_filestream.h [XFS] Concurrent Multi-File Data Streams 2007-07-14 15:40:53 +10:00
xfs_fs.h [XFS] fix 32-bit compat ioctls for GETXFLAGS, SETXFLAGS, GETVERSION 2008-02-07 18:13:17 +11:00
xfs_fsops.c [XFS] remove shouting-indirection macros from xfs_sb.h 2008-04-10 16:24:45 +10:00
xfs_fsops.h
xfs_ialloc_btree.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_ialloc_btree.h [XFS] kill XFS_INOBT_IS_FREE_DISK 2008-02-07 18:12:41 +11:00
xfs_ialloc.c [XFS] Account for inode cluster alignment in all allocations 2008-04-18 11:42:09 +10:00
xfs_ialloc.h [XFS] Pick a single default inode cluster size. 2007-10-15 16:39:35 +10:00
xfs_iget.c [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
xfs_imap.h
xfs_inode_item.c [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
xfs_inode_item.h [XFS] Use xfs_inode_clean() in more places 2008-04-18 11:37:51 +10:00
xfs_inode.c [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
xfs_inode.h [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs_inum.h
xfs_iomap.c [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
xfs_iomap.h [XFS] kill unnessecary ioops indirection 2008-02-07 16:44:14 +11:00
xfs_itable.c [XFS] kill di_mode checks after xfs_iget 2008-04-29 15:53:31 +10:00
xfs_itable.h [XFS] Fix XFS_IOC_FSBULKSTAT{,_SINGLE} & XFS_IOC_FSINUMBERS in compat mode 2007-07-14 15:42:50 +10:00
xfs_log_priv.h [XFS] Reorganise xlog_t for better cacheline isolation of contention 2008-04-18 11:50:53 +10:00
xfs_log_recover.c [XFS] Check for errors when changing buffer pointers. 2008-04-18 12:02:10 +10:00
xfs_log_recover.h
xfs_log.c [XFS] Catch log unmount failures. 2008-04-18 12:02:30 +10:00
xfs_log.h [XFS] Sanitise xfs_log_force error checking. 2008-04-18 12:02:20 +10:00
xfs_mount.c [XFS] Ensure errors from xfs_bdstrat() are correctly checked. 2008-04-18 12:00:24 +10:00
xfs_mount.h [XFS] remove bhv_vname_t and xfs_rename code 2008-04-18 12:00:12 +10:00
xfs_mru_cache.c [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_mru_cache.h [XFS] On-demand reaping of the MRU cache 2007-09-17 16:42:02 +10:00
xfs_qmops.c [XFS] Unwrap XFS_SB_LOCK. 2008-02-07 16:47:15 +11:00
xfs_quota.h [XFS] remove dependency of the quota module on behaviors 2007-10-16 11:43:26 +10:00
xfs_refcache.h
xfs_rename.c [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs_rtalloc.c [XFS] Propagate errors from xfs_trans_commit(). 2008-04-18 11:58:17 +10:00
xfs_rtalloc.h [XFS] optimize XFS_IS_REALTIME_INODE w/o realtime config 2008-02-07 18:16:43 +11:00
xfs_rw.c [XFS] Sanitise xfs_log_force error checking. 2008-04-18 12:02:20 +10:00
xfs_rw.h [XFS] optimize XFS_IS_REALTIME_INODE w/o realtime config 2008-02-07 18:16:43 +11:00
xfs_sb.h [XFS] Ensure "both" features2 slots are consistent 2008-04-10 16:25:26 +10:00
xfs_trans_ail.c [XFS] replace remaining __FUNCTION__ occurrences 2008-04-18 11:51:26 +10:00
xfs_trans_buf.c [XFS] Ensure errors from xfs_bdstrat() are correctly checked. 2008-04-18 12:00:24 +10:00
xfs_trans_extfree.c [XFS] Radix tree based inode caching 2007-10-15 16:50:50 +10:00
xfs_trans_inode.c [XFS] shrink mrlock_t 2008-04-29 15:54:02 +10:00
xfs_trans_item.c [XFS] Fix up sparse warnings. 2008-02-07 18:14:38 +11:00
xfs_trans_priv.h [XFS] Move AIL pushing into it's own thread 2008-02-07 18:22:51 +11:00
xfs_trans_space.h
xfs_trans.c xfs: convert beX_add to beX_add_cpu (new common API) 2008-02-13 16:21:19 -08:00
xfs_trans.h [XFS] Replace custom AIL linked-list code with struct list_head 2008-04-18 11:41:57 +10:00
xfs_types.h [XFS] remove bhv_vname_t and xfs_rename code 2008-04-18 12:00:12 +10:00
xfs_utils.c [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs_utils.h [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs_vfsops.c [XFS] Remove periodic logging of in-core superblock counters. 2008-04-18 12:03:12 +10:00
xfs_vfsops.h [XFS] kill xfs_root 2008-02-07 18:24:00 +11:00
xfs_vnodeops.c [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs_vnodeops.h [XFS] remove manual lookup from xfs_rename and simplify locking 2008-04-29 15:54:12 +10:00
xfs.h [XFS] Remove unused HAVE_SPLICE macro. 2008-04-18 12:04:29 +10:00