On Tue, Feb 17, 2026 at 11:33:26AM +0330, Mahdi Faramarzpour wrote: > From: Mahdi Faramarzpour <[email protected]> > > This commit fixes the integer parsing of -t option. The cli parser > only relies on errno to detect parsing errors. The manpage for > strtol (https://man7.org/linux/man-pages/man3/strtol.3.html) > states that the said function "MAY" set errno to EINVAL in case the > conversion fails. Currently on some systems, this leads to a silent > failure with return value not being exactly documented in the > manpages (probably zero). The reliable way to validate the input is > to check whether the endptr has been bumped all the way to the end > of the string or not. > > Signd-off-by: Mahdi Faramarzpour <[email protected]> > Fixes: 146e30554a53 ("selftests/xsk: add option to run single test")
Hi Mahdi, selftests related patches are supposed to be routed via bpf-next tree. Also your SoB line should be last in the set of tags. > --- > tools/testing/selftests/bpf/xskxceiver.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/tools/testing/selftests/bpf/xskxceiver.c > b/tools/testing/selftests/bpf/xskxceiver.c > index 05b3cebc5..f2d5c4dd2 100644 > --- a/tools/testing/selftests/bpf/xskxceiver.c > +++ b/tools/testing/selftests/bpf/xskxceiver.c > @@ -247,9 +247,10 @@ static void parse_command_line(struct ifobject > *ifobj_tx, struct ifobject *ifobj > opt_print_tests = true; > break; > case 't': > + char *eptr; > errno = 0; > - opt_run_test = strtol(optarg, NULL, 0); > - if (errno) > + opt_run_test = strtol(optarg, &eptr, 0); > + if (errno || *eptr) > print_usage(argv); > break; > case 'h': > -- > 2.34.1 >

