From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiao Guangrong Subject: Re: [PATCH 1/2] KVM: MMU: fix SMAP virtualization Date: Wed, 27 May 2015 10:53:01 +0800 Message-ID: <5565318D.1030309@linux.intel.com> References: <556486F3.5020007@solarflare.com> <556487A6.2020804@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: gleb@kernel.org, mtosatti@redhat.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, akpm@linux-foundation.org To: Paolo Bonzini , Edward Cree , Bandan Das Return-path: Received: from mga03.intel.com ([134.134.136.65]:25934 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751621AbbE0C4q (ORCPT ); Tue, 26 May 2015 22:56:46 -0400 In-Reply-To: <556487A6.2020804@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: 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 >> 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 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 Cc: Paolo Bonzini Signed-off-by: Andrew Morton Should be found at -mm tree.