在 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. :)

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