Messages in this thread | | | Date | Wed, 27 May 2015 10:53:01 +0800 | From | Xiao Guangrong <> | Subject | Re: [PATCH 1/2] KVM: MMU: fix SMAP virtualization |
| |
On 05/26/2015 10:48 PM, Paolo Bonzini wrote: > > > On 26/05/2015 16:45, Edward Cree wrote: >>>> This breaks older compilers that can't initialize anon structures. >>>> >>>> How old ? Even gcc 3.1 says you can use unnamed struct/union fields and >>>> 3.2 is the minimum version required to compile the kernel as mentioned >>>> in the README. >>>> >>>> We could simply just name the structure, but I doubt this is the >>>> only place in the kernel code where it's being used this way :) >> This appears to be GCC bug #10676, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10676> >> Says it was fixed in 4.6, but I believe the kernel supports GCCs much older >> than that (back to 3.2). I personally hit it on 4.4.7, the version shipped >> with RHEL6.6. > > Yes, it will be fixed soon(ish). Probably before you can get rid of the > obnoxious disclaimer... :)
It has been fixed by Andrew:
From: Andrew Morton <akpm@linux-foundation.org> Subject: arch/x86/kvm/mmu.c: work around gcc-4.4.4 bug
arch/x86/kvm/mmu.c: In function 'kvm_mmu_pte_write': arch/x86/kvm/mmu.c:4256: error: unknown field 'cr0_wp' specified in initializer arch/x86/kvm/mmu.c:4257: error: unknown field 'cr4_pae' specified in initializer arch/x86/kvm/mmu.c:4257: warning: excess elements in union initializer ...
gcc-4.4.4 (at least) has issues when using anonymous unions in initializers.
Fixes: edc90b7dc4ceef6 ("KVM: MMU: fix SMAP virtualization") Cc: Xiao Guangrong <guangrong.xiao@linux.intel.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Should be found at -mm tree.
| |