On 2016年12月02日 13:15, Pan Xinhui wrote:



在 2016/12/2 12:35, yjin 写道:

On 2016年12月02日 12:22, Balbir Singh wrote:
On Fri, Dec 2, 2016 at 3:15 PM, Michael Ellerman <m...@ellerman.id.au> wrote:
yanjiang....@windriver.com writes:

diff --git a/arch/powerpc/include/asm/cputime.h b/arch/powerpc/include/asm/cputime.h
index 4f60db0..4423e97 100644
--- a/arch/powerpc/include/asm/cputime.h
+++ b/arch/powerpc/include/asm/cputime.h
@@ -228,7 +228,8 @@ static inline cputime_t clock_t_to_cputime(const unsigned long clk)
       return (__force cputime_t) ct;
  }

-#define cputime64_to_clock_t(ct) cputime_to_clock_t((cputime_t)(ct))
+#define cputime64_to_clock_t(ct)     \
+     (__force u64)(cputime_to_clock_t((cputime_t)(ct)))
Given the name of the function is "cputime64 to clock_t", surely we
should be returning a clock_t ?
Please fix it in cpuacct.c  Also check out git commit
527b0a76f41d062381adbb55c8eb61e32cb0bfc9
sched/cpuacct: Avoid %lld seq_printf warning

Hi Balbir,

Where can I find this commit?

hello,
    it is in next tree. :)

Got it. Thanks!

Regards!
Yanjiang


commit 527b0a76f41d062381adbb55c8eb61e32cb0bfc9
Author: Martin Schwidefsky <schwidef...@de.ibm.com>
Date:   Fri Nov 11 15:27:49 2016 +0100

    sched/cpuacct: Avoid %lld seq_printf warning
        For s390 kernel builds I keep getting this warning:
         kernel/sched/cpuacct.c: In function 'cpuacct_stats_show':
kernel/sched/cpuacct.c:298:25: warning: format '%lld' expects argument of type 'long long int', but argument 4 has type 'clock_t {aka long int}' [-Wformat=]
       seq_printf(sf, "%s %lld\n",
        Silence the warning by adding an explicit cast.
        Signed-off-by: Martin Schwidefsky <schwidef...@de.ibm.com>
    Signed-off-by: Peter Zijlstra (Intel) <pet...@infradead.org>
    Cc: Linus Torvalds <torva...@linux-foundation.org>
    Cc: Peter Zijlstra <pet...@infradead.org>
    Cc: Thomas Gleixner <t...@linutronix.de>
Link: http://lkml.kernel.org/r/20161111142749.6545-1-schwidef...@de.ibm.com
    Signed-off-by: Ingo Molnar <mi...@kernel.org>

diff --git a/kernel/sched/cpuacct.c b/kernel/sched/cpuacct.c
index bc0b309c..9add206 100644
--- a/kernel/sched/cpuacct.c
+++ b/kernel/sched/cpuacct.c
@@ -297,7 +297,7 @@ static int cpuacct_stats_show(struct seq_file *sf, void *v)
        for (stat = 0; stat < CPUACCT_STAT_NSTATS; stat++) {
                seq_printf(sf, "%s %lld\n",
                           cpuacct_stat_desc[stat],
-                          cputime64_to_clock_t(val[stat]));
+                          (long long)cputime64_to_clock_t(val[stat]));
        }

        return 0;

Thanks!
Yanjiang

Balbir



Reply via email to