summaryrefslogtreecommitdiff
path: root/packages/linux/linux-2.6.24/time.h.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/linux/linux-2.6.24/time.h.patch')
-rw-r--r--packages/linux/linux-2.6.24/time.h.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/packages/linux/linux-2.6.24/time.h.patch b/packages/linux/linux-2.6.24/time.h.patch
new file mode 100644
index 0000000000..fd22f3a01d
--- /dev/null
+++ b/packages/linux/linux-2.6.24/time.h.patch
@@ -0,0 +1,25 @@
+....since some architectures don't support __udivdi3() (and
+ we don't want to use that, anyway).
+
+ Signed-off-by: Segher Boessenkool
+ ---
+ include/linux/time.h | 4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+
+Index: linux-2.6.24/include/linux/time.h
+===================================================================
+--- linux-2.6.24.orig/include/linux/time.h 2008-06-23 11:17:09.021841180 +0200
++++ linux-2.6.24/include/linux/time.h 2008-06-23 11:18:34.445167140 +0200
+@@ -173,6 +173,11 @@
+ {
+ ns += a->tv_nsec;
+ while(unlikely(ns >= NSEC_PER_SEC)) {
++ /* The following asm() prevents the compiler from
++ * optimising this loop into a modulo operation.
++ */
++ asm("" : "+r"(ns));
++
+ ns -= NSEC_PER_SEC;
+ a->tv_sec++;
+ }