Bug 246250 - 1.3239 kernel won't compile on i686
Summary: 1.3239 kernel won't compile on i686
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 7
Hardware: i686
OS: Linux
low
low
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-06-29 15:52 UTC by H.J. Lu
Modified: 2007-11-30 22:12 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-08-27 14:33:15 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
A patch to remove ULL in SVM MSR indexes (482 bytes, patch)
2007-06-29 15:52 UTC, H.J. Lu
no flags Details | Diff

Description H.J. Lu 2007-06-29 15:52:20 UTC
MSR index is 32bit not 64bit. All other MSR indexes are defined
without the ULL suffix. Otherwise, you will get

[hjl@gnu-5 tmp]$ cat foo.c
typedef unsigned long long u64;

int is_disabled(void)
{
 u64 vm_cr;

 do { unsigned long l__,h__; __asm__ __volatile__("rdmsr" : "=a" (l__),
"=d" (h__) : "c" (0xc0010114ULL)); vm_cr = l__; vm_cr |=
((u64)h__<<32); } while(0);
 if (vm_cr & (1 << 4))
  return 1;

 return 0;
}
[hjl@gnu-5 tmp]$ gcc -m32 -S foo.c
foo.c: In function â_disabledâfoo.c:7: error: impossible register
constraint in âmâoo.c:12: confused by earlier errors, bailing out
[hjl@gnu-5 tmp]$

on 32bit. This patch removes the ULL suffix in SVM MSR indexes.

Comment 1 H.J. Lu 2007-06-29 15:52:21 UTC
Created attachment 158219 [details]
A patch to remove ULL in SVM MSR indexes

Comment 2 Chuck Ebbert 2007-06-29 16:26:30 UTC
(In reply to comment #1)
> Created an attachment (id=158219) [edit]
> A patch to remove ULL in SVM MSR indexes

Patch is in 1.3240, thanks for testing.




Note You need to log in before you can comment on or make changes to this bug.