linux-hardened/fs/xfs
Christoph Hellwig ddc3415aba xfs: simplify xfs_trans_ijoin* again
There is no reason to keep a reference to the inode even if we unlock
it during transaction commit because we never drop a reference between
the ijoin and commit.  Also use this fact to merge xfs_trans_ijoin_ref
back into xfs_trans_ijoin - the third argument decides if an unlock
is needed now.

I'm actually starting to wonder if allowing inodes to be unlocked
at transaction commit really is worth the effort.  The only real
benefit is that they can be unlocked earlier when commiting a
synchronous transactions, but that could be solved by doing the
log force manually after the unlock, too.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
2011-10-11 21:15:08 -05:00
..
Kconfig quota: Make QUOTACTL config be selected by its users 2010-10-05 12:16:37 +02:00
kmem.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
kmem.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
Makefile xfs: fix tracing builds inside the source tree 2011-08-22 16:37:24 -05:00
mrlock.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
time.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
uuid.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
uuid.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs.h xfs: don't expect xfs headers to be in subdirectories 2011-08-12 13:57:55 -05:00
xfs_acl.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_acl.h xfs: Fix build breakage in xfs_iops.c when CONFIG_FS_POSIX_ACL is not set 2011-08-01 02:35:04 -04:00
xfs_ag.h xfs: Remove the macro XFS_BUF_PTR 2011-07-25 15:03:13 -05:00
xfs_alloc.c xfs: Remove the macro XFS_BUF_ERROR and family 2011-07-25 14:57:46 -05:00
xfs_alloc.h xfs: do not discard alloc btree blocks 2011-05-24 11:17:22 -05:00
xfs_alloc_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_alloc_btree.h
xfs_aops.c xfs: introduce xfs_bmapi_read() 2011-10-11 21:15:03 -05:00
xfs_aops.h xfs: remove i_iocount 2011-10-11 21:15:01 -05:00
xfs_attr.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_attr.h
xfs_attr_leaf.c xfs: introduce xfs_bmapi_read() 2011-10-11 21:15:03 -05:00
xfs_attr_leaf.h
xfs_attr_sf.h
xfs_bit.c
xfs_bit.h
xfs_bmap.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_bmap.h xfs: cleanup xfs_bmap.h 2011-10-11 21:15:07 -05:00
xfs_bmap_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_bmap_btree.h
xfs_btree.c xfs: Check the return value of xfs_trans_get_buf() 2011-10-11 21:15:01 -05:00
xfs_btree.h xfs: Remove the macro XFS_BUF_PTR 2011-07-25 15:03:13 -05:00
xfs_buf.c xfs: Fix the incorrect comment in the header of _xfs_buf_find 2011-10-11 21:15:02 -05:00
xfs_buf.h xfs: use the "delwri" terminology consistently 2011-10-11 21:15:00 -05:00
xfs_buf_item.c xfs: call xfs_buf_delwri_queue directly 2011-10-11 21:14:59 -05:00
xfs_buf_item.h xfs: use struct list_head for the buf cancel table 2010-12-16 16:05:22 -06:00
xfs_da_btree.c xfs: rename xfs_bmapi to xfs_bmapi_write 2011-10-11 21:15:04 -05:00
xfs_da_btree.h xfs: remove the dead XFS_DABUF_DEBUG code 2011-07-13 13:43:50 +02:00
xfs_dfrag.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_dfrag.h
xfs_dinode.h xfs: Remove the macro XFS_BUF_PTR 2011-07-25 15:03:13 -05:00
xfs_dir2.c xfs: get rid of open-coded S_ISREG(), etc. 2011-07-26 15:05:16 -04:00
xfs_dir2.h xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_block.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_data.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_format.h xfs: cleanup struct xfs_dir2_free 2011-07-13 13:43:48 +02:00
xfs_dir2_leaf.c xfs: introduce xfs_bmapi_read() 2011-10-11 21:15:03 -05:00
xfs_dir2_node.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-07-25 13:56:39 -07:00
xfs_dir2_priv.h xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_dir2_sf.c xfs: reshuffle dir2 headers 2011-07-13 13:43:48 +02:00
xfs_discard.c xfs: fix possible overflow in xfs_ioc_trim() 2011-10-11 21:15:07 -05:00
xfs_discard.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_dquot.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_dquot.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_dquot_item.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_dquot_item.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_error.c xfs: Convert remaining cmn_err() callers to new API 2011-03-07 10:08:35 +11:00
xfs_error.h xfs: kill support/debug.[ch] 2011-03-07 10:09:35 +11:00
xfs_export.c xfs: unlock the inode before log force in xfs_fs_nfs_commit_metadata 2011-10-11 21:15:08 -05:00
xfs_export.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_extfree_item.c xfs: fix efi item leak on forced shutdown 2011-01-28 09:01:33 -06:00
xfs_extfree_item.h xfs: Pull EFI/EFD handling out from under the AIL lock 2010-12-20 11:59:49 +11:00
xfs_file.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_filestream.c xfs: rename allocation range fields in struct xfs_bmalloca 2011-10-11 21:15:06 -05:00
xfs_filestream.h xfs: clean up filestreams helpers 2010-07-26 13:16:51 -05:00
xfs_fs.h xfs: consolidate & clarify mount sanity checks 2011-07-08 11:32:51 -05:00
xfs_fs_subr.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_fsops.c xfs: Check the return value of xfs_buf_get() 2011-10-11 21:15:01 -05:00
xfs_fsops.h xfs: ensure log covering transactions are synchronous 2011-01-11 20:28:17 -06:00
xfs_globals.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_ialloc.c xfs: Check the return value of xfs_trans_get_buf() 2011-10-11 21:15:01 -05:00
xfs_ialloc.h
xfs_ialloc_btree.c xfs: remove leftovers of the old btree tracing code 2011-07-13 13:43:50 +02:00
xfs_ialloc_btree.h
xfs_iget.c xfs: remove i_iocount 2011-10-11 21:15:01 -05:00
xfs_inode.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_inode.h xfs: remove i_iocount 2011-10-11 21:15:01 -05:00
xfs_inode_item.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_inode_item.h xfs: simplify inode to transaction joining 2010-07-26 13:16:36 -05:00
xfs_inum.h xfs: cleanup shortform directory inode number handling 2011-07-08 14:35:03 +02:00
xfs_ioctl.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_ioctl.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_ioctl32.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_ioctl32.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_iomap.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_iomap.h xfs: kill xfs_iomap 2010-12-16 16:05:51 -06:00
xfs_iops.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_iops.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_itable.c xfs: fix variable set but not used warnings 2011-04-08 08:09:12 -05:00
xfs_itable.h xfs: remove block number from inode lookup code 2010-06-24 11:35:17 +10:00
xfs_linux.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_log.c xfs: Remove the macro XFS_BUF_SET_PTR 2011-07-25 15:03:17 -05:00
xfs_log.h xfs: exact busy extent tracking 2011-04-28 13:18:04 -05:00
xfs_log_cil.c xfs: add online discard support 2011-05-24 11:17:13 -05:00
xfs_log_priv.h xfs: exact busy extent tracking 2011-04-28 13:18:04 -05:00
xfs_log_recover.c xfs: let xfs_bwrite callers handle the xfs_buf_relse 2011-10-11 21:15:00 -05:00
xfs_log_recover.h xfs: Clean up XFS_BLI_* flag namespace 2010-05-24 10:33:39 -05:00
xfs_message.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_message.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_mount.c xfs: call xfs_buf_delwri_queue directly 2011-10-11 21:14:59 -05:00
xfs_mount.h xfs: Remove the second parameter to xfs_sb_count() 2011-07-20 18:35:03 -05:00
xfs_mru_cache.c xfs: convert to alloc_workqueue() 2011-02-01 11:42:43 +01:00
xfs_mru_cache.h
xfs_qm.c xfs: introduce xfs_bmapi_read() 2011-10-11 21:15:03 -05:00
xfs_qm.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_qm_bhv.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_qm_stats.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_qm_stats.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_qm_syscalls.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_quota.h xfs: Convert xlog_warn to new logging interface 2011-03-07 10:01:35 +11:00
xfs_quota_priv.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_quotaops.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_rename.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_rtalloc.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_rtalloc.h xfs: Remove the macro XFS_BUF_PTR 2011-07-25 15:03:13 -05:00
xfs_rw.c xfs: call xfs_buf_delwri_queue directly 2011-10-11 21:14:59 -05:00
xfs_rw.h
xfs_sb.h xfs: Remove the macro XFS_BUF_PTR 2011-07-25 15:03:13 -05:00
xfs_stats.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_stats.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_super.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_super.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_sync.c xfs: remove i_iocount 2011-10-11 21:15:01 -05:00
xfs_sync.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_sysctl.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_sysctl.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_trace.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_trace.h xfs: call xfs_buf_delwri_queue directly 2011-10-11 21:14:59 -05:00
xfs_trans.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_trans.h xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_trans_ail.c xfs: set cursor in xfs_ail_splice() even when AIL was empty 2011-08-09 15:30:43 -05:00
xfs_trans_buf.c xfs: call xfs_buf_delwri_queue directly 2011-10-11 21:14:59 -05:00
xfs_trans_dquot.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_trans_extfree.c xfs: Pull EFI/EFD handling out from under the AIL lock 2010-12-20 11:59:49 +11:00
xfs_trans_inode.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_trans_priv.h xfs: convert AIL cursors to use struct list_head 2011-07-20 18:37:46 -05:00
xfs_trans_space.h
xfs_types.h xfs: exact busy extent tracking 2011-04-28 13:18:04 -05:00
xfs_utils.c xfs: remove xfs_cred.h 2010-10-18 15:08:06 -05:00
xfs_utils.h xfs: remove xfs_cred.h 2010-10-18 15:08:06 -05:00
xfs_vnode.h xfs: remove subdirectories 2011-08-12 16:21:35 -05:00
xfs_vnodeops.c xfs: simplify xfs_trans_ijoin* again 2011-10-11 21:15:08 -05:00
xfs_vnodeops.h xfs: split xfs_setattr 2011-07-08 14:34:23 +02:00
xfs_xattr.c xfs: remove subdirectories 2011-08-12 16:21:35 -05:00