Christoph Hellwig
58d84c4ee0
xfs: fix ->write_inode return values
...
Currently we always redirty an inode that was attempted to be written out
synchronously but has been cleaned by an AIL pushed internall, which is
rather bogus. Fix that by doing the i_update_core check early on and
return 0 for it. Also include async calls for it, as doing any work for
those is just as pointless. While we're at it also fix the sign for the
EIO return in case of a filesystem shutdown, and fix the completely
non-sensical locking around xfs_log_inode.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Alex Elder <aelder@sgi.com>
(cherry picked from commit 297db93bb74cf687510313eb235a7aec14d67e97)
Signed-off-by: Alex Elder <aelder@sgi.com>
2011-09-01 09:46:11 -05:00
..
Kconfig
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: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_aops.h
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_attr.c
xfs: Remove the macro XFS_BUF_ERROR and family
2011-07-25 14:57:46 -05:00
xfs_attr.h
xfs_attr_leaf.c
xfs: byteswap constants instead of variables
2011-07-08 14:36:05 +02:00
xfs_attr_leaf.h
xfs_attr_sf.h
xfs_bit.c
xfs_bit.h
xfs_bmap.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
2011-08-08 07:06:24 -05:00
xfs_bmap.h
xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag
2011-05-25 10:48:36 -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: Remove the macro XFS_BUF_ERROR and family
2011-07-25 14:57:46 -05:00
xfs_btree.h
xfs: Remove the macro XFS_BUF_PTR
2011-07-25 15:03:13 -05:00
xfs_buf.c
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_buf.h
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_buf_item.c
"xfs: fix error handling for synchronous writes" revisited
2011-08-10 17:00:21 -05:00
xfs_buf_item.h
xfs_da_btree.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
2011-08-08 07:06:24 -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: cleanup duplicate initializations
2011-04-28 13:25:29 -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: factor out xfs_dir2_leaf_find_stale
2011-07-13 13:43:48 +02: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: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_discard.h
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_dquot.c
xfs: remove subdirectories
2011-08-12 16:21:35 -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_error.h
xfs_export.c
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_export.h
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_extfree_item.c
xfs_extfree_item.h
xfs_file.c
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_filestream.c
xfs: fix misspelled S_IS...()
2011-07-26 15:05:30 -04:00
xfs_filestream.h
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
Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc"
2011-07-11 10:21:03 -05:00
xfs_fsops.h
xfs_globals.c
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_ialloc.c
xfs: Remove the macro XFS_BUF_ERROR and family
2011-07-25 14:57:46 -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 leftovers of the old btree tracing code
2011-07-13 13:43:50 +02:00
xfs_inode.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
2011-08-08 07:06:24 -05:00
xfs_inode.h
xfs: get rid of open-coded S_ISREG(), etc.
2011-07-26 15:05:16 -04:00
xfs_inode_item.c
xfs: remove wrappers around b_fspriv
2011-07-13 13:43:49 +02:00
xfs_inode_item.h
xfs_inum.h
xfs: cleanup shortform directory inode number handling
2011-07-08 14:35:03 +02:00
xfs_ioctl.c
xfs: remove subdirectories
2011-08-12 16:21:35 -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
Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc"
2011-07-11 10:21:03 -05:00
xfs_iomap.h
xfs_iops.c
xfs: fix xfs_mark_inode_dirty during umount
2011-08-31 17:59:39 -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_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: replace xfs_buf_geterror() with bp->b_error
2011-08-12 13:39:40 -05:00
xfs_log_recover.h
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
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
2011-08-08 07:06:24 -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_mru_cache.h
xfs_qm.c
xfs: remove subdirectories
2011-08-12 16:21:35 -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: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_quota.h
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: get rid of open-coded S_ISREG(), etc.
2011-07-26 15:05:16 -04:00
xfs_rtalloc.c
xfs: Remove the macro XFS_BUF_PTR
2011-07-25 15:03:13 -05:00
xfs_rtalloc.h
xfs: Remove the macro XFS_BUF_PTR
2011-07-25 15:03:13 -05:00
xfs_rw.c
xfs: Remove the macro XFS_BUFTARG_NAME
2011-07-25 15:03:37 -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: fix ->write_inode return values
2011-09-01 09:46:11 -05:00
xfs_super.h
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_sync.c
xfs: remove subdirectories
2011-08-12 16:21:35 -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: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_trans.c
xfs: use a cursor for bulk AIL insertion
2011-07-20 18:37:20 -05:00
xfs_trans.h
Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc"
2011-07-11 10:21:03 -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: Remove the macro XFS_BUF_TARGET
2011-07-25 15:03:31 -05:00
xfs_trans_dquot.c
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_trans_extfree.c
xfs_trans_inode.c
xfs: remove i_transp
2011-07-08 14:34:47 +02: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_utils.h
xfs_vnode.h
xfs: remove subdirectories
2011-08-12 16:21:35 -05:00
xfs_vnodeops.c
xfs: replace xfs_buf_geterror() with bp->b_error
2011-08-12 13:39:40 -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