# git rev-parse -q --verify affc5af36bbb62073b6aaa4f4459b38937ff5331^{commit} affc5af36bbb62073b6aaa4f4459b38937ff5331 already have revision, skipping fetch # git checkout -q -f -B kisskb affc5af36bbb62073b6aaa4f4459b38937ff5331 # git clean -qxdf # < git log -1 # commit affc5af36bbb62073b6aaa4f4459b38937ff5331 # Merge: 12958e9c4c8e e94dfb7a2935 # Author: Linus Torvalds # Date: Wed Jan 10 09:27:40 2024 -0800 # # Merge tag 'for-6.8-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux # # Pull btrfs updates from David Sterba: # "There are no exciting changes for users, it's been mostly API # conversions and some fixes or refactoring. # # The mount API conversion is a base for future improvements that would # come with VFS. Metadata processing has been converted to folios, not # yet enabling the large folios but it's one patch away once everything # gets tested enough. # # Core changes: # # - convert extent buffers to folios: # - direct API conversion where possible # - performance can drop by a few percent on metadata heavy # workloads, the folio sizes are not constant and the calculations # add up in the item helpers # - both regular and subpage modes # - data cannot be converted yet, we need to port that to iomap and # there are some other generic changes required # # - convert mount to the new API, should not be user visible: # - options deprecated long time ago have been removed: inode_cache, # recovery # - the new logic that splits mount to two phases slightly changes # timing of device scanning for multi-device filesystems # - LSM options will now work (like for selinux) # # - convert delayed nodes radix tree to xarray, preserving the # preload-like logic that still allows to allocate with GFP_NOFS # # - more validation of sysfs value of scrub_speed_max # # - refactor chunk map structure, reduce size and improve performance # # - extent map refactoring, smaller data structures, improved # performance # # - reduce size of struct extent_io_tree, embedded in several # structures # # - temporary pages used for compression are cached and attached to a # shrinker, this may slightly improve performance # # - in zoned mode, remove redirty extent buffer tracking, zeros are # written in case an out-of-order is detected and proper data are # written to the actual write pointer # # - cleanups, refactoring, error message improvements, updated tests # # - verify and update branch name or tag # # - remove unwanted text" # # * tag 'for-6.8-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (89 commits) # btrfs: pass btrfs_io_geometry into btrfs_max_io_len # btrfs: pass struct btrfs_io_geometry to set_io_stripe # btrfs: open code set_io_stripe for RAID56 # btrfs: change block mapping to switch/case in btrfs_map_block # btrfs: factor out block mapping for single profiles # btrfs: factor out block mapping for RAID5/6 # btrfs: reduce scope of data_stripes in btrfs_map_block # btrfs: factor out block mapping for RAID10 # btrfs: factor out block mapping for DUP profiles # btrfs: factor out RAID1 block mapping # btrfs: factor out block-mapping for RAID0 # btrfs: re-introduce struct btrfs_io_geometry # btrfs: factor out helper for single device IO check # btrfs: migrate btrfs_repair_io_failure() to folio interfaces # btrfs: migrate eb_bitmap_offset() to folio interfaces # btrfs: migrate various end io functions to folios # btrfs: migrate subpage code to folio interfaces # btrfs: migrate get_eb_page_index() and get_eb_offset_in_page() to folios # btrfs: don't double put our subpage reference in alloc_extent_buffer # btrfs: cleanup metadata page pointer usage # ... # < /opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 affc5af36bbb62073b6aaa4f4459b38937ff5331 # make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86_64_defconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- x86_64_defconfig # < make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86_64_defconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86_64_defconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig # make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86_64_defconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- Completed OK # rm -rf /kisskb/build/linus_x86_64_defconfig_x86_64-gcc8 # Build took: 0:04:28.942063