]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
xfs: return from xfs_symlink_verify early on V4 filesystems
authorDarrick J. Wong <djwong@kernel.org>
Mon, 2 Dec 2024 18:57:43 +0000 (10:57 -0800)
committerDarrick J. Wong <djwong@kernel.org>
Fri, 13 Dec 2024 01:45:13 +0000 (17:45 -0800)
V4 symlink blocks didn't have headers, so return early if this is a V4
filesystem.

Cc: <stable@vger.kernel.org> # v5.1
Fixes: 39708c20ab5133 ("xfs: miscellaneous verifier magic value fixups")
Signed-off-by: "Darrick J. Wong" <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/libxfs/xfs_symlink_remote.c

index f228127a88ff26cf3aaf1774da1fc5c0ff07916e..fb47a76ead18c26d97fb4927a30c12ca5aebedce 100644 (file)
@@ -92,8 +92,10 @@ xfs_symlink_verify(
        struct xfs_mount        *mp = bp->b_mount;
        struct xfs_dsymlink_hdr *dsl = bp->b_addr;
 
+       /* no verification of non-crc buffers */
        if (!xfs_has_crc(mp))
-               return __this_address;
+               return NULL;
+
        if (!xfs_verify_magic(bp, dsl->sl_magic))
                return __this_address;
        if (!uuid_equal(&dsl->sl_uuid, &mp->m_sb.sb_meta_uuid))