On 12/01/2026 5:43, Willem de Bruijn wrote:
> Gal Pressman wrote:
>> 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.
>>
>> Use separate format strings for sysfs (plain hex via format()) and
>> command line (prefixed hex via hex()).
>>
>> Fixes: 9cf9aa77a1f6 ("selftests: drv-net: hw: convert the Toeplitz test to 
>> Python")
>> Reviewed-by: Nimrod Oren <[email protected]>
>> Signed-off-by: Gal Pressman <[email protected]>
> 
> Reviewed-by: Willem de Bruijn <[email protected]>
> 
>> ---
>>  tools/testing/selftests/drivers/net/hw/toeplitz.py | 9 ++++++---
>>  1 file changed, 6 insertions(+), 3 deletions(-)
>>
>> diff --git a/tools/testing/selftests/drivers/net/hw/toeplitz.py 
>> b/tools/testing/selftests/drivers/net/hw/toeplitz.py
>> index d2db5ee9e358..7a9af4af1838 100755
>> --- a/tools/testing/selftests/drivers/net/hw/toeplitz.py
>> +++ b/tools/testing/selftests/drivers/net/hw/toeplitz.py
>> @@ -94,14 +94,17 @@ def _configure_rps(cfg, rps_cpus):
>>      mask = 0
>>      for cpu in rps_cpus:
>>          mask |= (1 << cpu)
>> -    mask = hex(mask)[2:]
>> +
>> +    # sysfs expect hex without '0x' prefix, toeplitz.c needs the prefix
>> +    mask_sysfs = format(mask, 'x')
> 
> A particular reason not to use the existing slicing?
> 
>> +    mask_cmdline = 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)
>> +            fp.write(mask_sysfs)
> 
> Alternatively 
> 
> -    mask = hex(mask)[2:]
> +    mask = hex(mask)
> 
> - fp.write(mask)
> + fp.write(mask[2:])
> 
> The comment that sysfs and toeplitz.c expect different input is
> definitely helpful.

Will take your suggestion, thanks.

Reply via email to