@@ -805,7 +805,6 @@ Pull requests:
805805`v6.14-rc5 <https://git.kernel.org/linus/cc8a0934d099b8153fc880a3588eec4791a7bccb >`__,
806806`v6.14-rc6 <https://git.kernel.org/linus/6ceb6346b0436ea6591c33ab6ab22e5077ed17e7 >`__,
807807
808-
809808User visible changes, features:
810809
811810- rebuilding of the free space tree at mount time is done in more transactions,
@@ -863,6 +862,120 @@ Core:
863862 - unused parameter removal
864863 - code moved to new files
865864
865+ 6.15 (May 2025)
866+ ^^^^^^^^^^^^^^^
867+
868+ Pull requests:
869+ `v6.15-rc1 <https://git.kernel.org/linus/fd71def6d9abc5ae362fb9995d46049b7b0ed391 >`__,
870+ `v6.15-rc3 <https://git.kernel.org/linus/0cb9ce06a682b251d350ded18965a3dfa5d13595 >`__,
871+ `v6.15-rc4 <https://git.kernel.org/linus/bc3372351d0c8b2726b7d4229b878342e3e6b0e8 >`__,
872+ `v6.15-rc5 <https://git.kernel.org/linus/7a13c14ee59d4f6c5f4277a86516cbc73a1383a8 >`__,
873+ `v6.15-rc6 <https://git.kernel.org/linus/0d8d44db295ccad20052d6301ef49ff01fb8ae2d >`__,
874+ `v6.15-rc7 <https://git.kernel.org/linus/74a6325597464e940a33e56e98f6899ef77728d8 >`__,
875+
876+ User visible changes:
877+
878+ - fall back to buffered write if direct io is done on a file that requires checksums
879+
880+ - this avoids a problem with checksum mismatch errors, observed e.g. on
881+ virtual images when writes to pages under writeback cause the checksum
882+ mismatch reports
883+
884+ - this may lead to some performance degradation but currently the
885+ recommended setup for VM images is to use the NOCOW file attribute that
886+ also disables checksums
887+
888+ - fast/realtime zstd levels -15 to -1
889+
890+ - supported by mount options (compress=zstd:-5) and defrag ioctl
891+ - improved speed, reduced compression ratio, check the `commit for sample
892+ measurements <https://git.kernel.org/linus/da798fa519df6f995a493ca5105c72ccc4fc7b75> `__.
893+
894+ - defrag ioctl extended to accept negative compression levels
895+
896+ - subpage mode
897+
898+ - remove warning when subpage mode is used, the feature is now reasonably
899+ complete and tested
900+ - in debug mode allow to create 2K b-tree nodes to allow testing subpage on
901+ x86_64 with 4K pages too
902+
903+ - fixes
904+
905+ - escape subvolume path in mount option list so it cannot be wrongly parsed
906+ when the path contains ","
907+
908+ - reinstate message when setting a large value of mount option 'commit'
909+
910+ Performance improvements:
911+
912+ - in send, better file path caching improves runtime (on sample load by -30%)
913+
914+ - on s390x with hardware zlib support prepare the input buffer in a better way
915+ to get the best results from the acceleration
916+
917+ - minor speed improvement in encoded read, avoid memory allocation in
918+ synchronous mode
919+
920+ Core:
921+
922+ - enable stable writes on inodes, replacing manually waiting for writeback and
923+ allowing to skip that on inodes without checksums
924+
925+ - add last checks and warnings for out-of-band dirty writes to pages, requiring
926+ a fixup ("fixup worker"), this should not be necessary since 5.8 where
927+ get_user_page() and pin_user_pages*() prevent this
928+
929+ - more preparations for large folio support
930+
931+ 6.16 (Jul 2025)
932+ ^^^^^^^^^^^^^^^
933+
934+ `v6.16-rc1 <https://git.kernel.org/linus/5e82ed5ca4b510e0ff53af1e12e94e6aa1fe5a93 >`__,
935+ `v6.16-rc1 <https://git.kernel.org/linus/a56baa225308e697163e74bae0cc623a294073d4 >`__,
936+ `v6.16-rc4 <https://git.kernel.org/linus/5ca7fe213ba3113dde19c4cd46347c16d9e69f81 >`__,
937+ `v6.16-rc5 <https://git.kernel.org/linus/4c06e63b92038fadb566b652ec3ec04e228931e8 >`__,
938+
939+ Performance:
940+
941+ - extent buffer conversion to xarray gains throughput and runtime improvements
942+ on metadata heavy operations doing writeback (sample test shows +50%
943+ throughput, -33% runtime)
944+
945+ - extent io tree cleanups lead to performance improvements by avoiding
946+ unnecessary searches or repeated searches
947+
948+ - more efficient extent unpinning when committing transaction (estimated run
949+ time improvement 3-5%)
950+
951+ User visible changes:
952+
953+ - remove standalone mount option 'nologreplay', deprecated in 5.9, replacement
954+ is 'rescue=nologreplay'
955+
956+ - in scrub, update reporting, add back device stats message after detected
957+ errors (accidentally removed during recent refactoring)
958+
959+ Core:
960+
961+ - convert extent buffer radix tree to xarray
962+
963+ - in subpage mode, move block perfect compression out of experimental build
964+
965+ - in zoned mode, introduce sub block groups to allow managing special block
966+ groups, like the one for relocation or tree-log, to handle some corner cases
967+ of ENOSPC
968+
969+ - continued preparations for large folios: add support where missing:
970+ compression, buffered write, defrag, hole punching, subpage, send
971+
972+ - fix fsync of files with no hard links not persisting deletion
973+
974+ - reject tree blocks which are not nodesize aligned, a precaution from 4.9
975+ times
976+
977+ - enhanced ASSERT() macro with optional format strings
978+
8669795.x
867980---
868981
0 commit comments