Messages in this thread | | | Date | Sat, 5 Aug 2023 09:56:28 +0800 | Subject | Re: [PATCH 1/2] tracing: Fix cpu buffers unavailable due to 'record_disabled' messed | From | Zheng Yejian <> |
| |
On 2023/8/5 09:15, kernel test robot wrote: > Hi Zheng, > > kernel test robot noticed the following build errors: > > [auto build test ERROR on linus/master] > [also build test ERROR on rostedt-trace/for-next v6.5-rc4 next-20230804] > [cannot apply to rostedt-trace/for-next-urgent] > [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#_base_tree_information] > > url: https://github.com/intel-lab-lkp/linux/commits/Zheng-Yejian/tracing-Fix-cpu-buffers-unavailable-due-to-record_disabled-messed/20230804-204751 > base: linus/master > patch link: https://lore.kernel.org/r/20230804124549.2562977-2-zhengyejian1%40huawei.com > patch subject: [PATCH 1/2] tracing: Fix cpu buffers unavailable due to 'record_disabled' messed > config: x86_64-defconfig (https://download.01.org/0day-ci/archive/20230805/202308050731.PQutr3r0-lkp@intel.com/config) > compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 > reproduce: (https://download.01.org/0day-ci/archive/20230805/202308050731.PQutr3r0-lkp@intel.com/reproduce) > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > the same patch/commit), kindly add following tags > | Reported-by: kernel test robot <lkp@intel.com> > | Closes: https://lore.kernel.org/oe-kbuild-all/202308050731.PQutr3r0-lkp@intel.com/ > > All errors (new ones prefixed by >>): > > kernel/trace/trace.c: In function 'tracing_set_cpumask': >>> kernel/trace/trace.c:5280:60: error: 'struct trace_array' has no member named 'max_buffer'; did you mean 'array_buffer'? > 5280 | ring_buffer_record_disable_cpu(tr->max_buffer.buffer, cpu); > | ^~~~~~~~~~ > | array_buffer > kernel/trace/trace.c:5286:59: error: 'struct trace_array' has no member named 'max_buffer'; did you mean 'array_buffer'? > 5286 | ring_buffer_record_enable_cpu(tr->max_buffer.buffer, cpu); > | ^~~~~~~~~~ > | array_buffer >
Thank you, robot! I'll fix it in v2 soon.
> > vim +5280 kernel/trace/trace.c > > 5260 > 5261 int tracing_set_cpumask(struct trace_array *tr, > 5262 cpumask_var_t tracing_cpumask_new) > 5263 { > 5264 int cpu; > 5265 > 5266 if (!tr) > 5267 return -EINVAL; > 5268 > 5269 local_irq_disable(); > 5270 arch_spin_lock(&tr->max_lock); > 5271 for_each_tracing_cpu(cpu) { > 5272 /* > 5273 * Increase/decrease the disabled counter if we are > 5274 * about to flip a bit in the cpumask: > 5275 */ > 5276 if (cpumask_test_cpu(cpu, tr->tracing_cpumask) && > 5277 !cpumask_test_cpu(cpu, tracing_cpumask_new)) { > 5278 atomic_inc(&per_cpu_ptr(tr->array_buffer.data, cpu)->disabled); > 5279 ring_buffer_record_disable_cpu(tr->array_buffer.buffer, cpu); >> 5280 ring_buffer_record_disable_cpu(tr->max_buffer.buffer, cpu); > 5281 } > 5282 if (!cpumask_test_cpu(cpu, tr->tracing_cpumask) && > 5283 cpumask_test_cpu(cpu, tracing_cpumask_new)) { > 5284 atomic_dec(&per_cpu_ptr(tr->array_buffer.data, cpu)->disabled); > 5285 ring_buffer_record_enable_cpu(tr->array_buffer.buffer, cpu); > 5286 ring_buffer_record_enable_cpu(tr->max_buffer.buffer, cpu); > 5287 } > 5288 } > 5289 arch_spin_unlock(&tr->max_lock); > 5290 local_irq_enable(); > 5291 > 5292 cpumask_copy(tr->tracing_cpumask, tracing_cpumask_new); > 5293 > 5294 return 0; > 5295 } > 5296 >
| |