On Wed, Mar 25, 2020 at 05:26:20PM +0100, Paolo Bonzini wrote: > On 25/03/20 17:14, Sean Christopherson wrote: > >> Doh, right. I think the only solution for that one is to degrade it to > >> WARN_ON(1). > > I reproduced the error, give me a bit to play with the code to see if the > > BUILD_BUG can be preserved. I'm curious as to why kvm_cpu_cap_mask() is > > special, and why it only fails with this config. > > > > I could not reproduce it, but I would not be surprised if there are > other configurations where the compiler cannot constant-propagate from > the reverse_cpuid struct into __cpuid_entry_get_reg. The error is related to UBSAN. There is at least one legitimate (but benign) underlying issue. I'm chasing down a second instance of the BUILD_BUG. Assuming all issues can be fixed, I think it'd make sense to keep the BUILD_BUG, especially if it's teasing out actual weirdness, even if the weirdness is benign.