Commit 9d48c62f authored by Gal Pressman's avatar Gal Pressman Committed by Jakub Kicinski
Browse files

selftests: drv-net: fix RPS mask handling in toeplitz test



The toeplitz.py test passed the hex mask without "0x" prefix (e.g.,
"300" for CPUs 8,9). The toeplitz.c strtoul() call wrongly parsed this
as decimal 300 (0x12c) instead of hex 0x300.

Pass the prefixed mask to toeplitz.c, and the unprefixed one to sysfs.

Fixes: 9cf9aa77 ("selftests: drv-net: hw: convert the Toeplitz test to Python")
Reviewed-by: default avatarNimrod Oren <noren@nvidia.com>
Signed-off-by: default avatarGal Pressman <gal@nvidia.com>
Reviewed-by: default avatarWillem de Bruijn <willemb@google.com>
Link: https://patch.msgid.link/20260112173715.384843-2-gal@nvidia.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent ddf96c39
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -94,12 +94,14 @@ def _configure_rps(cfg, rps_cpus):
    mask = 0
    for cpu in rps_cpus:
        mask |= (1 << cpu)
    mask = hex(mask)[2:]

    mask = hex(mask)

    # Set RPS bitmap for all rx queues
    for rps_file in glob.glob(f"/sys/class/net/{cfg.ifname}/queues/rx-*/rps_cpus"):
        with open(rps_file, "w", encoding="utf-8") as fp:
            fp.write(mask)
            # sysfs expects hex without '0x' prefix, toeplitz.c needs the prefix
            fp.write(mask[2:])

    return mask