On Wed, Jun 15, 2022 at 10:15:27PM +0200, Morten Brørup wrote: > > From: Chengwen Feng [mailto:fengcheng...@huawei.com] > > Sent: Wednesday, 15 June 2022 09.39 > > > > This patchset contains five patch which support telemetry dump > > dmadev/eventdev/rawdev/ethdev. > > > > Chengwen Feng (5): > > usertools: use non-strict when json-loads in telemetry > > dmadev: support telemetry dump dmadev > > eventdev: support telemetry dump eventdev > > rawdev: support telemetry dump rawdev > > ethdev: support telemetry private dump > > > > lib/dmadev/rte_dmadev.c | 39 +++++++++++++++++++++++++++++++++ > > lib/ethdev/rte_ethdev.c | 42 ++++++++++++++++++++++++++++++++++++ > > lib/eventdev/rte_eventdev.c | 43 +++++++++++++++++++++++++++++++++++++ > > lib/rawdev/rte_rawdev.c | 42 ++++++++++++++++++++++++++++++++++++ > > usertools/dpdk-telemetry.py | 2 +- > > 5 files changed, 167 insertions(+), 1 deletion(-) > > > > -- > > 2.33.0 > > > > While hoping for someone to fix the Telemetry library bug regarding the > missing JSON encoding of strings > (https://bugs.dpdk.org/show_bug.cgi?id=1037), thus making the patch regarding > usertools/dpdk-telemetry.py superfluous, > > Series-Acked-by: Morten Brørup <m...@smartsharesystems.com> >
I disagree with taking this series without fixing the underlying issue. I don't think we should be sending invalid json data so doing proper escaping of \n\t etc. characters on encode is the best solution. There is also some merit in adding in support for tagging strings that don't contain invalid characters, if perf is affected in some cases. That said, in the testing I have done in the past: * for jobs like getting the nic stats or nic xstats, the vast majority of the cycles spent in the telemetry function is doing PCI reads for the stats * for simpler jobs e.g. getting list of ethdevs, the vast majority of the time is actually being spent in the kernel socket handling Based on what I've seen (and unfortunately I didn't note down the exact figures for above), its likely that even if performance of the interface is a concern we can probably add in some basic string encoding without really affecting things much. /Bruce