From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753367AbcEIOA2 (ORCPT ); Mon, 9 May 2016 10:00:28 -0400 Received: from mx1.redhat.com ([209.132.183.28]:41580 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752488AbcEIOA1 (ORCPT ); Mon, 9 May 2016 10:00:27 -0400 Subject: Re: Is BIT() in arch/x86/include/uapi/asm/kvm.h defined? Where? To: Borislav Petkov , Brooks Moses References: <20160505082423.GB534@pd.tnic> Cc: linux-kernel@vger.kernel.org, Ian Kasprzak , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= From: Paolo Bonzini Message-ID: <573097F2.1090406@redhat.com> Date: Mon, 9 May 2016 16:00:18 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.1 MIME-Version: 1.0 In-Reply-To: <20160505082423.GB534@pd.tnic> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Mon, 09 May 2016 14:00:25 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05/05/2016 10:24, Borislav Petkov wrote: > On Wed, May 04, 2016 at 05:49:27PM -0700, Brooks Moses wrote: >> When I run "make ARCH=x86 headers_install", and then write a simple C >> file that #includes "asm/kvm.h" from the resulting tree, I get a >> compiler error: the BIT() macro used on line 219 of that file is >> undefined: > > The below patch should help... > > @Paulo: btw, any chance we can fix that "signifcant" typo :-) in > KVM_CPUID_FLAG_SIGNIFCANT_INDEX or is it user-visible and cast in > stone? Unfortuntely it is cast in stone. The patch below is good though. Radim, please commit it (http://article.gmane.org/gmane.linux.kernel/2215443/raw) or pass the tree back to me so that I can. :) Thanks, Paolo > --- > From: Borislav Petkov > Date: Thu, 5 May 2016 10:18:23 +0200 > Subject: [PATCH] x86/kvm: Do not use BIT() in user-exported header > > Apparently, we're not exporting BIT() to userspace. > > Reported-by: Brooks Moses > Signed-off-by: Borislav Petkov > Cc: Paolo Bonzini > --- > arch/x86/include/uapi/asm/kvm.h | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/include/uapi/asm/kvm.h b/arch/x86/include/uapi/asm/kvm.h > index cd54147cb365..739c0c594022 100644 > --- a/arch/x86/include/uapi/asm/kvm.h > +++ b/arch/x86/include/uapi/asm/kvm.h > @@ -216,9 +216,9 @@ struct kvm_cpuid_entry2 { > __u32 padding[3]; > }; > > -#define KVM_CPUID_FLAG_SIGNIFCANT_INDEX BIT(0) > -#define KVM_CPUID_FLAG_STATEFUL_FUNC BIT(1) > -#define KVM_CPUID_FLAG_STATE_READ_NEXT BIT(2) > +#define KVM_CPUID_FLAG_SIGNIFCANT_INDEX (1 << 0) > +#define KVM_CPUID_FLAG_STATEFUL_FUNC (1 << 1) > +#define KVM_CPUID_FLAG_STATE_READ_NEXT (1 << 2) Reviewed-by: Paolo Bonzini > /* for KVM_SET_CPUID2 */ > struct kvm_cpuid2 { >