Messages in this thread | | | Subject | Re: [PATCH v2 0/4] tools/thermal: thermal library and tools | From | srinivas pandruvada <> | Date | Fri, 15 Apr 2022 20:50:53 -0700 |
| |
On Wed, 2022-04-13 at 10:21 -0700, srinivas pandruvada wrote: > On Wed, 2022-04-13 at 17:06 +0200, Rafael J. Wysocki wrote: > > On Wed, Apr 6, 2022 at 4:44 PM Daniel Lezcano < > > daniel.lezcano@linaro.org> wrote: > > > > > > On 06/04/2022 16:28, srinivas pandruvada wrote: > > > > Hi Daniel, > > > > > > > > On Wed, 2022-04-06 at 10:00 +0200, Daniel Lezcano wrote: > > > > > > > > > > Hi, > > > > > > > > > > if there is no comment for the series, shall I pick it so we > > > > > can go > > > > > forward ? > > > > Didn't get time to check yet. It will still be for the next merge > > > > window, correct? > > > > > > Right, but I would like to continue adding more features, scripts > > > and > > > tests. Iteratively. > > > > Srinivas, if you can give this a go, please, it will help. > > > > Otherwise, I think that all of your comments so far have been > > addressed, or have I missed anything? > > > I will provide by the end of this week.
1. Some warnings in applying patch
Applying: tools/lib/thermal: Add a thermal library Applying: tools/thermal: Add util library Applying: tools/thermal: A temperature capture tool .git/rebase-apply/patch:795: space before tab in indent. polling = 100; } .git/rebase-apply/patch:90: new blank line at EOF. + .git/rebase-apply/patch:221: new blank line at EOF. + warning: 3 lines add whitespace errors. Applying: tools/thermal: Add thermal daemon skeleton .git/rebase-apply/patch:86: new blank line at EOF. + warning: 1 line adds whitespace errors.
2. Thermometer is fine
3. segfault for thermal-engine
LD_LIBRARY_PATH=../lib:../../lib/thermal:$LD_LIBRARY_pATH ./thermal- engine Segmentation fault (core dumped) root@srinivas-otcpl-icl-u:~/development/linux/tools/thermal/thermal- engine# LD_LIBRARY_PATH=../lib:../../lib/thermal:$LD_LIBRARY_pATH ./thermal-engine --help thermal-engine : A thermal monitoring engine based on notifications Usage: thermal-engine [options] -h, --help this help -d, --daemonize capture duration -l <level>, --loglevel <level> log level: DEBUG, INFO, NOTICE, WARN, ERROR -s, --syslog output to syslog
root@srinivas-otcpl-icl-u:~/development/linux/tools/thermal/thermal- engine# LD_LIBRARY_PATH=../lib:../../lib/thermal:$LD_LIBRARY_pATH ./thermal-engine -l DEBUG Segmentation fault (core dumped) root@srinivas-otcpl-icl-u:~/development/linux/tools/thermal/thermal- engine# LD_LIBRARY_PATH=../lib:../../lib/thermal:$LD_LIBRARY_pATH ./thermal-engine --loglevel DEBUG Segmentation fault (core dumped) root@srinivas-otcpl-icl-u:~/development/linux/tools/thermal/thermal- engine# LD_LIBRARY_PATH=../lib:../../lib/thermal:$LD_LIBRARY_pATH ./thermal-engine -s Segmentation fault (core dumped)
Thanks, Srinivas
> > Thanks, > Srinivas > > > > > > > > > > > > > > > On 30/03/2022 12:04, Daniel Lezcano wrote: > > > > > > These changes are providing the following tools and library: > > > > > > > > > > > > - A thermal library doing the netlink abstraction from the > > > > > > kernel > > > > > > in > > > > > > order to make the userspace thermal implementation > > > > > > easier. > > > > > > Having > > > > > > the library integrated with the kernel tree is also a > > > > > > guarantee > > > > > > to > > > > > > keep the message format and their encoding/decoding > > > > > > aligned > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > - A thermal tools library providing a set of functions to > > > > > > deal > > > > > > with > > > > > > usual features like the log, the mainloop and the time. > > > > > > This > > > > > > library is used by the provided tools below > > > > > > > > > > > > - An data acquisition program to capture the temperature > > > > > > of the > > > > > > different thermal zone during an amount of time or > > > > > > during the > > > > > > execution of an application. The output is formated to > > > > > > be > > > > > > easily > > > > > > parsed by gnuplot, a spreadsheet program or a > > > > > > statistical > > > > > > command > > > > > > line utility. The timestamp is based on the system > > > > > > uptime, thus > > > > > > giving an indication of when a thermal event happened, > > > > > > that can > > > > > > help to spot or reproduce thermal issue in the long run > > > > > > > > > > > > - A thermal monitoring program based on the thermal > > > > > > library. It > > > > > > gives > > > > > > a skeleton to build any logic on top of it and shows how > > > > > > to use > > > > > > the > > > > > > thermal library. It does nothing except discovering the > > > > > > thermal > > > > > > zones, their trip points and listening for events like > > > > > > cooling > > > > > > devices state changes or trip point crossed > > > > > > > > > > > > Changelog: > > > > > > > > > > > > v1: Initial post after a RFC > > > > > > > > > > > > v2: > > > > > > > > > > > > - Fixed all trailing whitespaces and some other > > > > > > checkpatch > > > > > > warnings. Some warnings remain but they can be > > > > > > considered as > > > > > > false > > > > > > positive > > > > > > > > > > > > - Added in the thermometer tool: > > > > > > - Usage/help option as well as a man page > > > > > > - The ability to execute a program > > > > > > - The capture duration > > > > > > - Create the output directory if it does not exist > > > > > > > > > > > > - Add in the thermal-engine tool: > > > > > > - A usage/help option > > > > > > - A message telling the userspace it is waiting for > > > > > > events > > > > > > - A daemonize option > > > > > > > > > > > > - Minor bug fixes here and there, as well as typos > > > > > > > > > > > > Daniel Lezcano (4): > > > > > > tools/lib/thermal: Add a thermal library > > > > > > tools/thermal: Add util library > > > > > > tools/thermal: A temperature capture tool > > > > > > tools/thermal: Add thermal daemon skeleton > > > > > > > > > > > > MAINTAINERS | 1 + > > > > > > tools/Makefile | 36 +- > > > > > > tools/lib/thermal/.gitignore | 2 + > > > > > > tools/lib/thermal/Build | 5 + > > > > > > tools/lib/thermal/Makefile | 165 ++++++ > > > > > > tools/lib/thermal/commands.c | 349 > > > > > > +++++++++++ > > > > > > tools/lib/thermal/events.c | 164 +++++ > > > > > > tools/lib/thermal/include/thermal.h | 142 +++++ > > > > > > tools/lib/thermal/libthermal.map | 25 + > > > > > > tools/lib/thermal/libthermal.pc.template | 12 + > > > > > > tools/lib/thermal/sampling.c | 75 +++ > > > > > > tools/lib/thermal/thermal.c | 126 ++++ > > > > > > tools/lib/thermal/thermal_nl.c | 215 > > > > > > +++++++ > > > > > > tools/lib/thermal/thermal_nl.h | 46 ++ > > > > > > tools/thermal/lib/Build | 3 + > > > > > > tools/thermal/lib/Makefile | 158 +++++ > > > > > > .../thermal/lib/libthermal_tools.pc.template | 12 + > > > > > > tools/thermal/lib/log.c | 77 +++ > > > > > > tools/thermal/lib/log.h | 31 + > > > > > > tools/thermal/lib/mainloop.c | 120 ++++ > > > > > > tools/thermal/lib/mainloop.h | 15 + > > > > > > tools/thermal/lib/thermal-tools.h | 10 + > > > > > > tools/thermal/lib/uptimeofday.c | 40 ++ > > > > > > tools/thermal/lib/uptimeofday.h | 12 + > > > > > > tools/thermal/thermal-engine/Build | 2 + > > > > > > tools/thermal/thermal-engine/Makefile | 28 + > > > > > > tools/thermal/thermal-engine/thermal-engine.c | 326 > > > > > > ++++++++++ > > > > > > tools/thermal/thermometer/Build | 2 + > > > > > > tools/thermal/thermometer/Makefile | 26 + > > > > > > tools/thermal/thermometer/thermometer.8 | 93 +++ > > > > > > tools/thermal/thermometer/thermometer.c | 558 > > > > > > ++++++++++++++++++ > > > > > > tools/thermal/thermometer/thermometer.conf | 5 + > > > > > > 32 files changed, 2878 insertions(+), 3 deletions(-) > > > > > > create mode 100644 tools/lib/thermal/.gitignore > > > > > > create mode 100644 tools/lib/thermal/Build > > > > > > create mode 100644 tools/lib/thermal/Makefile > > > > > > create mode 100644 tools/lib/thermal/commands.c > > > > > > create mode 100644 tools/lib/thermal/events.c > > > > > > create mode 100644 tools/lib/thermal/include/thermal.h > > > > > > create mode 100644 tools/lib/thermal/libthermal.map > > > > > > create mode 100644 > > > > > > tools/lib/thermal/libthermal.pc.template > > > > > > create mode 100644 tools/lib/thermal/sampling.c > > > > > > create mode 100644 tools/lib/thermal/thermal.c > > > > > > create mode 100644 tools/lib/thermal/thermal_nl.c > > > > > > create mode 100644 tools/lib/thermal/thermal_nl.h > > > > > > create mode 100644 tools/thermal/lib/Build > > > > > > create mode 100644 tools/thermal/lib/Makefile > > > > > > create mode 100644 > > > > > > tools/thermal/lib/libthermal_tools.pc.template > > > > > > create mode 100644 tools/thermal/lib/log.c > > > > > > create mode 100644 tools/thermal/lib/log.h > > > > > > create mode 100644 tools/thermal/lib/mainloop.c > > > > > > create mode 100644 tools/thermal/lib/mainloop.h > > > > > > create mode 100644 tools/thermal/lib/thermal-tools.h > > > > > > create mode 100644 tools/thermal/lib/uptimeofday.c > > > > > > create mode 100644 tools/thermal/lib/uptimeofday.h > > > > > > create mode 100644 tools/thermal/thermal-engine/Build > > > > > > create mode 100644 tools/thermal/thermal-engine/Makefile > > > > > > create mode 100644 tools/thermal/thermal-engine/thermal- > > > > > > engine.c > > > > > > create mode 100644 tools/thermal/thermometer/Build > > > > > > create mode 100644 tools/thermal/thermometer/Makefile > > > > > > create mode 100644 tools/thermal/thermometer/thermometer.8 > > > > > > create mode 100644 tools/thermal/thermometer/thermometer.c > > > > > > create mode 100644 > > > > > > tools/thermal/thermometer/thermometer.conf > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > <http://www.linaro.org/> Linaro.org │ Open source software for ARM > > > SoCs > > > > > > Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook | > > > <http://twitter.com/#!/linaroorg> Twitter | > > > <http://www.linaro.org/linaro-blog/> Blog > >
| |