Skip to content
  • Linus Torvalds's avatar
    d2b6f8a1
    Merge tag 'xfs-5.13-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · d2b6f8a1
    Linus Torvalds authored
    Pull xfs updates from Darrick Wong:
     "The notable user-visible addition this cycle is ability to remove
      space from the last AG in a filesystem. This is the first of many
      changes needed for full-fledged support for shrinking a filesystem.
      Still needed are (a) the ability to reorganize files and metadata away
      from the end of the fs; (b) the ability to remove entire allocation
      groups; (c) shrink support for realtime volumes; and (d) thorough
      testing of (a-c).
    
      There are a number of performance improvements in this code drop: Dave
      streamlined various parts of the buffer logging code and reduced the
      cost of various debugging checks, and added the ability to pre-create
      the xattr structures while creating files. Brian eliminated
      transaction reservations that were being held across writeback (thus
      reducing livelock potential.
    
      Other random pieces: Pavel fixed the repetitve warnings about
      deprecated mount options, I fixed online fsck to behave itself when a
      readonly remount comes in during scrub, and refactored various other
      parts of that code, Christoph contributed a lot of refactoring this
      cycle. The xfs_icdinode structure has been absorbed into the (incore)
      xfs_inode structure, and the format and flags handling around
      xfs_inode_fork structures has been simplified. Chandan provided a
      number of fixes for extent count overflow related problems that have
      been shaken out by debugging knobs added during 5.12.
    
      Summary:
    
       - Various minor fixes in online scrub.
    
       - Prevent metadata files from being automatically inactivated.
    
       - Validate btree heights by the computed per-btree limits.
    
       - Don't warn about remounting with deprecated mount options.
    
       - Initialize attr forks at create time if we suspect we're going to
         need to store them.
    
       - Reduce memory reallocation workouts in the logging code.
    
       - Fix some theoretical math calculation errors in logged buffers that
         span multiple discontig memory ranges but contiguous ondisk
         regions.
    
       - Speedups in dirty buffer bitmap handling.
    
       - Make type verifier functions more inline-happy to reduce overhead.
    
       - Reduce debug overhead in directory checking code.
    
       - Many many typo fixes.
    
       - Begin to handle the permanent loss of the very end of a filesystem.
    
       - Fold struct xfs_icdinode into xfs_inode.
    
       - Deprecate the long defunct BMV_IF_NO_DMAPI_READ from the bmapx
         ioctl.
    
       - Remove a broken directory block format check from online scrub.
    
       - Fix a bug where we could produce an unnecessarily tall data fork
         btree when creating an attr fork.
    
       - Fix scrub and readonly remounts racing.
    
       - Fix a writeback ioend log deadlock problem by dropping the behavior
         where we could preallocate a setfilesize transaction.
    
       - Fix some bugs in the new extent count checking code.
    
       - Fix some bugs in the attr fork preallocation code.
    
       - Refactor if_flags out of the incore inode fork data structure"
    
    * tag 'xfs-5.13-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (77 commits)
      xfs: remove xfs_quiesce_attr declaration
      xfs: remove XFS_IFEXTENTS
      xfs: remove XFS_IFINLINE
      xfs: remove XFS_IFBROOT
      xfs: only look at the fork format in xfs_idestroy_fork
      xfs: simplify xfs_attr_remove_args
      xfs: rename and simplify xfs_bmap_one_block
      xfs: move the XFS_IFEXTENTS check into xfs_iread_extents
      xfs: drop unnecessary setfilesize helper
      xfs: drop unused ioend private merge and setfilesize code
      xfs: open code ioend needs workqueue helper
      xfs: drop submit side trans alloc for append ioends
      xfs: fix return of uninitialized value in variable error
      xfs: get rid of the ip parameter to xchk_setup_*
      xfs: fix scrub and remount-ro protection when running scrub
      xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks
      xfs: move the xfs_can_free_eofblocks call under the IOLOCK
      xfs: precalculate default inode attribute offset
      xfs: default attr fork size does not handle device inodes
      xfs: inode fork allocation depends on XFS_IFEXTENT flag
      ...
    d2b6f8a1
    Merge tag 'xfs-5.13-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
    Linus Torvalds authored
    Pull xfs updates from Darrick Wong:
     "The notable user-visible addition this cycle is ability to remove
      space from the last AG in a filesystem. This is the first of many
      changes needed for full-fledged support for shrinking a filesystem.
      Still needed are (a) the ability to reorganize files and metadata away
      from the end of the fs; (b) the ability to remove entire allocation
      groups; (c) shrink support for realtime volumes; and (d) thorough
      testing of (a-c).
    
      There are a number of performance improvements in this code drop: Dave
      streamlined various parts of the buffer logging code and reduced the
      cost of various debugging checks, and added the ability to pre-create
      the xattr structures while creating files. Brian eliminated
      transaction reservations that were being held across writeback (thus
      reducing livelock potential.
    
      Other random pieces: Pavel fixed the repetitve warnings about
      deprecated mount options, I fixed online fsck to behave itself when a
      readonly remount comes in during scrub, and refactored various other
      parts of that code, Christoph contributed a lot of refactoring this
      cycle. The xfs_icdinode structure has been absorbed into the (incore)
      xfs_inode structure, and the format and flags handling around
      xfs_inode_fork structures has been simplified. Chandan provided a
      number of fixes for extent count overflow related problems that have
      been shaken out by debugging knobs added during 5.12.
    
      Summary:
    
       - Various minor fixes in online scrub.
    
       - Prevent metadata files from being automatically inactivated.
    
       - Validate btree heights by the computed per-btree limits.
    
       - Don't warn about remounting with deprecated mount options.
    
       - Initialize attr forks at create time if we suspect we're going to
         need to store them.
    
       - Reduce memory reallocation workouts in the logging code.
    
       - Fix some theoretical math calculation errors in logged buffers that
         span multiple discontig memory ranges but contiguous ondisk
         regions.
    
       - Speedups in dirty buffer bitmap handling.
    
       - Make type verifier functions more inline-happy to reduce overhead.
    
       - Reduce debug overhead in directory checking code.
    
       - Many many typo fixes.
    
       - Begin to handle the permanent loss of the very end of a filesystem.
    
       - Fold struct xfs_icdinode into xfs_inode.
    
       - Deprecate the long defunct BMV_IF_NO_DMAPI_READ from the bmapx
         ioctl.
    
       - Remove a broken directory block format check from online scrub.
    
       - Fix a bug where we could produce an unnecessarily tall data fork
         btree when creating an attr fork.
    
       - Fix scrub and readonly remounts racing.
    
       - Fix a writeback ioend log deadlock problem by dropping the behavior
         where we could preallocate a setfilesize transaction.
    
       - Fix some bugs in the new extent count checking code.
    
       - Fix some bugs in the attr fork preallocation code.
    
       - Refactor if_flags out of the incore inode fork data structure"
    
    * tag 'xfs-5.13-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (77 commits)
      xfs: remove xfs_quiesce_attr declaration
      xfs: remove XFS_IFEXTENTS
      xfs: remove XFS_IFINLINE
      xfs: remove XFS_IFBROOT
      xfs: only look at the fork format in xfs_idestroy_fork
      xfs: simplify xfs_attr_remove_args
      xfs: rename and simplify xfs_bmap_one_block
      xfs: move the XFS_IFEXTENTS check into xfs_iread_extents
      xfs: drop unnecessary setfilesize helper
      xfs: drop unused ioend private merge and setfilesize code
      xfs: open code ioend needs workqueue helper
      xfs: drop submit side trans alloc for append ioends
      xfs: fix return of uninitialized value in variable error
      xfs: get rid of the ip parameter to xchk_setup_*
      xfs: fix scrub and remount-ro protection when running scrub
      xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks
      xfs: move the xfs_can_free_eofblocks call under the IOLOCK
      xfs: precalculate default inode attribute offset
      xfs: default attr fork size does not handle device inodes
      xfs: inode fork allocation depends on XFS_IFEXTENT flag
      ...
Loading