[RFC] xfs-linux: realtime work branch rtalloc-speedups-6.7 updated to 8468dc886e05

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi folks,

I've created a work branch for all of our realtime cleanups and
optimizations in the rtalloc-speedups-6.7 branch of the xfs-linux
repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git

I started by rebasing last week's rt cleanups patchsets against 6.6-rc6
TOT instead of djwong-dev, then I added Dave's xfs_rtalloc_args cleanup,
and then added Omar's rt allocator speedups.  This branch HAS NOT BEEN
TESTED YET, but it's a starting point.

The new head of the rtalloc-speedups-6.7 branch is commit:

8468dc886e05 xfs: don't look for end of extent further than necessary in xfs_rtallocate_extent_near()

36 new commits:

Darrick J. Wong (28):
[6e271069a8e8] xfs: make xchk_iget safer in the presence of corrupt inode btrees
[a4f05ca8e957] xfs: bump max fsgeom struct version
[29c024027344] xfs: hoist freeing of rt data fork extent mappings
[13b454578ad3] xfs: prevent rt growfs when quota is enabled
[d37145ff1fc1] xfs: rt stubs should return negative errnos when rt disabled
[6f9b2269640b] xfs: fix units conversion error in xfs_bmap_del_extent_delay
[f50b658838a6] xfs: make sure maxlen is still congruent with prod when rounding down
[615077bc8c1d] xfs: move the xfs_rtbitmap.c declarations to xfs_rtbitmap.h
[0c1cb7c1da51] xfs: convert xfs_extlen_t to xfs_rtxlen_t in the rt allocator
[f3a29a7ef69c] xfs: convert rt bitmap/summary block numbers to xfs_fileoff_t
[fe06f373a0c0] xfs: convert rt bitmap extent lengths to xfs_rtbxlen_t
[044f35063aae] xfs: rename xfs_verify_rtext to xfs_verify_rtbext
[d77a09d2f1cd] xfs: convert rt extent numbers to xfs_rtxnum_t
[62403a6a8347] xfs: create a helper to convert rtextents to rtblocks
[cdcf7ec7066f] xfs: create a helper to compute leftovers of realtime extents
[7554cfeea00b] xfs: create a helper to convert extlen to rtextlen
[289f997d7525] xfs: create helpers to convert rt block numbers to rt extent numbers
[903b8250c1b2] xfs: convert do_div calls to xfs_rtb_to_rtx helper calls
[2bc367366fa4] xfs: create rt extent rounding helpers for realtime extent blocks
[f60b96941aa2] xfs: use shifting and masking when converting rt extents, if possible
[a024d18f3b34] xfs: convert the rtbitmap block and bit macros to static inline functions
[8808f43be672] xfs: remove XFS_BLOCKWSIZE and XFS_BLOCKWMASK macros
[02c6a803ba9d] xfs: convert open-coded xfs_rtword_t pointer accesses to helper
[3f58eecd512d] xfs: convert rt summary macros to helpers
[38a9bd42e14a] xfs: create helpers for rtbitmap block/wordcount computations
[d498cbd3e248] xfs: use accessor functions for bitmap words
[bf1339d40051] xfs: create helpers for rtsummary block/wordcount computations
[73550154f276] xfs: use accessor functions for summary info words

Dave Chinner (1):
[eae4934139cc] xfs: consolidate realtime allocation arguments

Omar Sandoval (6):
[a0bdaa6acd56] xfs: cache last bitmap block in realtime allocator
[0e7cd2d75d12] xfs: invert the realtime summary cache
[1670d971eaa0] xfs: return maximum free size from xfs_rtany_summary()
[14c0296bc6a1] xfs: limit maxlen based on available space in xfs_rtallocate_extent_near()
[9a2f547ec4be] xfs: don't try redundant allocations in xfs_rtallocate_extent_near()
[8468dc886e05] xfs: don't look for end of extent further than necessary in xfs_rtallocate_extent_near()

Shiyang Ruan (1):
[ea9b00e231ae] mm, pmem, xfs: Introduce MF_MEM_PRE_REMOVE for unbind

Code Diffstat:

drivers/dax/super.c            |   3 +-
fs/xfs/libxfs/xfs_bmap.c       |  45 +--
fs/xfs/libxfs/xfs_format.h     |  34 +-
fs/xfs/libxfs/xfs_rtbitmap.c   | 733 +++++++++++++++++++++++++----------------
fs/xfs/libxfs/xfs_rtbitmap.h   | 326 ++++++++++++++++++
fs/xfs/libxfs/xfs_sb.c         |   2 +
fs/xfs/libxfs/xfs_sb.h         |   2 +-
fs/xfs/libxfs/xfs_trans_resv.c |  10 +-
fs/xfs/libxfs/xfs_types.c      |   4 +-
fs/xfs/libxfs/xfs_types.h      |  10 +-
fs/xfs/scrub/bmap.c            |   2 +-
fs/xfs/scrub/common.c          |   6 +-
fs/xfs/scrub/common.h          |  19 ++
fs/xfs/scrub/fscounters.c      |   2 +-
fs/xfs/scrub/inode.c           |   7 +-
fs/xfs/scrub/rtbitmap.c        |  28 +-
fs/xfs/scrub/rtsummary.c       |  57 ++--
fs/xfs/scrub/trace.c           |   1 +
fs/xfs/scrub/trace.h           |   9 +-
fs/xfs/xfs_bmap_util.c         |  50 ++-
fs/xfs/xfs_fsmap.c             |  15 +-
fs/xfs/xfs_inode_item.c        |   3 +-
fs/xfs/xfs_ioctl.c             |   5 +-
fs/xfs/xfs_linux.h             |  12 +
fs/xfs/xfs_mount.h             |   8 +-
fs/xfs/xfs_notify_failure.c    | 108 +++++-
fs/xfs/xfs_ondisk.h            |   4 +
fs/xfs/xfs_rtalloc.c           | 602 +++++++++++++++++----------------
fs/xfs/xfs_rtalloc.h           |  94 +-----
fs/xfs/xfs_super.c             |   3 +-
fs/xfs/xfs_trans.c             |   7 +-
include/linux/mm.h             |   1 +
mm/memory-failure.c            |  21 +-
33 files changed, 1391 insertions(+), 842 deletions(-)
create mode 100644 fs/xfs/libxfs/xfs_rtbitmap.h



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux