Messages in this thread | | | Date | Mon, 9 Nov 2020 14:17:38 +0800 | From | kernel test robot <> | Subject | Re: [PATCH v14 09/13] KVM: x86: Report CET MSRs as to-be-saved if CET is supported |
| |
Hi Yang,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on tip/master] [also build test WARNING on linus/master kvm/linux-next v5.10-rc3 next-20201106] [cannot apply to vhost/linux-next linux/master] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Yang-Weijiang/Introduce-support-for-guest-CET-feature/20201106-090915 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 6f72faf4a32303c8bdc6491186b79391e9cf0c7e config: i386-randconfig-r022-20201109 (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 reproduce (this is a W=1 build): # https://github.com/0day-ci/linux/commit/d52c3d57bc17482b10d4071ea5b2cced7d2dc63e git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Yang-Weijiang/Introduce-support-for-guest-CET-feature/20201106-090915 git checkout d52c3d57bc17482b10d4071ea5b2cced7d2dc63e # save the attached .config to linux build tree make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
In file included from arch/x86/kvm/cpuid.h:5, from arch/x86/kvm/mmu.h:7, from arch/x86/kvm/x86.c:22: arch/x86/kvm/x86.h: In function 'kvm_cet_supported': arch/x86/kvm/x86.h:291:25: error: 'XFEATURE_MASK_CET_USER' undeclared (first use in this function); did you mean 'XFEATURE_MASK_SSE'? 291 | return supported_xss & XFEATURE_MASK_CET_USER; | ^~~~~~~~~~~~~~~~~~~~~~ | XFEATURE_MASK_SSE arch/x86/kvm/x86.h:291:25: note: each undeclared identifier is reported only once for each function it appears in arch/x86/kvm/x86.c: In function 'kvm_set_cr0': arch/x86/kvm/x86.c:852:53: error: 'X86_CR4_CET' undeclared (first use in this function); did you mean 'X86_CR4_DE'? 852 | if (!(cr0 & X86_CR0_WP) && kvm_read_cr4_bits(vcpu, X86_CR4_CET)) | ^~~~~~~~~~~ | X86_CR4_DE arch/x86/kvm/x86.c: In function 'kvm_set_cr4': arch/x86/kvm/x86.c:1016:13: error: 'X86_CR4_CET' undeclared (first use in this function); did you mean 'X86_CR4_DE'? 1016 | if ((cr4 & X86_CR4_CET) && !(kvm_read_cr0(vcpu) & X86_CR0_WP)) | ^~~~~~~~~~~ | X86_CR4_DE arch/x86/kvm/x86.c: At top level: arch/x86/kvm/x86.c:1251:2: error: 'MSR_IA32_U_CET' undeclared here (not in a function); did you mean 'MSR_IA32_PMC0'? 1251 | MSR_IA32_U_CET, MSR_IA32_S_CET, MSR_IA32_INT_SSP_TAB, MSR_KVM_GUEST_SSP, | ^~~~~~~~~~~~~~ | MSR_IA32_PMC0 arch/x86/kvm/x86.c:1251:18: error: 'MSR_IA32_S_CET' undeclared here (not in a function); did you mean 'MSR_IA32_PMC0'? 1251 | MSR_IA32_U_CET, MSR_IA32_S_CET, MSR_IA32_INT_SSP_TAB, MSR_KVM_GUEST_SSP, | ^~~~~~~~~~~~~~ | MSR_IA32_PMC0 arch/x86/kvm/x86.c:1251:34: error: 'MSR_IA32_INT_SSP_TAB' undeclared here (not in a function) 1251 | MSR_IA32_U_CET, MSR_IA32_S_CET, MSR_IA32_INT_SSP_TAB, MSR_KVM_GUEST_SSP, | ^~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.c:1252:2: error: 'MSR_IA32_PL0_SSP' undeclared here (not in a function); did you mean 'MSR_IA32_MCG_ESP'? 1252 | MSR_IA32_PL0_SSP, MSR_IA32_PL1_SSP, MSR_IA32_PL2_SSP, MSR_IA32_PL3_SSP, | ^~~~~~~~~~~~~~~~ | MSR_IA32_MCG_ESP arch/x86/kvm/x86.c:1252:20: error: 'MSR_IA32_PL1_SSP' undeclared here (not in a function); did you mean 'MSR_IA32_MCG_ESP'? 1252 | MSR_IA32_PL0_SSP, MSR_IA32_PL1_SSP, MSR_IA32_PL2_SSP, MSR_IA32_PL3_SSP, | ^~~~~~~~~~~~~~~~ | MSR_IA32_MCG_ESP arch/x86/kvm/x86.c:1252:38: error: 'MSR_IA32_PL2_SSP' undeclared here (not in a function); did you mean 'MSR_IA32_MCG_ESP'? 1252 | MSR_IA32_PL0_SSP, MSR_IA32_PL1_SSP, MSR_IA32_PL2_SSP, MSR_IA32_PL3_SSP, | ^~~~~~~~~~~~~~~~ | MSR_IA32_MCG_ESP arch/x86/kvm/x86.c:1252:56: error: 'MSR_IA32_PL3_SSP' undeclared here (not in a function); did you mean 'MSR_IA32_MCG_ESP'? 1252 | MSR_IA32_PL0_SSP, MSR_IA32_PL1_SSP, MSR_IA32_PL2_SSP, MSR_IA32_PL3_SSP, | ^~~~~~~~~~~~~~~~ | MSR_IA32_MCG_ESP arch/x86/kvm/x86.c: In function 'is_xsaves_msr': >> arch/x86/kvm/x86.c:3591:15: warning: comparison between pointer and integer 3591 | return index == MSR_IA32_U_CET || | ^~ arch/x86/kvm/x86.c:3592:16: warning: comparison between pointer and integer 3592 | (index >= MSR_IA32_PL0_SSP && index <= MSR_IA32_PL3_SSP); | ^~ arch/x86/kvm/x86.c:3592:45: warning: comparison between pointer and integer 3592 | (index >= MSR_IA32_PL0_SSP && index <= MSR_IA32_PL3_SSP); | ^~ arch/x86/kvm/x86.c: In function 'kvm_arch_hardware_setup': arch/x86/kvm/x86.h:406:22: error: 'X86_FEATURE_SHSTK' undeclared (first use in this function); did you mean 'X86_FEATURE_EST'? 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.c:10201:55: note: in definition of macro '__kvm_cpu_cap_has' 10201 | #define __kvm_cpu_cap_has(UNUSED_, f) kvm_cpu_cap_has(f) | ^ arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/kvm/x86.h:406:22: warning: passing argument 1 of 'kvm_cpu_cap_has' makes integer from pointer without a cast [-Wint-conversion] 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~~~~~~~~~ | | | const u32 * {aka const unsigned int *} arch/x86/kvm/x86.c:10201:55: note: in definition of macro '__kvm_cpu_cap_has' 10201 | #define __kvm_cpu_cap_has(UNUSED_, f) kvm_cpu_cap_has(f) | ^ arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ In file included from arch/x86/kvm/mmu.h:7, from arch/x86/kvm/x86.c:22: arch/x86/kvm/cpuid.h:301:58: note: expected 'unsigned int' but argument is of type 'const u32 *' {aka 'const unsigned int *'} 301 | static __always_inline bool kvm_cpu_cap_has(unsigned int x86_feature) | ~~~~~~~~~~~~~^~~~~~~~~~~ arch/x86/kvm/x86.h:407:22: error: 'X86_FEATURE_IBT' undeclared (first use in this function); did you mean 'X86_FEATURE_IBS'? 407 | !__cpu_has(__c, X86_FEATURE_IBT)) \ | ^~~~~~~~~~~~~~~ arch/x86/kvm/x86.c:10201:55: note: in definition of macro '__kvm_cpu_cap_has' 10201 | #define __kvm_cpu_cap_has(UNUSED_, f) kvm_cpu_cap_has(f) | ^ arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:407:22: warning: passing argument 1 of 'kvm_cpu_cap_has' makes integer from pointer without a cast [-Wint-conversion] 407 | !__cpu_has(__c, X86_FEATURE_IBT)) \ | ^~~~~~~~~~~~~~~ | | | const u32 * {aka const unsigned int *} arch/x86/kvm/x86.c:10201:55: note: in definition of macro '__kvm_cpu_cap_has' 10201 | #define __kvm_cpu_cap_has(UNUSED_, f) kvm_cpu_cap_has(f) | ^ arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ In file included from arch/x86/kvm/mmu.h:7, from arch/x86/kvm/x86.c:22: arch/x86/kvm/cpuid.h:301:58: note: expected 'unsigned int' but argument is of type 'const u32 *' {aka 'const unsigned int *'} 301 | static __always_inline bool kvm_cpu_cap_has(unsigned int x86_feature) | ~~~~~~~~~~~~~^~~~~~~~~~~ In file included from arch/x86/kvm/cpuid.h:5, from arch/x86/kvm/mmu.h:7, from arch/x86/kvm/x86.c:22: arch/x86/kvm/x86.h:408:22: error: 'X86_CR4_CET' undeclared (first use in this function); did you mean 'X86_CR4_DE'? 408 | __reserved_bits |= X86_CR4_CET; \ | ^~~~~~~~~~~ arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:408:19: error: invalid operands to binary | (have 'u64' {aka 'long long unsigned int'} and 'const u32 *' {aka 'const unsigned int *'}) 408 | __reserved_bits |= X86_CR4_CET; \ | ^~ ~~~~~~~~~~~ | | | const u32 * {aka const unsigned int *} arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:408:3: warning: statement with no effect [-Wunused-value] 408 | __reserved_bits |= X86_CR4_CET; \ | ^~~~~~~~~~~~~~~ arch/x86/kvm/x86.c:10202:22: note: in expansion of macro '__cr4_reserved_bits' 10202 | cr4_reserved_bits = __cr4_reserved_bits(__kvm_cpu_cap_has, UNUSED_); | ^~~~~~~~~~~~~~~~~~~ In file included from arch/x86/include/asm/thread_info.h:53, from include/linux/thread_info.h:38, from arch/x86/include/asm/preempt.h:7, from include/linux/preempt.h:78, from include/linux/percpu.h:6, from include/linux/context_tracking_state.h:5, from include/linux/hardirq.h:5, from include/linux/kvm_host.h:7, from arch/x86/kvm/x86.c:19: arch/x86/kvm/x86.c: In function 'kvm_arch_check_processor_compat': arch/x86/kvm/x86.h:406:22: error: 'X86_FEATURE_SHSTK' undeclared (first use in this function); did you mean 'X86_FEATURE_EST'? 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:24: note: in definition of macro 'cpu_has' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:72:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 72 | ( CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 0, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:72:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 72 | ( CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 0, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:72:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 72 | ( CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 0, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:72:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 72 | ( CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 0, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:73:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 73 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 1, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:73:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 73 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 1, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:73:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 73 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 1, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:73:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 73 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 1, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:73:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 73 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 1, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:74:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 74 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 2, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:74:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 74 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 2, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:74:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 74 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 2, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:74:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 74 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 2, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:74:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 74 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 2, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:75:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 75 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 3, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:75:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 75 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 3, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:75:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 75 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 3, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:75:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 75 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 3, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:75:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 75 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 3, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:76:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 76 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 4, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:76:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 76 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 4, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:76:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 76 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 4, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:76:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 76 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 4, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:76:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 76 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 4, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:77:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 77 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 5, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:77:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 77 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 5, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:77:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 77 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 5, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:77:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 77 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 5, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:77:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 77 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 5, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:78:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 78 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 6, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:78:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 78 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 6, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:78:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 78 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 6, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:78:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 78 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 6, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:78:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 78 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 6, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:79:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 79 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 7, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:79:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 79 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 7, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:79:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 79 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 7, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:79:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 79 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 7, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:79:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 79 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 7, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:80:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 80 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 8, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:80:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 80 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 8, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:80:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 80 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 8, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:80:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 80 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 8, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:80:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 80 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 8, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:81:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 81 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 9, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:81:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 81 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 9, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:81:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 81 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 9, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:81:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 81 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 9, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:81:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 81 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 9, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:82:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 82 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 10, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:82:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 82 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 10, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:82:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 82 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 10, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:82:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 82 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 10, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:82:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 82 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 10, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:83:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 83 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 11, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:83:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 83 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 11, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:83:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 83 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 11, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:83:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 83 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 11, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:83:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 83 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 11, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:84:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 84 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 12, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:84:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 84 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 12, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:84:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 84 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 12, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:84:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 84 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 12, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:84:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 84 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 12, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:85:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 85 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 13, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:85:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 85 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 13, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:85:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 85 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 13, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:85:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 85 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 13, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:85:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 85 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 13, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:86:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 86 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 14, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:86:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 86 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 14, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:86:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 86 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 14, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:86:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 86 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 14, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:86:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 86 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 14, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:87:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 87 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 15, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:87:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 87 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 15, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:87:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 87 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 15, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:87:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 87 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 15, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:87:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 87 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 15, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:88:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 88 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 16, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:88:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 88 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 16, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:88:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 88 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 16, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:88:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 88 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 16, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:88:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 88 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 16, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:89:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 89 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 17, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:89:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 89 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 17, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:89:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 89 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 17, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:89:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 89 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 17, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:89:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 89 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 17, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:9: error: invalid operands to binary >> (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:90:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 90 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ >> arch/x86/include/asm/cpufeature.h:62:13: warning: comparison between pointer and integer 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ arch/x86/include/asm/cpufeature.h:90:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 90 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:37: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:90:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 90 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:29: error: invalid operands to binary << (have 'long unsigned int' and 'const u32 *' {aka 'const unsigned int *'}) 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ^~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:90:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 90 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:62:42: error: invalid operands to binary & (have 'const u32 *' {aka 'const unsigned int *'} and 'int') 62 | (((bit)>>5)==(word) && (1UL<<((bit)&31) & maskname##word )) | ~~~ ^ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:90:5: note: in expansion of macro 'CHECK_BIT_IN_MASK_WORD' 90 | CHECK_BIT_IN_MASK_WORD(REQUIRED_MASK, 18, feature_bit) || \ | ^~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cpufeature.h:118:32: note: in expansion of macro 'REQUIRED_MASK_BIT_SET' 118 | (__builtin_constant_p(bit) && REQUIRED_MASK_BIT_SET(bit) ? 1 : \ | ^~~~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ arch/x86/kvm/x86.h:406:22: warning: passing argument 1 of 'test_bit' makes integer from pointer without a cast [-Wint-conversion] 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~~~~~~~~~ | | | const u32 * {aka const unsigned int *} arch/x86/include/asm/cpufeature.h:52:12: note: in definition of macro 'test_cpu_cap' 52 | test_bit(bit, (unsigned long *)((c)->x86_capability)) | ^~~ arch/x86/kvm/x86.h:406:7: note: in expansion of macro 'cpu_has' 406 | if (!__cpu_has(__c, X86_FEATURE_SHSTK) && \ | ^~~~~~~~~ arch/x86/kvm/x86.c:10235:6: note: in expansion of macro '__cr4_reserved_bits' 10235 | if (__cr4_reserved_bits(cpu_has, c) != | ^~~~~~~~~~~~~~~~~~~ In file included from arch/x86/include/asm/bitops.h:392, from include/linux/bitops.h:29, from include/linux/kernel.h:12, from include/asm-generic/bug.h:20, from arch/x86/include/asm/bug.h:93, from include/linux/bug.h:5, from include/linux/mmdebug.h:5, from include/linux/percpu.h:5, from include/linux/context_tracking_state.h:5, from include/linux/hardirq.h:5, from include/linux/kvm_host.h:7, from arch/x86/kvm/x86.c:19: include/asm-generic/bitops/instrumented-non-atomic.h:132:34: note: expected 'long int' but argument is of type 'const u32 *' {aka 'const unsigned int *'} 132 | static inline bool test_bit(long nr, const volatile unsigned long *addr) | ~~~~~^~ In file included from arch/x86/include/asm/thread_info.h:53, from include/linux/thread_info.h:38, from arch/x86/include/asm/preempt.h:7, from include/linux/preempt.h:78, from include/linux/percpu.h:6, from include/linux/context_tracking_state.h:5,
vim +3591 arch/x86/kvm/x86.c
15c4a6406f6c406 drivers/kvm/x86.c Carsten Otte 2007-10-30 3588 40d6256c456d0be arch/x86/kvm/x86.c Sean Christopherson 2020-11-06 3589 static bool is_xsaves_msr(u32 index) 40d6256c456d0be arch/x86/kvm/x86.c Sean Christopherson 2020-11-06 3590 { 40d6256c456d0be arch/x86/kvm/x86.c Sean Christopherson 2020-11-06 @3591 return index == MSR_IA32_U_CET || 40d6256c456d0be arch/x86/kvm/x86.c Sean Christopherson 2020-11-06 3592 (index >= MSR_IA32_PL0_SSP && index <= MSR_IA32_PL3_SSP); 40d6256c456d0be arch/x86/kvm/x86.c Sean Christopherson 2020-11-06 3593 } 40d6256c456d0be arch/x86/kvm/x86.c Sean Christopherson 2020-11-06 3594
--- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [unhandled content-type:application/gzip] | |