x86: shift bits the right way in native_read_tscp
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> Acked-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
@@ -18,7 +18,7 @@ static inline unsigned long long native_read_tscp(unsigned int *aux)
|
|||||||
unsigned long low, high;
|
unsigned long low, high;
|
||||||
asm volatile(".byte 0x0f,0x01,0xf9"
|
asm volatile(".byte 0x0f,0x01,0xf9"
|
||||||
: "=a" (low), "=d" (high), "=c" (*aux));
|
: "=a" (low), "=d" (high), "=c" (*aux));
|
||||||
return low | ((u64)high >> 32);
|
return low | ((u64)high << 32);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user