On Mon, Feb 05, 2024 at 04:48:08AM -0800, Kees Cook wrote: > On Mon, Feb 05, 2024 at 12:51:43PM +0300, Alexey Dobriyan wrote: > > +#define ARCH_AT_PAGE_SHIFT_MASK \ > > + do { \ > > + u32 val = 1 << 12; \ > > + if (boot_cpu_has(X86_FEATURE_PSE)) { \ > > + val |= 1 << 21; \ > > + } \ > > + if (boot_cpu_has(X86_FEATURE_GBPAGES)) { \ > > + val |= 1 << 30; \ > > + } \ > > Can we use something besides literal "12", "21", and "30" values here? Ehh, no, why? Inside x86_64 the page shifts are very specific numbers, they won't change.