[PATCH] tests/TestSuite_crypto_perf_cryptodev_perf.py Improving lscpu parsing
David Marchand
david.marchand at redhat.com
Wed Sep 18 09:01:29 CEST 2024
On Tue, Sep 17, 2024 at 5:37 AM Patrick Robb <probb at iol.unh.edu> wrote:
>
> On Mon, Sep 16, 2024 at 3:17 AM David Marchand
> <david.marchand at redhat.com> wrote:
> >
> > On Mon, Sep 16, 2024 at 6:27 AM Patrick Robb <probb at iol.unh.edu> wrote:
> > >
> > > This testsuite fails to parse lscpu output on some systems because
> > > it expects that there be no leading whitespace, which is not
> > > true on all systems.
> >
> > The leading whitespace is a generic issue, not really related to "some" systems.
> > The issue is that keys of interest for the rest of the code ('Core(s)
> > per socket', 'Socket(s)', 'CPU(s)') may have leading whitespace on
> > some systems.
>
> ^The above is what I had in mind when writing my commit - your wording
> gets to the point better, thanks.
>
> I had observed this issue in trying to run the testsuite on an ARM
> Neoverse N-1 Ampere server at UNH, and noted that the leading
> whitespace on it's lscpu output was preventing the 'Core(s) per
> socket' key from appearing in the output dict (at least without the
> trimming which this commit provides).
Thank you for confirming, I'll update the commitlog accordingly before applying.
>
> >
> > Could you detail which systems have such issue?
> >
>
> From a quick look through of our systems I think that there appears to
> be a mixture of systems with lscpu output with no leading whitespace
> before any of the keys, and others (like the Ampere server I
> mentioned) which do have that leading whitespace/indentation. I'm not
> sure what the pattern is (I guess it probably depends on the OS on the
> system), and a google search didn't seem to reveal much about this
> question. However, from looking at the lscpu man page, I do see that
Ok, there is no point in investigating more from my pov.
I'll just mention that some ARM env were affected.
> there is a --json flag which you can include.
>
> So, in my opinion the ideal way to deal with these situation where you
> must read some information from the system, is to use the options
> available (like lscpu --json) which are guaranteed to return a machine
> readable output. Getting into the business of reading text output like
> this is not ideal, given that it is subject to change in the future.
This would be a more robust solution, but I guess this is beyond the
simple fixing that we want to do on this "legacy" repository.
Hopefully, the new DTS code in the DPDK repo won't be subject to such issue.
> But, I have the same view as you that this commit is not likely to
> break this testsuite for any systems which are running the suite
> currently, it will only help for systems with the indented lscpu
> output.
+1
--
David Marchand
More information about the dts
mailing list