--- /dev/null
+diff -Naur kvm-kmod-2.6.38.6.org/x86/external-module-compat.h kvm-kmod-2.6.38.6/x86/external-module-compat.h
+--- kvm-kmod-2.6.38.6.org/x86/external-module-compat.h 2011-05-15 09:34:48.000000000 +0200
++++ kvm-kmod-2.6.38.6/x86/external-module-compat.h 2011-05-21 13:30:50.529469540 +0200
+@@ -1064,41 +1064,6 @@
+
+ #endif /* >= 2.6.36 */
+
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37)
+-static inline u64 pvclock_scale_delta(u64 delta, u32 mul_frac, int shift)
+-{
+- u64 product;
+-#ifdef __i386__
+- u32 tmp1, tmp2;
+-#endif
+-
+- if (shift < 0)
+- delta >>= -shift;
+- else
+- delta <<= shift;
+-
+-#ifdef __i386__
+- __asm__ (
+- "mul %5 ; "
+- "mov %4,%%eax ; "
+- "mov %%edx,%4 ; "
+- "mul %5 ; "
+- "xor %5,%5 ; "
+- "add %4,%%eax ; "
+- "adc %5,%%edx ; "
+- : "=A" (product), "=r" (tmp1), "=r" (tmp2)
+- : "a" ((u32)delta), "1" ((u32)(delta >> 32)), "2" (mul_frac) );
+-#elif defined(__x86_64__)
+- __asm__ (
+- "mul %%rdx ; shrd $32,%%rdx,%%rax"
+- : "=a" (product) : "0" (delta), "d" ((u64)mul_frac) );
+-#else
+-#error implement me!
+-#endif
+-
+- return product;
+-}
+-#endif
+
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,34) && \
+ LINUX_VERSION_CODE != KERNEL_VERSION(2,6,32) && defined(CONFIG_X86_64)