]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
cxl/test: Fix __fortify_panic
authorDan Williams <djbw@kernel.org>
Tue, 19 May 2026 22:12:04 +0000 (15:12 -0700)
committerDave Jiang <dave.jiang@intel.com>
Thu, 4 Jun 2026 15:44:00 +0000 (08:44 -0700)
Fix a runtime assertion in setup_xor_mapping(). Fortify complains that it
is potentially overflowing the xormaps array per __counted_by(nr_maps).
Quiet the false positive by initializing @nr_maps earlier.

 memcpy: detected buffer overflow: 32 byte write of buffer size 0
 WARNING: lib/string_helpers.c:1036 at __fortify_report+0x4d/0xa0, CPU#8: modprobe/2728
 Call Trace:
  __fortify_panic+0xd/0xf
  setup_xor_mapping+0x6c/0xa0 [cxl_translate]

[ dj: Fixed up @nr_entries to @nr_maps in commit log. ]

Fixes: 06377c54a133 ("cxl/test: Add cxl_translate module for address translation testing")
Signed-off-by: Dan Williams <djbw@kernel.org>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Link: https://patch.msgid.link/20260519221204.1517773-3-djbw@kernel.org
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
tools/testing/cxl/test/cxl_translate.c

index 16328b2112b236b5f82c2dcae081a780811df2cd..25a27e01ac21b4bbbf24dc4cdbbfbe0aac3faebf 100644 (file)
@@ -236,8 +236,8 @@ static int setup_xor_mapping(void)
        if (!cximsd)
                return -ENOMEM;
 
-       memcpy(cximsd->xormaps, xormaps, nr_maps * sizeof(*cximsd->xormaps));
        cximsd->nr_maps = nr_maps;
+       memcpy(cximsd->xormaps, xormaps, nr_maps * sizeof(*cximsd->xormaps));
 
        return 0;
 }