* [rostedt-trace:ring-buffer-multi-page-subbufers 37/47] kernel/trace/ring_buffer.c:5690: warning: Function parameter or member 'data_page' not described in 'ring_buffer_free_read_page'
@ 2023-12-14 1:46 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-12-14 1:46 UTC (permalink / raw)
To: Tzvetomir Stoyanov (VMware); +Cc: oe-kbuild-all, Steven Rostedt (Google)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git ring-buffer-multi-page-subbufers
head: e24541a2a1a09ed1c10d0d0a887fe8cf0b350bb9
commit: 24791879a84daada5528634c4b515d0d20e5c3f8 [37/47] ring-buffer: Read and write to ring buffers with custom sub buffer size
config: i386-buildonly-randconfig-002-20231214 (https://download.01.org/0day-ci/archive/20231214/202312140927.PZMqTtJh-lkp@intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231214/202312140927.PZMqTtJh-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/202312140927.PZMqTtJh-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> kernel/trace/ring_buffer.c:5690: warning: Function parameter or member 'data_page' not described in 'ring_buffer_free_read_page'
>> kernel/trace/ring_buffer.c:5690: warning: Excess function parameter 'page' description in 'ring_buffer_free_read_page'
vim +5690 kernel/trace/ring_buffer.c
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5679
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5680 /**
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5681 * ring_buffer_free_read_page - free an allocated read page
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5682 * @buffer: the buffer the page was allocate for
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5683) * @cpu: the cpu buffer the page came from
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5684) * @page: the page to free
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5685 *
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5686 * Free a page allocated from ring_buffer_alloc_read_page.
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5687 */
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5688) void ring_buffer_free_read_page(struct trace_buffer *buffer, int cpu,
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5689) struct buffer_data_read_page *data_page)
8789a9e7df6bf9b Steven Rostedt 2008-12-02 @5690 {
3e4272b99540949 Jia-Ju Bai 2023-01-13 5691 struct ring_buffer_per_cpu *cpu_buffer;
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5692) struct buffer_data_page *bpage = data_page->data;
ae415fa4c5248a8 Steven Rostedt (VMware 2017-12-22 5693) struct page *page = virt_to_page(bpage);
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5694) unsigned long flags;
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5695)
3e4272b99540949 Jia-Ju Bai 2023-01-13 5696 if (!buffer || !buffer->buffers || !buffer->buffers[cpu])
3e4272b99540949 Jia-Ju Bai 2023-01-13 5697 return;
3e4272b99540949 Jia-Ju Bai 2023-01-13 5698
3e4272b99540949 Jia-Ju Bai 2023-01-13 5699 cpu_buffer = buffer->buffers[cpu];
3e4272b99540949 Jia-Ju Bai 2023-01-13 5700
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5701) /*
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5702) * If the page is still in use someplace else, or order of the page
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5703) * is different from the subbuffer order of the buffer -
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5704) * we can't reuse it
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5705) */
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5706) if (page_ref_count(page) > 1 || data_page->order != buffer->subbuf_order)
ae415fa4c5248a8 Steven Rostedt (VMware 2017-12-22 5707) goto out;
ae415fa4c5248a8 Steven Rostedt (VMware 2017-12-22 5708)
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5709) local_irq_save(flags);
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5710) arch_spin_lock(&cpu_buffer->lock);
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5711)
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5712) if (!cpu_buffer->free_page) {
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5713) cpu_buffer->free_page = bpage;
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5714) bpage = NULL;
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5715) }
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5716)
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5717) arch_spin_unlock(&cpu_buffer->lock);
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5718) local_irq_restore(flags);
73a757e63114dfd Steven Rostedt (VMware 2017-05-01 5719)
ae415fa4c5248a8 Steven Rostedt (VMware 2017-12-22 5720) out:
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5721) free_pages((unsigned long)bpage, data_page->order);
24791879a84daad Tzvetomir Stoyanov (VMware 2021-12-13 5722) kfree(data_page);
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5723 }
d6ce96dabe2c440 Steven Rostedt 2009-05-05 5724 EXPORT_SYMBOL_GPL(ring_buffer_free_read_page);
8789a9e7df6bf9b Steven Rostedt 2008-12-02 5725
:::::: The code at line 5690 was first introduced by commit
:::::: 8789a9e7df6bf9b93739c4c7d4e380725bc9e936 ring-buffer: read page interface
:::::: TO: Steven Rostedt <srostedt@redhat.com>
:::::: CC: Ingo Molnar <mingo@elte.hu>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-12-14 1:46 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-14 1:46 [rostedt-trace:ring-buffer-multi-page-subbufers 37/47] kernel/trace/ring_buffer.c:5690: warning: Function parameter or member 'data_page' not described in 'ring_buffer_free_read_page' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.