tree: https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue head: 528100f7edd6ca12296ff22606c0af2e7c80fd73 commit: 976e6f91138931878249297c5db8c81d7424ef3d [15/23] KVM: x86: mask CPUID(0xD,0x1).EAX against host value config: x86_64-randconfig-x019-201612 (attached as .config) reproduce: git checkout 976e6f91138931878249297c5db8c81d7424ef3d # save the attached .config to linux build tree make ARCH=x86_64 All warnings (new ones prefixed by >>): arch/x86/kvm/cpuid.c: In function '__do_cpuid_ent': >> arch/x86/kvm/cpuid.c:536:16: warning: passing argument 1 of 'cpuid_mask' makes pointer from integer without a cast [-Wint-conversion] cpuid_mask(entry[i].eax, CPUID_D_1_EAX); ^ arch/x86/kvm/cpuid.c:263:13: note: expected 'u32 * {aka unsigned int *}' but argument is of type '__u32 {aka unsigned int}' static void cpuid_mask(u32 *word, int wordnum) ^ vim +/cpuid_mask +536 arch/x86/kvm/cpuid.c 520 entry->eax &= supported; 521 entry->ebx = xstate_required_size(supported, false); 522 entry->ecx = entry->ebx; 523 entry->edx &= supported >> 32; 524 entry->flags |= KVM_CPUID_FLAG_SIGNIFCANT_INDEX; 525 if (!supported) 526 break; 527 528 for (idx = 1, i = 1; idx < 64; ++idx) { 529 u64 mask = ((u64)1 << idx); 530 if (*nent >= maxnent) 531 goto out; 532 533 do_cpuid_1_ent(&entry[i], function, idx); 534 if (idx == 1) { 535 entry[i].eax &= kvm_supported_cpuid_d_1_eax_x86_features; > 536 cpuid_mask(entry[i].eax, CPUID_D_1_EAX); 537 entry[i].ebx = 0; 538 if (entry[i].eax & (F(XSAVES)|F(XSAVEC))) 539 entry[i].ebx = 540 xstate_required_size(supported, 541 true); 542 } else { 543 if (entry[i].eax == 0 || !(supported & mask)) 544 continue; --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: Binary data