[patch] x86: shift bits the right way in native_read_tscp

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <gcosta@...>, tglx <tglx@...>, mingo <mingo@...>, hpa <hpa@...>
Cc: <linux-kernel@...>
Date: Wednesday, June 25, 2008 - 5:45 pm

native_read_tscp shifts the bits in the high order value in the wrong direction,
the attached patch fixes that. 

Signed-off-by: Max Asbock <masbock@linux.vnet.ibm.com>

diff -pburN linux/include/asm-x86/msr.h linux.rdtscp/include/asm-x86/msr.h
--- linux/include/asm-x86/msr.h	2008-06-20 11:51:17.000000000 -0700
+++ linux.rdtscp/include/asm-x86/msr.h	2008-06-25 14:26:35.000000000 -0700
@@ -18,7 +18,7 @@ static inline unsigned long long native_
 	unsigned long low, high;
 	asm volatile(".byte 0x0f,0x01,0xf9"
 		     : "=a" (low), "=d" (high), "=c" (*aux));
-	return low | ((u64)high >> 32);
+	return low | ((u64)high << 32);
 }
 
 /*


---
Max


--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[patch] x86: shift bits the right way in native_read_tscp, Max Asbock, (Wed Jun 25, 5:45 pm)