In the Linux kernel before 5.15, improper implementation of block_invalidatepage() allows users to crash the kernel. As long as the page passed to block_invalidatepage() is a huge page and the length is the size of the huge page instead of a single page due to read-only FS THP support, the operation would throw BUG if the size is greater than a single page. Furthermore, all the implementations that are *NOT* THP aware and hardcoded PAGE_SIZE can trigger BUG(), like block_invalidatepage(). References: https://lkml.org/lkml/2021/9/17/1037 https://lkml.org/lkml/2021/9/12/323
Created kernel tracking bugs for this issue: Affects: fedora-all [bug 2034507]
This issue was fixed for Fedora with the 5.14.16 stable kernel updates.