On Thu, Oct 03 2024 at 16:29, Vincenzo Frascino wrote: > The VDSO implementation includes headers from outside of the > vdso/ namespace. > > Introduce vdso/page.h to make sure that the generic library > uses only the allowed namespace. > > Note: on a 32-bit architecture UL is an unsigned 32 bit long. Hence when > it supports 64-bit phys_addr_t we might end up in situation in which > the We end up with nothing. > top 32 bit are cleared. To prevent this issue this patch provides > separate macros for PAGE_MASK. 'this patch' is redundant information. git grep 'This patch' Documentation/process/ > +/* SPDX-License-Identifier: GPL-2.0 */ > +#ifndef __VDSO_PAGE_H > +#define __VDSO_PAGE_H > + > +#include <uapi/linux/const.h> > + > +/* > + * PAGE_SHIFT determines the page size. > + * > + * Note: This definition is required because PAGE_SHIFT is used > + * in several places throuout the codebase. > + */ > +#define PAGE_SHIFT CONFIG_PAGE_SHIFT > + > +#define PAGE_SIZE (_AC(1,UL) << CONFIG_PAGE_SHIFT) > + > +#if defined(CONFIG_PHYS_ADDR_T_64BIT) > +#define PAGE_MASK (~((1 << CONFIG_PAGE_SHIFT) - 1)) > +#else > +#define PAGE_MASK (~(PAGE_SIZE-1)) #define PAGE_MASK (~(PAGE_SIZE - 1)) please. Thanks, tglx