Re: [PATCH 3/4] sched/deadline: Tracepoints for deadline scheduler

From: kbuild test robot
Date: Mon Feb 22 2016 - 12:49:20 EST


Hi Daniel,

[auto build test WARNING on tip/sched/core]
[also build test WARNING on v4.5-rc5 next-20160222]
[if your patch is applied to the wrong git tree, please drop us a note to help improving the system]

url: https://github.com/0day-ci/linux/commits/Daniel-Bristot-de-Oliveira/Tracepoints-for-deadline-scheduler/20160223-011407
config: i386-randconfig-s0-201608 (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All warnings (new ones prefixed by >>):

In file included from include/trace/define_trace.h:95:0,
from include/trace/events/sched.h:655,
from kernel/sched/core.c:91:
include/trace/events/sched.h: In function 'trace_raw_output_sched_deadline_replenish':
>> include/trace/events/sched.h:591:12: warning: format '%u' expects argument of type 'unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=]
TP_printk("comm=%s pid=%d now=%llu.%09u deadline=%llu.%09u runtime=%lld",
^
include/trace/trace_events.h:342:22: note: in definition of macro 'DECLARE_EVENT_CLASS'
trace_seq_printf(s, print); \
^
include/trace/trace_events.h:65:9: note: in expansion of macro 'PARAMS'
PARAMS(print)); \
^
include/trace/events/sched.h:569:1: note: in expansion of macro 'TRACE_EVENT'
TRACE_EVENT(sched_deadline_replenish,
^
>> include/trace/events/sched.h:591:2: note: in expansion of macro 'TP_printk'
TP_printk("comm=%s pid=%d now=%llu.%09u deadline=%llu.%09u runtime=%lld",
^
include/trace/events/sched.h:591:12: warning: format '%u' expects argument of type 'unsigned int', but argument 8 has type 'long unsigned int' [-Wformat=]
TP_printk("comm=%s pid=%d now=%llu.%09u deadline=%llu.%09u runtime=%lld",
^
include/trace/trace_events.h:342:22: note: in definition of macro 'DECLARE_EVENT_CLASS'
trace_seq_printf(s, print); \
^
include/trace/trace_events.h:65:9: note: in expansion of macro 'PARAMS'
PARAMS(print)); \
^
include/trace/events/sched.h:569:1: note: in expansion of macro 'TRACE_EVENT'
TRACE_EVENT(sched_deadline_replenish,
^
>> include/trace/events/sched.h:591:2: note: in expansion of macro 'TP_printk'
TP_printk("comm=%s pid=%d now=%llu.%09u deadline=%llu.%09u runtime=%lld",
^
include/trace/events/sched.h: In function 'trace_raw_output_sched_deadline_template':
include/trace/events/sched.h:619:12: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat=]
TP_printk("now=%llu.%09u deadline=%llu.%09u remaining_runtime=%lld",
^
include/trace/trace_events.h:342:22: note: in definition of macro 'DECLARE_EVENT_CLASS'
trace_seq_printf(s, print); \
^
include/trace/events/sched.h:619:2: note: in expansion of macro 'TP_printk'
TP_printk("now=%llu.%09u deadline=%llu.%09u remaining_runtime=%lld",
^
include/trace/events/sched.h:619:12: warning: format '%u' expects argument of type 'unsigned int', but argument 6 has type 'long unsigned int' [-Wformat=]
TP_printk("now=%llu.%09u deadline=%llu.%09u remaining_runtime=%lld",
^
include/trace/trace_events.h:342:22: note: in definition of macro 'DECLARE_EVENT_CLASS'
trace_seq_printf(s, print); \
^
include/trace/events/sched.h:619:2: note: in expansion of macro 'TP_printk'
TP_printk("now=%llu.%09u deadline=%llu.%09u remaining_runtime=%lld",
^

vim +591 include/trace/events/sched.h

563 TP_printk("cpu=%d", __entry->cpu)
564 );
565
566 /*
567 * Tracepoint for runtime replenishment of deadline tasks:
568 */
> 569 TRACE_EVENT(sched_deadline_replenish,
570
571 TP_PROTO(struct sched_dl_entity *dl_se),
572
573 TP_ARGS(dl_se),
574
575 TP_STRUCT__entry(
576 __array( char, comm, TASK_COMM_LEN )
577 __field( pid_t, pid )
578 __field( u64, now )
579 __field( u64, deadline )
580 __field( s64, runtime )
581 ),
582
583 TP_fast_assign(
584 memcpy(__entry->comm, dl_task_of(dl_se)->comm, TASK_COMM_LEN);
585 __entry->now = rq_clock(rq_of_dl_rq(dl_rq_of_se(dl_se)));
586 __entry->pid = dl_task_of(dl_se)->pid;
587 __entry->deadline = dl_se->deadline;
588 __entry->runtime = dl_se->runtime;
589 ),
590
> 591 TP_printk("comm=%s pid=%d now=%llu.%09u deadline=%llu.%09u runtime=%lld",
592 __entry->comm,
593 __entry->pid,
594 __print_ns_to_secs(__entry->now),
595 __print_ns_without_secs(__entry->now),
596 __print_ns_to_secs(__entry->deadline),
597 __print_ns_without_secs(__entry->deadline),
598 __entry->runtime)
599 );
600
601 DECLARE_EVENT_CLASS(sched_deadline_template,
602
603 TP_PROTO(struct sched_dl_entity *dl_se),
604
605 TP_ARGS(dl_se),
606
607 TP_STRUCT__entry(
608 __field( u64, now )
609 __field( u64, deadline )
610 __field( s64, runtime )
611 ),
612
613 TP_fast_assign(
614 __entry->now = rq_clock(rq_of_dl_rq(dl_rq_of_se(dl_se)));
615 __entry->deadline = dl_se->deadline;
616 __entry->runtime = dl_se->runtime;
617 ),
618
619 TP_printk("now=%llu.%09u deadline=%llu.%09u remaining_runtime=%lld",
620 __print_ns_to_secs(__entry->now),
621 __print_ns_without_secs(__entry->now),
622 __print_ns_to_secs(__entry->deadline),
623 __print_ns_without_secs(__entry->deadline),
624 __entry->runtime)
625 );
626
627 /*
628 * Tracepoint for sched_yield() of a deadline task (the task
629 * went to sleep waiting for the next period)
630 */
631 DEFINE_EVENT(sched_deadline_template, sched_deadline_yield,
632 TP_PROTO(struct sched_dl_entity *dl_se),
633 TP_ARGS(dl_se));
634
635 /*
636 * Tracepoint for throttling of a deadline task that consumed all its
637 * runtime
638 */
639 DEFINE_EVENT_CONDITION(sched_deadline_template, sched_deadline_throttle,
640 TP_PROTO(struct sched_dl_entity *dl_se),
641 TP_ARGS(dl_se),
642 TP_CONDITION(!dl_se->dl_yielded));
643
644 /*
645 * Tracepoint for blocking of a deadline task. The deadline task was
646 * dequeued, but neither by being throttled nor yielding.
647 */
648 DEFINE_EVENT_CONDITION(sched_deadline_template, sched_deadline_block,
649 TP_PROTO(struct sched_dl_entity *dl_se),
650 TP_ARGS(dl_se),
651 TP_CONDITION(!dl_se->dl_yielded && !dl_se->dl_throttled));
652 #endif /* _TRACE_SCHED_H */
653
654 /* This part must be outside protection */
> 655 #include <trace/define_trace.h>

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

Attachment: .config.gz
Description: Binary data