# git rev-parse -q --verify b52bb135aad99deea9bfe5f050c3295b049adc87^{commit} b52bb135aad99deea9bfe5f050c3295b049adc87 already have revision, skipping fetch # git checkout -q -f -B kisskb b52bb135aad99deea9bfe5f050c3295b049adc87 # git clean -qxdf # < git log -1 # commit b52bb135aad99deea9bfe5f050c3295b049adc87 # Merge: 4f016a316f22 1cd738b13ae9 # Author: Linus Torvalds # Date: Sun Feb 21 10:34:36 2021 -0800 # # Merge tag 'xfs-5.12-merge-5' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux # # Pull xfs updates from Darrick Wong: # "There's a lot going on this time, which seems about right for this # drama-filled year. # # Community developers added some code to speed up freezing when # read-only workloads are still running, refactored the logging code, # added checks to prevent file extent counter overflow, reduced iolock # cycling to speed up fsync and gc scans, and started the slow march # towards supporting filesystem shrinking. # # There's a huge refactoring of the internal speculative preallocation # garbage collection code which fixes a bunch of bugs, makes the gc # scheduling per-AG and hence multithreaded, and standardizes the retry # logic when we try to reserve space or quota, can't, and want to # trigger a gc scan. We also enable multithreaded quotacheck to reduce # mount times further. This is also preparation for background file gc, # which may or may not land for 5.13. # # We also fixed some deadlocks in the rename code, fixed a quota # accounting leak when FSSETXATTR fails, restored the behavior that # write faults to an mmap'd region actually cause a SIGBUS, fixed a bug # where sgid directory inheritance wasn't quite working properly, and # fixed a bug where symlinks weren't working properly in ecryptfs. We # also now advertise the inode btree counters feature that was # introduced two cycles ago. # # Summary: # # - Fix an ABBA deadlock when renaming files on overlayfs. # # - Make sure that we can't overflow the inode extent counters when # adding to or removing extents from a file. # # - Make directory sgid inheritance work the same way as all the other # filesystems. # # - Don't drain the buffer cache on freeze and ro remount, which should # reduce the amount of time if read-only workloads are continuing # during the freeze. # # - Fix a bug where symlink size isn't reported to the vfs in ecryptfs. # # - Disentangle log cleaning from log covering. This refactoring sets # us up for future changes to the log, though for now it simply means # that we can use covering for freezes, and cleaning becomes # something we only do at unmount. # # - Speed up file fsyncs by reducing iolock cycling. # # - Fix delalloc blocks leaking when changing the project id fails # because of input validation errors in FSSETXATTR. # # - Fix oversized quota reservation when converting unwritten extents # during a DAX write. # # - Create a transaction allocation helper function to standardize the # idiom of allocating a transaction, reserving blocks, locking # inodes, and reserving quota. Replace all the open-coded logic for # file creation, file ownership changes, and file modifications to # use them. # # - Actually shut down the fs if the incore quota reservations get # corrupted. # # - Fix background block garbage collection scans to not block and to # actually clean out CoW staging extents properly. # # - Run block gc scans when we run low on project quota. # # - Use the standardized transaction allocation helpers to make it so # that ENOSPC and EDQUOT errors during reservation will back out, # invoke the block gc scanner, and try again. This is preparation for # introducing background inode garbage collection in the next cycle. # # - Combine speculative post-EOF block garbage collection with # speculative copy on write block garbage collection. # # - Enable multithreaded quotacheck. # # - Allow sysadmins to tweak the CPU affinities and maximum concurrency # levels of quotacheck and background blockgc worker pools. # # - Expose the inode btree counter feature in the fs geometry ioctl. # # - Cleanups of the growfs code in preparation for starting work on # filesystem shrinking. # # - Fix all the bloody gcc warnings that the maintainer knows about. :P # # - Fix a RST syntax error. # # - Don't trigger bmbt corruption assertions after the fs shuts down. # # - Restore behavior of forcing SIGBUS on a shut down filesystem when # someone triggers a mmap write fault (or really, any buffered # write)" # # * tag 'xfs-5.12-merge-5' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (85 commits) # xfs: consider shutdown in bmapbt cursor delete assert # xfs: fix boolreturn.cocci warnings # xfs: restore shutdown check in mapped write fault path # xfs: fix rst syntax error in admin guide # xfs: fix incorrect root dquot corruption error when switching group/project quota types # xfs: get rid of xfs_growfs_{data,log}_t # xfs: rename `new' to `delta' in xfs_growfs_data_private() # libxfs: expose inobtcount in xfs geometry # xfs: don't bounce the iolock between free_{eof,cow}blocks # xfs: expose the blockgc workqueue knobs publicly # xfs: parallelize block preallocation garbage collection # xfs: rename block gc start and stop functions # xfs: only walk the incore inode tree once per blockgc scan # xfs: consolidate the eofblocks and cowblocks workers # xfs: consolidate incore inode radix tree posteof/cowblocks tags # xfs: remove trivial eof/cowblocks functions # xfs: hide xfs_icache_free_cowblocks # xfs: hide xfs_icache_free_eofblocks # xfs: relocate the eofb/cowb workqueue functions # xfs: set WQ_SYSFS on all workqueues in debug mode # ... # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-ld --version # < git log --format=%s --max-count=1 b52bb135aad99deea9bfe5f050c3295b049adc87 # < make -s -j 48 ARCH=arm O=/kisskb/build/linus_s5pv210_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- s5pv210_defconfig # < make -s -j 48 ARCH=arm O=/kisskb/build/linus_s5pv210_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- help # make -s -j 48 ARCH=arm O=/kisskb/build/linus_s5pv210_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- olddefconfig # make -s -j 48 ARCH=arm O=/kisskb/build/linus_s5pv210_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- Completed OK # rm -rf /kisskb/build/linus_s5pv210_defconfig_arm-gcc4.9 # Build took: 0:01:13.982344