original_kernel/fs/xfs/libxfs
Darrick J. Wong 7b38460dc8 xfs: don't fail when converting shortform attr to long form during ATTR_REPLACE
Kanda Motohiro reported that expanding a tiny xattr into a large xattr
fails on XFS because we remove the tiny xattr from a shortform fork and
then try to re-add it after converting the fork to extents format having
not removed the ATTR_REPLACE flag.  This fails because the attr is no
longer present, causing a fs shutdown.

This is derived from the patch in his bug report, but we really
shouldn't ignore a nonzero retval from the remove call.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199119
Reported-by: kanda.motohiro@gmail.com
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
2018-04-17 19:10:15 -07:00
..
xfs_ag_resv.c
xfs_ag_resv.h
xfs_alloc.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_alloc.h xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_alloc_btree.c
xfs_alloc_btree.h
xfs_attr.c xfs: don't fail when converting shortform attr to long form during ATTR_REPLACE 2018-04-17 19:10:15 -07:00
xfs_attr_leaf.c
xfs_attr_leaf.h
xfs_attr_remote.c
xfs_attr_remote.h
xfs_attr_sf.h
xfs_bit.c
xfs_bit.h
xfs_bmap.c xfs: set format back to extents if xfs_bmap_extents_to_btree 2018-04-17 17:10:17 -07:00
xfs_bmap.h xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_bmap_btree.c
xfs_bmap_btree.h xfs: refactor bmap record validation 2018-03-23 18:05:07 -07:00
xfs_btree.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_btree.h xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_cksum.h
xfs_da_btree.c
xfs_da_btree.h
xfs_da_format.c
xfs_da_format.h
xfs_defer.c
xfs_defer.h
xfs_dir2.c
xfs_dir2.h
xfs_dir2_block.c
xfs_dir2_data.c
xfs_dir2_leaf.c
xfs_dir2_node.c
xfs_dir2_priv.h
xfs_dir2_sf.c
xfs_dquot_buf.c
xfs_errortag.h
xfs_format.h
xfs_fs.h
xfs_ialloc.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_ialloc.h
xfs_ialloc_btree.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_ialloc_btree.h
xfs_iext_tree.c
xfs_inode_buf.c xfs: enhance dinode verifier 2018-04-17 17:10:17 -07:00
xfs_inode_buf.h xfs: move inode extent size hint validation to libxfs 2018-03-23 18:05:08 -07:00
xfs_inode_fork.c xfs: refactor inode verifier error logging 2018-03-23 18:05:07 -07:00
xfs_inode_fork.h
xfs_log_format.h
xfs_log_recover.h
xfs_log_rlimit.c
xfs_quota_defs.h
xfs_refcount.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_refcount.h
xfs_refcount_btree.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_refcount_btree.h xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_rmap.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_rmap.h
xfs_rmap_btree.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_rmap_btree.h xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_rtbitmap.c
xfs_sb.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_sb.h
xfs_shared.h
xfs_symlink_remote.c
xfs_trans_resv.c xfs: non-scrub - remove unused function parameters 2018-04-09 10:23:42 -07:00
xfs_trans_resv.h
xfs_trans_space.h
xfs_types.h