Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 25 Apr 2022 11:05:14 +0100 | Subject | Re: [PATCH] arch_topology: Trace the update thermal pressure | From | Lukasz Luba <> |
| |
On 4/20/22 09:34, kernel test robot wrote: > Hi Lukasz, > > I love your patch! Yet something to improve: > > [auto build test ERROR on driver-core/driver-core-testing] > [also build test ERROR on rostedt-trace/for-next linus/master linux/master v5.18-rc3 next-20220419] > [If your patch is applied to the wrong git tree, kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch] > > url: https://github.com/intel-lab-lkp/linux/commits/Lukasz-Luba/arch_topology-Trace-the-update-thermal-pressure/20220420-005845 > base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git 3123109284176b1532874591f7c81f3837bbdc17 > config: riscv-randconfig-c024-20220420 (https://download.01.org/0day-ci/archive/20220420/202204201654.vcszVDGb-lkp@intel.com/config) > compiler: riscv64-linux-gcc (GCC) 11.2.0 > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # https://github.com/intel-lab-lkp/linux/commit/aeff700a88be6a7469acfc312155bd213f76de95 > git remote add linux-review https://github.com/intel-lab-lkp/linux > git fetch --no-tags linux-review Lukasz-Luba/arch_topology-Trace-the-update-thermal-pressure/20220420-005845 > git checkout aeff700a88be6a7469acfc312155bd213f76de95 > # save the config file > mkdir build_dir && cp config build_dir/.config > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot <lkp@intel.com> > > All errors (new ones prefixed by >>): > > riscv64-linux-ld: drivers/base/arch_topology.o: in function `.L18': >>> arch_topology.c:(.text+0x136): undefined reference to `__traceiter_thermal_pressure_update' > riscv64-linux-ld: drivers/base/arch_topology.o: in function `.L20': >>> arch_topology.c:(.text+0x168): undefined reference to `__tracepoint_thermal_pressure_update' >>> riscv64-linux-ld: arch_topology.c:(.text+0x16c): undefined reference to `__tracepoint_thermal_pressure_update' > riscv64-linux-ld: drivers/base/arch_topology.o: in function `.L0 ': >>> arch_topology.c:(__jump_table+0x8): undefined reference to `__tracepoint_thermal_pressure_update' >
I've reproduced this issue and experimented with a few solutions. that config file doesn't set CONFIG_THERMAL, where normally we have in thermal_core.c the: 24 #define CREATE_TRACE_POINTS 25 #include <trace/events/thermal.h>
(similar mechanism we have for thermal_power_allocator.h and IPA.)
We normally test w/ this config, but I'll also start checking the build w/o thermal subsystem.
I cannot add those two lines in the arch_topology.c since it complains about multiple definitions for many entries.
Thus, I'll create a separate header thermal_pressure.h to put it in the arch_topology.c.
I'll also export the symbol as suggested by Steve, so some potential cpufreq modules could just us it from there.
I'll also re-visit the trace events that we have in thermal subsystem, since they are not exported but some modules might would like to use (some of) them...
Regards, Lukasz
| ![\](/images/icornerr.gif) |