Re: [PATCH v2 40/40] tracing: Add trace_event_buffer_reserve() variant that allows recursion

From: kbuild test robot
Date: Thu Sep 07 2017 - 18:18:41 EST


Hi Tom,

[auto build test ERROR on tip/perf/core]
[also build test ERROR on v4.13 next-20170907]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url: https://github.com/0day-ci/linux/commits/Tom-Zanussi/tracing-Inter-event-e-g-latency-support/20170908-054142
config: x86_64-randconfig-x018-201736 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64

All errors (new ones prefixed by >>):

kernel//trace/ring_buffer_benchmark.c: In function 'ring_buffer_producer':
>> kernel//trace/ring_buffer_benchmark.c:253:12: error: too few arguments to function 'ring_buffer_lock_reserve'
event = ring_buffer_lock_reserve(buffer, 10);
^~~~~~~~~~~~~~~~~~~~~~~~
In file included from kernel//trace/ring_buffer_benchmark.c:6:0:
include/linux/ring_buffer.h:115:27: note: declared here
struct ring_buffer_event *ring_buffer_lock_reserve(struct ring_buffer *buffer,
^~~~~~~~~~~~~~~~~~~~~~~~

vim +/ring_buffer_lock_reserve +253 kernel//trace/ring_buffer_benchmark.c

5092dbc96 Steven Rostedt 2009-05-05 228
5092dbc96 Steven Rostedt 2009-05-05 229 static void ring_buffer_producer(void)
5092dbc96 Steven Rostedt 2009-05-05 230 {
da194930e Tina Ruchandani 2015-01-28 231 ktime_t start_time, end_time, timeout;
5092dbc96 Steven Rostedt 2009-05-05 232 unsigned long long time;
5092dbc96 Steven Rostedt 2009-05-05 233 unsigned long long entries;
5092dbc96 Steven Rostedt 2009-05-05 234 unsigned long long overruns;
5092dbc96 Steven Rostedt 2009-05-05 235 unsigned long missed = 0;
5092dbc96 Steven Rostedt 2009-05-05 236 unsigned long hit = 0;
5092dbc96 Steven Rostedt 2009-05-05 237 unsigned long avg;
5092dbc96 Steven Rostedt 2009-05-05 238 int cnt = 0;
5092dbc96 Steven Rostedt 2009-05-05 239
5092dbc96 Steven Rostedt 2009-05-05 240 /*
5092dbc96 Steven Rostedt 2009-05-05 241 * Hammer the buffer for 10 secs (this may
5092dbc96 Steven Rostedt 2009-05-05 242 * make the system stall)
5092dbc96 Steven Rostedt 2009-05-05 243 */
4b221f031 Steven Rostedt 2009-06-17 244 trace_printk("Starting ring buffer hammer\n");
da194930e Tina Ruchandani 2015-01-28 245 start_time = ktime_get();
da194930e Tina Ruchandani 2015-01-28 246 timeout = ktime_add_ns(start_time, RUN_TIME * NSEC_PER_SEC);
5092dbc96 Steven Rostedt 2009-05-05 247 do {
5092dbc96 Steven Rostedt 2009-05-05 248 struct ring_buffer_event *event;
5092dbc96 Steven Rostedt 2009-05-05 249 int *entry;
a6f0eb6ad Steven Rostedt 2009-11-11 250 int i;
5092dbc96 Steven Rostedt 2009-05-05 251
a6f0eb6ad Steven Rostedt 2009-11-11 252 for (i = 0; i < write_iteration; i++) {
5092dbc96 Steven Rostedt 2009-05-05 @253 event = ring_buffer_lock_reserve(buffer, 10);
5092dbc96 Steven Rostedt 2009-05-05 254 if (!event) {
5092dbc96 Steven Rostedt 2009-05-05 255 missed++;
5092dbc96 Steven Rostedt 2009-05-05 256 } else {
5092dbc96 Steven Rostedt 2009-05-05 257 hit++;
5092dbc96 Steven Rostedt 2009-05-05 258 entry = ring_buffer_event_data(event);
5092dbc96 Steven Rostedt 2009-05-05 259 *entry = smp_processor_id();
5092dbc96 Steven Rostedt 2009-05-05 260 ring_buffer_unlock_commit(buffer, event);
5092dbc96 Steven Rostedt 2009-05-05 261 }
a6f0eb6ad Steven Rostedt 2009-11-11 262 }
da194930e Tina Ruchandani 2015-01-28 263 end_time = ktime_get();
5092dbc96 Steven Rostedt 2009-05-05 264
0574ea421 Steven Rostedt 2009-05-07 265 cnt++;
0574ea421 Steven Rostedt 2009-05-07 266 if (consumer && !(cnt % wakeup_interval))
5092dbc96 Steven Rostedt 2009-05-05 267 wake_up_process(consumer);
5092dbc96 Steven Rostedt 2009-05-05 268

:::::: The code at line 253 was first introduced by commit
:::::: 5092dbc96f3acdac5433b27c06860352dc6d23b9 ring-buffer: add benchmark and tester

:::::: TO: Steven Rostedt <srostedt@xxxxxxxxxx>
:::::: CC: Steven Rostedt <rostedt@xxxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip