On 8/28/19 1:20 AM, Borislav Petkov wrote: > On Tue, Aug 27, 2019 at 09:33:11AM -0700, Dave Hansen wrote: >> The point was that there are 5 files in the code that need to be changed >> if you change NCAPINTS: >> >> 1. arch/x86/include/asm/required-features.h >> 2. arch/x86/include/asm/disabled-features.h >> 3. tools/arch/x86/include/asm/disabled-features.h >> 4. tools/arch/x86/include/asm/required-features.h >> 5. arch/x86/include/asm/cpufeature.h (2 sites) >> >> Each of those sites has a compile-time check for NCAPINTS. The problem >> is that the *-features.h code doesn't get compiled directly so a >> BUILD_BUG_ON() doesn't work by itself. So, for the sites there, we put >> it somewhere that *will* get compiled: the macros that actually check >> the bits. >> >> It looks weird, but the end effect is good: If you change NCAPINTS, you >> get compile errors in 5 files and have to go edit those 5 files to fix >> it. Your patch makes it easier to introduce errors and miss one of >> those sites. > > ... and we wouldn't want to debug any strange bugs from missing a case. > So, Cao, I wouldn't mind having the gist of that above somewhere around > there in a comment explicitly. >
A subtle issue hard to detect by eyes. Sure, on the way. -- Sincerely, Cao jin