In the Linux kernel, the following vulnerability has been resolved:
ext4: check and assert if marking an no_delete evicting inode dirty
In ext4evictinode(), if we evicting an inode in the 'nodelete' path, it cannot be raced by another markinodedirty(). If it happens, someone else may accidentally dirty it without holding inode refcount and probably cause use-after-free issues in the writeback procedure. It's indiscoverable and hard to debug, so add an WARNON_ONCE() to check and detect this issue in advance.