aboutsummaryrefslogtreecommitdiffstats
path: root/lib/debugobjects.c
diff options
context:
space:
mode:
authorH. Peter Anvin <[email protected]>2008-08-26 05:39:15 +0000
committerH. Peter Anvin <[email protected]>2008-08-26 05:39:15 +0000
commit08970fc4e0385790a7b093adfaa4165a189f9eb0 (patch)
tree9a7ca00d88f64ba69abb3cc1cb7a4a803033b12a /lib/debugobjects.c
parentx86: cpuid: correct return value on partial operations (diff)
downloadkernel-08970fc4e0385790a7b093adfaa4165a189f9eb0.tar.gz
kernel-08970fc4e0385790a7b093adfaa4165a189f9eb0.zip
x86: msr: fix bogus return values from rdmsr_safe/wrmsr_safe
Impact: bogus error codes (+other?) on x86-64 The rdmsr_safe/wrmsr_safe routines have macros for the handling of the edx:eax arguments. Those macros take a variable number of assembly arguments. This is rather inherently incompatible with using %digit-style escapes in the inline assembly; replace those with %[name]-style escapes. This fixes miscompilation on x86-64, which at the very least caused bogus return values. It is possible that this could also corrupt the return value; I am not sure. Signed-off-by: H. Peter Anvin <[email protected]>
Diffstat (limited to 'lib/debugobjects.c')
0 files changed, 0 insertions, 0 deletions