Hi John and Ingo,

On 7 September 2016 at 08:10, John Stultz <john.stu...@linaro.org> wrote:
> On Tue, Sep 6, 2016 at 2:49 AM, Ingo Molnar <mi...@kernel.org> wrote:
>>
>> * tip-bot for Baolin Wang <tip...@zytor.com> wrote:
>>
>>> Commit-ID:  a0a6e06d545a753740c9d8d5ce2c4fdd3ab1c021
>>> Gitweb:     
>>> http://git.kernel.org/tip/a0a6e06d545a753740c9d8d5ce2c4fdd3ab1c021
>>> Author:     Baolin Wang <baolin.w...@linaro.org>
>>> AuthorDate: Mon, 22 Aug 2016 12:23:14 +0800
>>> Committer:  John Stultz <john.stu...@linaro.org>
>>> CommitDate: Wed, 31 Aug 2016 14:44:18 -0700
>>>
>>> time: alarmtimer: Add tracepoints for alarmtimers
>>
>> FYI, this commit causes a build failure on the S390 defconfig:
>>
>>   kernel/built-in.o:/home/mingo/tip/include/trace/events/alarmtimer.h:62: 
>> more undefined references to `rtc_ktime_to_tm' follow
>>
>> Removing that commit solved the build failure. Other architectures (that I
>> checked) build fine.

I am sorry for the build failure on S390. I will send out the new
version to fix it ASAP. Thanks for John's help.

>
> Baolin: It looks like the issue is rtc_ktime_to_tm is defined in the
> CONFIG_RTC_LIB optional drivers/rtc/rtc-lib.c, which s390 does not
> include.
>
> Something like (forgive the whitespace damage, as this was copied and pasted):
> diff --git a/include/trace/events/alarmtimer.h
> b/include/trace/events/alarmtimer.h
> index 6a34bc9..a4f78cc 100644
> --- a/include/trace/events/alarmtimer.h
> +++ b/include/trace/events/alarmtimer.h
> @@ -77,6 +77,7 @@ DECLARE_EVENT_CLASS(alarm_processing,
>                 __string(name, process_name)
>         ),
>
> +#ifdef CONFIG_RTC_LIB
>         TP_fast_assign(
>                 __entry->expires = alarm->node.expires.tv64;
>                 __entry->second = rtc_ktime_to_tm(alarm->node.expires).tm_sec;
> @@ -89,6 +90,20 @@ DECLARE_EVENT_CLASS(alarm_processing,
>                 __assign_str(name, process_name);
>         ),
>
> +#else
> +       TP_fast_assign(
> +               __entry->expires = alarm->node.expires.tv64;
> +               __entry->second = 0;
> +               __entry->minute = 0;
> +               __entry->hour = 0;
> +               __entry->day = 0;
> +               __entry->mon = 0;
> +               __entry->year =0;
> +               __entry->alarm_type = alarm->type;
> +               __assign_str(name, process_name);
> +       ),
> +#endif
> +
>         TP_printk("process:%s alarmtimer type:%s expires:%llu "
>                   "time: %hu-%u-%u %u:%u:%u",
>                   __get_str(name),
>
> Seems to resolve it, but I think a better solution is needed.
>
> thanks
> -john



-- 
Baolin.wang
Best Regards

Reply via email to