Message ID | 20240120210256.3864747-1-kuba@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [net,v2] selftests: net: fix rps_default_mask with >32 CPUs | expand |
On Sat, Jan 20, 2024 at 01:02:56PM -0800, Jakub Kicinski wrote: > If there is more than 32 cpus the bitmask will start to contain > commas, leading to: > > ./rps_default_mask.sh: line 36: [: 00000000,00000000: integer expression expected > > Remove the commas, bash doesn't interpret leading zeroes as oct > so that should be good enough. > > Fixes: c12e0d5f267d ("self-tests: introduce self-tests for RPS default mask") > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > --- > v2: > - remove all commas > v1: https://lore.kernel.org/all/20240119151248.3476897-1-kuba@kernel.org/ Thanks, this version looks good to me. Reviewed-by: Simon Horman <horms@kernel.org>
On Sun, Jan 21, 2024 at 08:34:38PM +0000, Simon Horman wrote: > On Sat, Jan 20, 2024 at 01:02:56PM -0800, Jakub Kicinski wrote: > > If there is more than 32 cpus the bitmask will start to contain > > commas, leading to: > > > > ./rps_default_mask.sh: line 36: [: 00000000,00000000: integer expression expected > > > > Remove the commas, bash doesn't interpret leading zeroes as oct > > so that should be good enough. > > > > Fixes: c12e0d5f267d ("self-tests: introduce self-tests for RPS default mask") > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > > --- > > v2: > > - remove all commas > > v1: https://lore.kernel.org/all/20240119151248.3476897-1-kuba@kernel.org/ > > Thanks, > > this version looks good to me. > > Reviewed-by: Simon Horman <horms@kernel.org> Sorry, I may have been a bit hasty there. When using bash the change seems to work just fine. But when exercising this with dash I get: sh: 10: Bad substitution
diff --git a/tools/testing/selftests/net/rps_default_mask.sh b/tools/testing/selftests/net/rps_default_mask.sh index a26c5624429f..4729e7026a73 100755 --- a/tools/testing/selftests/net/rps_default_mask.sh +++ b/tools/testing/selftests/net/rps_default_mask.sh @@ -33,6 +33,10 @@ chk_rps() { rps_mask=$($cmd /sys/class/net/$dev_name/queues/rx-0/rps_cpus) printf "%-60s" "$msg" + + # In case there is more than 32 CPUs we need to remove commas from masks + rps_mask=${rps_mask//,} + expected_rps_mask=${expected_rps_mask//,} if [ $rps_mask -eq $expected_rps_mask ]; then echo "[ ok ]" else
If there is more than 32 cpus the bitmask will start to contain commas, leading to: ./rps_default_mask.sh: line 36: [: 00000000,00000000: integer expression expected Remove the commas, bash doesn't interpret leading zeroes as oct so that should be good enough. Fixes: c12e0d5f267d ("self-tests: introduce self-tests for RPS default mask") Signed-off-by: Jakub Kicinski <kuba@kernel.org> --- v2: - remove all commas v1: https://lore.kernel.org/all/20240119151248.3476897-1-kuba@kernel.org/ CC: shuah@kernel.org CC: horms@kernel.org CC: linux-kselftest@vger.kernel.org --- tools/testing/selftests/net/rps_default_mask.sh | 4 ++++ 1 file changed, 4 insertions(+)