Re: [PATCH 3/9] x86: vdso: Introduce asm/vdso/page.h

Arnd Bergmann
2024-09-04T14:52:43Z

On Tue, Sep 3, 2024, at 15:14, Vincenzo Frascino wrote:

> diff --git a/arch/x86/include/asm/vdso/page.h b/arch/x86/include/asm/vdso/page.h
> new file mode 100644
> index 000000000000..b0af8fbef27c
> --- /dev/null
> +++ b/arch/x86/include/asm/vdso/page.h
> @@ -0,0 +1,15 @@
> +
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#ifndef __ASM_VDSO_PAGE_H
> +#define __ASM_VDSO_PAGE_H
> +
> +#ifndef __ASSEMBLY__
> +
> +#include <asm/page_types.h>
> +
> +#define VDSO_PAGE_MASK PAGE_MASK
> +#define VDSO_PAGE_SIZE PAGE_SIZE
> +
> +#endif /* !__ASSEMBLY__ */
> +
> +#endif /* __ASM_VDSO_PAGE_H */

I don't get this one: the x86 asm/page_types.h still includes other
headers outside of the vdso namespace, but you seem to only need these
two definitions that are the same across everything.

Why not put PAGE_MASK and PAGE_SIZE into a global vdso/page.h
header? I did spend a lot of time a few months ago ensuring that
we can have a single definition for all architectures based on
CONFIG_PAGE_SHIFT, so all the extra copies should just go away.

Arnd