# git rev-parse -q --verify 0ee7c3e25d8c28845fceb4dd1c3cb5f50b9c45a9^{commit} # git fetch -q -n -f git://fs.ozlabs.ibm.com/kernel/linus master # git rev-parse -q --verify 0ee7c3e25d8c28845fceb4dd1c3cb5f50b9c45a9^{commit} 0ee7c3e25d8c28845fceb4dd1c3cb5f50b9c45a9 # git checkout -q -f -B kisskb 0ee7c3e25d8c28845fceb4dd1c3cb5f50b9c45a9 # git clean -qxdf # < git log -1 # commit 0ee7c3e25d8c28845fceb4dd1c3cb5f50b9c45a9 # Merge: 916d636e0a2d 03b8df8d43ec # Author: Linus Torvalds # Date: Tue Aug 31 11:13:35 2021 -0700 # # Merge tag 'iomap-5.15-merge-4' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux # # Pull iomap updates from Darrick Wong: # "The most notable externally visible change for this cycle is the # addition of support for reads to inline tail fragments of files, which # was requested by the erofs developers; and a correction for a kernel # memory corruption bug if the sysadmin tries to activate a swapfile # with more pages than the swapfile header suggests. # # We also now report writeback completion errors to the file mapping # correctly, instead of munging all errors into EIO. # # Internally, the bulk of the changes are Christoph's patchset to reduce # the indirect function call count by a third to a half by converting # iomap iteration from a loop pattern to a generator/consumer pattern. # As an added bonus, fsdax no longer open-codes iomap apply loops. # # Summary: # # - Simplify the bio_end_page usage in the buffered IO code. # # - Support reading inline data at nonzero offsets for erofs. # # - Fix some typos and bad grammar. # # - Convert kmap_atomic usage in the inline data read path. # # - Add some extra inline data input checking. # # - Fix a memory corruption bug stemming from iomap_swapfile_activate # trying to activate more pages than mm was expecting. # # - Pass errnos through the page writeback code so that writeback # errors are reported correctly instead of being munged to EIO. # # - Replace iomap_apply with a open-coded iterator loops to reduce the # number of indirect calls by a third to a half. # # - Refactor the fsdax code to use iomap iterators instead of the # open-coded iomap_apply code that it had before. # # - Format file range iomap tracepoint data in hexadecimal and # standardize the names used in the pretty-print string" # # * tag 'iomap-5.15-merge-4' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (41 commits) # iomap: standardize tracepoint formatting and storage # mm/swap: consider max pages in iomap_swapfile_add_extent # iomap: move loop control code to iter.c # iomap: constify iomap_iter_srcmap # fsdax: switch the fault handlers to use iomap_iter # fsdax: factor out a dax_fault_actor() helper # fsdax: factor out helpers to simplify the dax fault code # iomap: rework unshare flag # iomap: pass an iomap_iter to various buffered I/O helpers # iomap: remove iomap_apply # fsdax: switch dax_iomap_rw to use iomap_iter # iomap: switch iomap_swapfile_activate to use iomap_iter # iomap: switch iomap_seek_data to use iomap_iter # iomap: switch iomap_seek_hole to use iomap_iter # iomap: switch iomap_bmap to use iomap_iter # iomap: switch iomap_fiemap to use iomap_iter # iomap: switch __iomap_dio_rw to use iomap_iter # iomap: switch iomap_page_mkwrite to use iomap_iter # iomap: switch iomap_zero_range to use iomap_iter # iomap: switch iomap_file_unshare to use iomap_iter # ... # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux-ld --version # < git log --format=%s --max-count=1 0ee7c3e25d8c28845fceb4dd1c3cb5f50b9c45a9 # < make -s -j 48 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- randconfig # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # < make -s -j 48 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- help # make -s -j 48 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- olddefconfig # make -s -j 48 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- Completed OK # rm -rf /kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 # Build took: 0:04:03.095359