btrfs

The following are known btrfs issues:

  • Send operation causes soft lockup on large deduped file

    Using btrfs send on a large deduped file results in a soft lockup or out-of-memory issue. This problem occurs because the btrfs send operation cannot handle a large deduped file containing file extents that are all pointing to one extent, as these types of file structures create tremendous pressure for the btrfs send operation.

    To prevent this issue from occurring, do not use btrfs send on systems with less than 4 GB of memory. (Bug ID 25306023)

  • Kernel oops when unmounting during a quota rescan or disable

    Operations that trigger a quota rescan or to disable the quota on a mounted file system cause a kernel oops message when attempting to unmount the file system. This can cause the system to hang. (Bug ID 22377928)

  • Kernel oops when removing shared extents using qgroup accounting

    The removal of shared extents where quota group (qgroup) accounting is used can result in a kernel oops message. This relates to an issue where inaccurate results are obtained during a back reference walk, due to missing records when adding delayed references. (Bug ID 21554517)

  • No warning when balancing file system on RAID

    The btrfs filesystem balance command does not warn that the RAID level can be changed under certain circumstances, and does not provide the choice of cancelling the operation. (Bug ID 16472824)

  • Disk space requirement to perform all btrfs operations

    The copy-on-write nature of btrfs means that every operation on the file system initially requires disk space. It is possible that you cannot execute any operation on a disk that has no space left, and even removing a file might not be possible. In the case that there is no space to store metadata, an ENOSPC error is returned. In this situation, run sync before retrying an operation, as this can clear a background writeback that might be reserving metadata space. Another potential workaround is to add a disk or a file backed loop device using the btrfs device add command. The mechanism that is used to store data and metadata might lead to some confusion on the information returned by tools like df. Sometimes, metadata might fill all of the disk space allocated for this purpose, even while there is still space available for data. In this case, the file system is unbalanced and the problem can be resolved by performing a btrfs fi balance operation. See https://btrfs.wiki.kernel.org/index.php/Problem_FAQ#I_get_.22No_space_left_on_device.22_errors.2C_but_df_says_I.27ve_got_lots_of_space.

  • Double count of overwritten space in qgroup show

    When you overwrite data in a file, starting somewhere in the middle of the file, the overwritten space is counted twice in the space usage numbers that btrfs qgroup show displays. Using the btrfs quota rescan does not help fix this issue either. (Bug ID 16609467)

  • Sector size should match page size

    If you use the -s option to specify a sector size to mkfs.btrfs that is different from the page size, the created file system cannot be mounted. By default, the sector size is set to be the same as the page size. (Bug ID 17087232)

  • Location of btrfs-progs and btrfs-progs-devel packages

    The btrfs-progs and btrfs-progs-devel packages for use with UEK R4 are made available in the ol6_x86_64_UEKR4 and ol7_x86_64_UEKR4 ULN channels and the ol6_UEKR4 and ol7_UEKR4 channels on the Oracle Linux Yum Server. In UEK R3, these packages were made available in the ol6_x86_64_latest and ol7_x86_64_latest ULN channels and the ol6_latest and ol7_latest channels on the Oracle Linux Yum Server.