]> git.karo-electronics.de Git - linux-beck.git/commitdiff
cputime: Fix nsecs_to_cputime() return type cast
authorFrederic Weisbecker <fweisbec@gmail.com>
Wed, 5 Mar 2014 14:33:18 +0000 (15:33 +0100)
committerFrederic Weisbecker <fweisbec@gmail.com>
Thu, 13 Mar 2014 14:56:43 +0000 (15:56 +0100)
Even though nsec based cputime_t maps to u64, nsecs_to_cputime() must
return a cputime_t value. We want to enforce this kind of cast in order
to track down buggy manipulations of cputime_t such as direct access
of its values under wrong assumptions on its backend type (nsecs,
jiffies, etc...) by core code.

Cc: Ingo Molnar <mingo@kernel.org>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
include/asm-generic/cputime_nsecs.h

index 2c9e62c2bfd03cce685243832d5db4c8e71ec04c..768294f8bf85ed203d41c0852d77d37a662d5946 100644 (file)
@@ -44,7 +44,8 @@ typedef u64 __nocast cputime64_t;
 /*
  * Convert cputime <-> nanoseconds
  */
-#define nsecs_to_cputime(__nsecs)      ((__force u64)(__nsecs))
+#define nsecs_to_cputime(__nsecs)      \
+       (__force cputime_t)(__nsecs)
 
 
 /*