News, tips, partners, and perspectives for the Oracle Linux operating system and upstream Linux kernel work

Btrfs: Advantages of upgrading from UEK5 to UEK6

Guest Author
Oracle Linux developer Anand Jain highlights the btrfs improvements received by upgrading from UEK5 to UEK6.


Oracle UEK kernels have been providing the btrfs filesystem since release 5 (UEK5). The most recent UEK kernel is release 6 (UEK6), which is based on Linux kernel 5.4, where as UEK5 is based on Linux kernel 4.14. UEK6 as you would expect contains a lot more fixes and improvements as compared to UEK5.

With specific regard to the btrfs filesystem, I will skim through a few significant improvements and fixes in UEK6. Bear in mind that UEK6 btrfs includes many other bug fixes other than what is listed below. In general as a rule of thumb, it is encouraged to use UEK6 when possible. Also, the backporting of newly reported btrfs mainline bugs is more likely to occur and more feasible in UEK6 when compared to UEK5.

New features/improvements in btrfs in UEK6:

  • Supports zlib and zstd compression level, -o compress=zlib:9

  • Unprivileged ioctls allow users to enumerate subvolumes

  • rmdir() can delete an empty subvolume

  • Dedupe syscall implementation does not restrict the range to 16MiB

  • Improved trim support - Skip unallocated chunks that haven't been touched since the last mount

  • Swapfile support

  • Space handling - Improved ticket reservations, flushing infrastructure, reduced metadata reservation for updating inodes, global block reserve minimum size (affects small filesystems), overcommit logic with regard to global block reserve

  • Tree checker - More sanity checks on ROOT_ITEM, EXTENT_ITEM and METADATA_ITEM, Block Ref Item, EXTENT_DATA_REF

  • Mixed Enospc fixes for high fragmentation and over-reservation

  • Performance improvements - Replace blocking mode with the spinning mode to improve latency and scalability

  • Better read time and write checks to catch errors early and before writing data to disk (to detect potential memory corruption on data that get checksummed)

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.