* [PATCH 1/6] futex: Remove dependency on HAVE_GENERIC_VDSO from FUTEX_ROBUST_UNLOCK
2026-07-09 7:28 [PATCH 0/6] vDSO: Clean up the HAVE_GENERIC_VDSO kconfig symbol Thomas Weißschuh
@ 2026-07-09 7:28 ` Thomas Weißschuh
2026-07-09 9:27 ` Vincenzo Frascino
2026-07-09 7:28 ` [PATCH 2/6] vDSO: Remove the dependency on HAVE_GENERIC_VDSO from ARCH_HAS_VDSO_ARCH_DATA Thomas Weißschuh
` (4 subsequent siblings)
5 siblings, 1 reply; 15+ messages in thread
From: Thomas Weißschuh @ 2026-07-09 7:28 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips, Thomas Weißschuh
The robust futex unlock functionality has no relation to the generic
vDSO functionality.
Remove the dependency.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
init/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/init/Kconfig b/init/Kconfig
index 5230d4879b1c..53178ea4bc93 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1857,7 +1857,7 @@ config HAVE_FUTEX_ROBUST_UNLOCK
bool
config FUTEX_ROBUST_UNLOCK
- def_bool FUTEX && HAVE_GENERIC_VDSO && GENERIC_IRQ_ENTRY && RSEQ && HAVE_FUTEX_ROBUST_UNLOCK
+ def_bool FUTEX && GENERIC_IRQ_ENTRY && RSEQ && HAVE_FUTEX_ROBUST_UNLOCK
config EPOLL
bool "Enable eventpoll support" if EXPERT
--
2.55.0
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 1/6] futex: Remove dependency on HAVE_GENERIC_VDSO from FUTEX_ROBUST_UNLOCK
2026-07-09 7:28 ` [PATCH 1/6] futex: Remove dependency on HAVE_GENERIC_VDSO from FUTEX_ROBUST_UNLOCK Thomas Weißschuh
@ 2026-07-09 9:27 ` Vincenzo Frascino
0 siblings, 0 replies; 15+ messages in thread
From: Vincenzo Frascino @ 2026-07-09 9:27 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 09/07/2026 08:28, Thomas Weißschuh wrote:
> The robust futex unlock functionality has no relation to the generic
> vDSO functionality.
>
> Remove the dependency.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> init/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 5230d4879b1c..53178ea4bc93 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -1857,7 +1857,7 @@ config HAVE_FUTEX_ROBUST_UNLOCK
> bool
>
> config FUTEX_ROBUST_UNLOCK
> - def_bool FUTEX && HAVE_GENERIC_VDSO && GENERIC_IRQ_ENTRY && RSEQ && HAVE_FUTEX_ROBUST_UNLOCK
> + def_bool FUTEX && GENERIC_IRQ_ENTRY && RSEQ && HAVE_FUTEX_ROBUST_UNLOCK
>
> config EPOLL
> bool "Enable eventpoll support" if EXPERT
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 2/6] vDSO: Remove the dependency on HAVE_GENERIC_VDSO from ARCH_HAS_VDSO_ARCH_DATA
2026-07-09 7:28 [PATCH 0/6] vDSO: Clean up the HAVE_GENERIC_VDSO kconfig symbol Thomas Weißschuh
2026-07-09 7:28 ` [PATCH 1/6] futex: Remove dependency on HAVE_GENERIC_VDSO from FUTEX_ROBUST_UNLOCK Thomas Weißschuh
@ 2026-07-09 7:28 ` Thomas Weißschuh
2026-07-09 9:28 ` Vincenzo Frascino
2026-07-09 7:28 ` [PATCH 3/6] MIPS: vdso: Stop using CONFIG_HAVE_GENERIC_VDSO Thomas Weißschuh
` (3 subsequent siblings)
5 siblings, 1 reply; 15+ messages in thread
From: Thomas Weißschuh @ 2026-07-09 7:28 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips, Thomas Weißschuh
Align ARCH_HAS_VDSO_ARCH_DATA with ARCH_HAS_VDSO_TIME_DATA, making it
selectable even without HAVE_GENERIC_VDSO.
It will only have an effect when HAVE_GENERIC_VDSO is enabled anyways,
but this make the architecture Kconfig files a bit simpler.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
arch/Kconfig | 1 -
arch/riscv/Kconfig | 2 +-
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/Kconfig b/arch/Kconfig
index fa7507ac8e13..8a8d1ab39757 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -1682,7 +1682,6 @@ config HAVE_SPARSE_SYSCALL_NR
related optimizations for a given architecture.
config ARCH_HAS_VDSO_ARCH_DATA
- depends on HAVE_GENERIC_VDSO
bool
config ARCH_HAS_VDSO_TIME_DATA
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 3f0a647218e4..353cbfcff783 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -54,7 +54,7 @@ config RISCV
select ARCH_HAS_SYSCALL_WRAPPER
select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
select ARCH_HAS_UBSAN
- select ARCH_HAS_VDSO_ARCH_DATA if HAVE_GENERIC_VDSO
+ select ARCH_HAS_VDSO_ARCH_DATA
select ARCH_HAVE_NMI_SAFE_CMPXCHG
select ARCH_KEEP_MEMBLOCK if ACPI || KEXEC
select ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE if 64BIT && MMU
--
2.55.0
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 2/6] vDSO: Remove the dependency on HAVE_GENERIC_VDSO from ARCH_HAS_VDSO_ARCH_DATA
2026-07-09 7:28 ` [PATCH 2/6] vDSO: Remove the dependency on HAVE_GENERIC_VDSO from ARCH_HAS_VDSO_ARCH_DATA Thomas Weißschuh
@ 2026-07-09 9:28 ` Vincenzo Frascino
0 siblings, 0 replies; 15+ messages in thread
From: Vincenzo Frascino @ 2026-07-09 9:28 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 09/07/2026 08:28, Thomas Weißschuh wrote:
> Align ARCH_HAS_VDSO_ARCH_DATA with ARCH_HAS_VDSO_TIME_DATA, making it
> selectable even without HAVE_GENERIC_VDSO.
>
> It will only have an effect when HAVE_GENERIC_VDSO is enabled anyways,
> but this make the architecture Kconfig files a bit simpler.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> arch/Kconfig | 1 -
> arch/riscv/Kconfig | 2 +-
> 2 files changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/Kconfig b/arch/Kconfig
> index fa7507ac8e13..8a8d1ab39757 100644
> --- a/arch/Kconfig
> +++ b/arch/Kconfig
> @@ -1682,7 +1682,6 @@ config HAVE_SPARSE_SYSCALL_NR
> related optimizations for a given architecture.
>
> config ARCH_HAS_VDSO_ARCH_DATA
> - depends on HAVE_GENERIC_VDSO
> bool
>
> config ARCH_HAS_VDSO_TIME_DATA
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index 3f0a647218e4..353cbfcff783 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -54,7 +54,7 @@ config RISCV
> select ARCH_HAS_SYSCALL_WRAPPER
> select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
> select ARCH_HAS_UBSAN
> - select ARCH_HAS_VDSO_ARCH_DATA if HAVE_GENERIC_VDSO
> + select ARCH_HAS_VDSO_ARCH_DATA
> select ARCH_HAVE_NMI_SAFE_CMPXCHG
> select ARCH_KEEP_MEMBLOCK if ACPI || KEXEC
> select ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE if 64BIT && MMU
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 3/6] MIPS: vdso: Stop using CONFIG_HAVE_GENERIC_VDSO
2026-07-09 7:28 [PATCH 0/6] vDSO: Clean up the HAVE_GENERIC_VDSO kconfig symbol Thomas Weißschuh
2026-07-09 7:28 ` [PATCH 1/6] futex: Remove dependency on HAVE_GENERIC_VDSO from FUTEX_ROBUST_UNLOCK Thomas Weißschuh
2026-07-09 7:28 ` [PATCH 2/6] vDSO: Remove the dependency on HAVE_GENERIC_VDSO from ARCH_HAS_VDSO_ARCH_DATA Thomas Weißschuh
@ 2026-07-09 7:28 ` Thomas Weißschuh
2026-07-09 9:29 ` Vincenzo Frascino
2026-07-09 7:28 ` [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary Thomas Weißschuh
` (2 subsequent siblings)
5 siblings, 1 reply; 15+ messages in thread
From: Thomas Weißschuh @ 2026-07-09 7:28 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips, Thomas Weißschuh
HAVE_GENERIC_VDSO is about to become an implementation detail.
Use the MIPS-specific symbol instead. It is equivalent here.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
arch/mips/kernel/vdso.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/mips/kernel/vdso.c b/arch/mips/kernel/vdso.c
index bd1fc17d3975..29a10045f2b6 100644
--- a/arch/mips/kernel/vdso.c
+++ b/arch/mips/kernel/vdso.c
@@ -129,7 +129,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
* This ensures that when the kernel updates the VDSO data userland
* will observe it without requiring cache invalidations.
*/
- if (cpu_has_dc_aliases && IS_ENABLED(CONFIG_HAVE_GENERIC_VDSO)) {
+ if (cpu_has_dc_aliases && IS_ENABLED(CONFIG_MIPS_GENERIC_GETTIMEOFDAY)) {
base = __ALIGN_MASK(base, shm_align_mask);
base += ((unsigned long)vdso_k_time_data - gic_size) & shm_align_mask;
}
@@ -137,7 +137,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
data_addr = base + gic_size;
vdso_addr = data_addr + VDSO_NR_PAGES * PAGE_SIZE;
- if (IS_ENABLED(CONFIG_HAVE_GENERIC_VDSO)) {
+ if (IS_ENABLED(CONFIG_MIPS_GENERIC_GETTIMEOFDAY)) {
vma = vdso_install_vvar_mapping(mm, data_addr);
if (IS_ERR(vma)) {
ret = PTR_ERR(vma);
--
2.55.0
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 3/6] MIPS: vdso: Stop using CONFIG_HAVE_GENERIC_VDSO
2026-07-09 7:28 ` [PATCH 3/6] MIPS: vdso: Stop using CONFIG_HAVE_GENERIC_VDSO Thomas Weißschuh
@ 2026-07-09 9:29 ` Vincenzo Frascino
0 siblings, 0 replies; 15+ messages in thread
From: Vincenzo Frascino @ 2026-07-09 9:29 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 09/07/2026 08:28, Thomas Weißschuh wrote:
> HAVE_GENERIC_VDSO is about to become an implementation detail.
>
> Use the MIPS-specific symbol instead. It is equivalent here.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> arch/mips/kernel/vdso.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/mips/kernel/vdso.c b/arch/mips/kernel/vdso.c
> index bd1fc17d3975..29a10045f2b6 100644
> --- a/arch/mips/kernel/vdso.c
> +++ b/arch/mips/kernel/vdso.c
> @@ -129,7 +129,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
> * This ensures that when the kernel updates the VDSO data userland
> * will observe it without requiring cache invalidations.
> */
> - if (cpu_has_dc_aliases && IS_ENABLED(CONFIG_HAVE_GENERIC_VDSO)) {
> + if (cpu_has_dc_aliases && IS_ENABLED(CONFIG_MIPS_GENERIC_GETTIMEOFDAY)) {
> base = __ALIGN_MASK(base, shm_align_mask);
> base += ((unsigned long)vdso_k_time_data - gic_size) & shm_align_mask;
> }
> @@ -137,7 +137,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
> data_addr = base + gic_size;
> vdso_addr = data_addr + VDSO_NR_PAGES * PAGE_SIZE;
>
> - if (IS_ENABLED(CONFIG_HAVE_GENERIC_VDSO)) {
> + if (IS_ENABLED(CONFIG_MIPS_GENERIC_GETTIMEOFDAY)) {
> vma = vdso_install_vvar_mapping(mm, data_addr);
> if (IS_ERR(vma)) {
> ret = PTR_ERR(vma);
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary
2026-07-09 7:28 [PATCH 0/6] vDSO: Clean up the HAVE_GENERIC_VDSO kconfig symbol Thomas Weißschuh
` (2 preceding siblings ...)
2026-07-09 7:28 ` [PATCH 3/6] MIPS: vdso: Stop using CONFIG_HAVE_GENERIC_VDSO Thomas Weißschuh
@ 2026-07-09 7:28 ` Thomas Weißschuh
2026-07-09 9:30 ` Vincenzo Frascino
2026-07-09 11:09 ` Philippe Mathieu-Daudé
2026-07-09 7:28 ` [PATCH 5/6] vDSO: Drop HAVE_GENERIC_VDSO from architecture kconfig files Thomas Weißschuh
2026-07-09 7:28 ` [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE Thomas Weißschuh
5 siblings, 2 replies; 15+ messages in thread
From: Thomas Weißschuh @ 2026-07-09 7:28 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips, Thomas Weißschuh
gettimeofday() and getrandom() in the vDSO require the vDSO datastore.
Enable it automatically if either one of them is enabled so the
architecture code doesn't need to know this.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
lib/vdso/Kconfig | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/lib/vdso/Kconfig b/lib/vdso/Kconfig
index db87ba34ef19..eedb04974fd5 100644
--- a/lib/vdso/Kconfig
+++ b/lib/vdso/Kconfig
@@ -3,10 +3,9 @@
config HAVE_GENERIC_VDSO
bool
-if HAVE_GENERIC_VDSO
-
config GENERIC_GETTIMEOFDAY
bool
+ select HAVE_GENERIC_VDSO
help
This is a generic implementation of gettimeofday vdso.
Each architecture that enables this feature has to
@@ -21,7 +20,6 @@ config GENERIC_VDSO_OVERFLOW_PROTECT
config VDSO_GETRANDOM
bool
+ select HAVE_GENERIC_VDSO
help
Selected by architectures that support vDSO getrandom().
-
-endif
--
2.55.0
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary
2026-07-09 7:28 ` [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary Thomas Weißschuh
@ 2026-07-09 9:30 ` Vincenzo Frascino
2026-07-09 11:09 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 15+ messages in thread
From: Vincenzo Frascino @ 2026-07-09 9:30 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 09/07/2026 08:28, Thomas Weißschuh wrote:
> gettimeofday() and getrandom() in the vDSO require the vDSO datastore.
>
> Enable it automatically if either one of them is enabled so the
> architecture code doesn't need to know this.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> lib/vdso/Kconfig | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/lib/vdso/Kconfig b/lib/vdso/Kconfig
> index db87ba34ef19..eedb04974fd5 100644
> --- a/lib/vdso/Kconfig
> +++ b/lib/vdso/Kconfig
> @@ -3,10 +3,9 @@
> config HAVE_GENERIC_VDSO
> bool
>
> -if HAVE_GENERIC_VDSO
> -
> config GENERIC_GETTIMEOFDAY
> bool
> + select HAVE_GENERIC_VDSO
> help
> This is a generic implementation of gettimeofday vdso.
> Each architecture that enables this feature has to
> @@ -21,7 +20,6 @@ config GENERIC_VDSO_OVERFLOW_PROTECT
>
> config VDSO_GETRANDOM
> bool
> + select HAVE_GENERIC_VDSO
> help
> Selected by architectures that support vDSO getrandom().
> -
> -endif
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary
2026-07-09 7:28 ` [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary Thomas Weißschuh
2026-07-09 9:30 ` Vincenzo Frascino
@ 2026-07-09 11:09 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 15+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-07-09 11:09 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Vincenzo Frascino, Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 9/7/26 09:28, Thomas WeiÃschuh wrote:
> gettimeofday() and getrandom() in the vDSO require the vDSO datastore.
>
> Enable it automatically if either one of them is enabled so the
> architecture code doesn't need to know this.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
> ---
> lib/vdso/Kconfig | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 5/6] vDSO: Drop HAVE_GENERIC_VDSO from architecture kconfig files
2026-07-09 7:28 [PATCH 0/6] vDSO: Clean up the HAVE_GENERIC_VDSO kconfig symbol Thomas Weißschuh
` (3 preceding siblings ...)
2026-07-09 7:28 ` [PATCH 4/6] vDSO: Automatically select HAVE_GENERIC_VDSO if necessary Thomas Weißschuh
@ 2026-07-09 7:28 ` Thomas Weißschuh
2026-07-09 9:31 ` Vincenzo Frascino
2026-07-09 7:28 ` [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE Thomas Weißschuh
5 siblings, 1 reply; 15+ messages in thread
From: Thomas Weißschuh @ 2026-07-09 7:28 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips, Thomas Weißschuh
Now that GENERIC_GETTIMEOFDAY and VDSO_GETRANDOM enable
HAVE_GENERIC_VDSO automatically, the architecture specific kconfig files
do not need to do so anymore.
Remove the corresponding lines.
Keep them for riscv, loongarch and powerpc as those have their own
explicit usage of the vDSO datastore provided by HAVE_GENERIC_VDSO.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
arch/arm/mm/Kconfig | 1 -
arch/arm64/Kconfig | 1 -
arch/mips/Kconfig | 1 -
arch/riscv/Kconfig | 4 ++--
arch/s390/Kconfig | 1 -
arch/sparc/Kconfig | 1 -
arch/x86/Kconfig | 1 -
7 files changed, 2 insertions(+), 8 deletions(-)
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index 871bd58d2ccc..f7bea397a201 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -924,7 +924,6 @@ config VDSO
bool "Enable VDSO for acceleration of some system calls"
depends on AEABI && MMU && CPU_V7
default y if ARM_ARCH_TIMER
- select HAVE_GENERIC_VDSO
select GENERIC_GETTIMEOFDAY
help
Place in the process address space an ELF shared object
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b3afe0688919..11e733b6a3cf 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -229,7 +229,6 @@ config ARM64
select HAVE_SYSCALL_TRACEPOINTS
select HAVE_KPROBES
select HAVE_KRETPROBES
- select HAVE_GENERIC_VDSO
select HOTPLUG_CORE_SYNC_DEAD if HOTPLUG_CPU
select HOTPLUG_SMT if HOTPLUG_CPU
select IRQ_DOMAIN
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 8555bbf47c63..a06f24317306 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -3163,7 +3163,6 @@ config MIPS_EXTERNAL_TIMER
config MIPS_GENERIC_GETTIMEOFDAY
def_bool y
select GENERIC_GETTIMEOFDAY
- select HAVE_GENERIC_VDSO
depends on CSRC_R4K || CLKSRC_MIPS_GIC
# GCC (at least up to version 9.2) appears to emit function calls that make use
# of the GOT when targeting microMIPS, which we can't use in the VDSO due to
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 353cbfcff783..9aa8c4df0cd8 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -110,7 +110,7 @@ config RISCV
select GENERIC_CPU_VULNERABILITIES
select GENERIC_EARLY_IOREMAP
select GENERIC_ENTRY
- select GENERIC_GETTIMEOFDAY if HAVE_GENERIC_VDSO && 64BIT
+ select GENERIC_GETTIMEOFDAY if MMU && 64BIT
select GENERIC_IDLE_POLL_SETUP
select GENERIC_IOREMAP if MMU
select HAVE_IOREMAP_PROT if MMU
@@ -227,7 +227,7 @@ config RISCV
select THREAD_INFO_IN_TASK
select TRACE_IRQFLAGS_SUPPORT
select UACCESS_MEMCPY if !MMU
- select VDSO_GETRANDOM if HAVE_GENERIC_VDSO && 64BIT
+ select VDSO_GETRANDOM if MMU && 64BIT
select USER_STACKTRACE_SUPPORT
select ZONE_DMA32 if 64BIT
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index 84404e6778d5..c9c55e3ddf1d 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -215,7 +215,6 @@ config S390
select HAVE_FUNCTION_GRAPH_TRACER
select HAVE_FUNCTION_TRACER
select HAVE_GCC_PLUGINS
- select HAVE_GENERIC_VDSO
select HAVE_IOREMAP_PROT if PCI
select HAVE_KERNEL_BZIP2
select HAVE_KERNEL_GZIP
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 0e9c906c4b5d..4dd79311133f 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -113,7 +113,6 @@ config SPARC64
select ARCH_SUPPORTS_SCHED_SMT if SMP
select ARCH_SUPPORTS_SCHED_MC if SMP
select ARCH_HAS_LAZY_MMU_MODE
- select HAVE_GENERIC_VDSO
select GENERIC_GETTIMEOFDAY
config ARCH_PROC_KCORE_TEXT
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index bdad90f210e4..2f4a78024a96 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -302,7 +302,6 @@ config X86
select HAVE_UNSTABLE_SCHED_CLOCK
select HAVE_UNWIND_USER_FP if X86_64
select HAVE_USER_RETURN_NOTIFIER
- select HAVE_GENERIC_VDSO
select VDSO_GETRANDOM if X86_64
select HOTPLUG_PARALLEL if SMP && X86_64
select HOTPLUG_SMT if SMP
--
2.55.0
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 5/6] vDSO: Drop HAVE_GENERIC_VDSO from architecture kconfig files
2026-07-09 7:28 ` [PATCH 5/6] vDSO: Drop HAVE_GENERIC_VDSO from architecture kconfig files Thomas Weißschuh
@ 2026-07-09 9:31 ` Vincenzo Frascino
0 siblings, 0 replies; 15+ messages in thread
From: Vincenzo Frascino @ 2026-07-09 9:31 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 09/07/2026 08:28, Thomas Weißschuh wrote:
> Now that GENERIC_GETTIMEOFDAY and VDSO_GETRANDOM enable
> HAVE_GENERIC_VDSO automatically, the architecture specific kconfig files
> do not need to do so anymore.
>
> Remove the corresponding lines.
>
> Keep them for riscv, loongarch and powerpc as those have their own
> explicit usage of the vDSO datastore provided by HAVE_GENERIC_VDSO.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> arch/arm/mm/Kconfig | 1 -
> arch/arm64/Kconfig | 1 -
> arch/mips/Kconfig | 1 -
> arch/riscv/Kconfig | 4 ++--
> arch/s390/Kconfig | 1 -
> arch/sparc/Kconfig | 1 -
> arch/x86/Kconfig | 1 -
> 7 files changed, 2 insertions(+), 8 deletions(-)
>
> diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
> index 871bd58d2ccc..f7bea397a201 100644
> --- a/arch/arm/mm/Kconfig
> +++ b/arch/arm/mm/Kconfig
> @@ -924,7 +924,6 @@ config VDSO
> bool "Enable VDSO for acceleration of some system calls"
> depends on AEABI && MMU && CPU_V7
> default y if ARM_ARCH_TIMER
> - select HAVE_GENERIC_VDSO
> select GENERIC_GETTIMEOFDAY
> help
> Place in the process address space an ELF shared object
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b3afe0688919..11e733b6a3cf 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -229,7 +229,6 @@ config ARM64
> select HAVE_SYSCALL_TRACEPOINTS
> select HAVE_KPROBES
> select HAVE_KRETPROBES
> - select HAVE_GENERIC_VDSO
> select HOTPLUG_CORE_SYNC_DEAD if HOTPLUG_CPU
> select HOTPLUG_SMT if HOTPLUG_CPU
> select IRQ_DOMAIN
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 8555bbf47c63..a06f24317306 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -3163,7 +3163,6 @@ config MIPS_EXTERNAL_TIMER
> config MIPS_GENERIC_GETTIMEOFDAY
> def_bool y
> select GENERIC_GETTIMEOFDAY
> - select HAVE_GENERIC_VDSO
> depends on CSRC_R4K || CLKSRC_MIPS_GIC
> # GCC (at least up to version 9.2) appears to emit function calls that make use
> # of the GOT when targeting microMIPS, which we can't use in the VDSO due to
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index 353cbfcff783..9aa8c4df0cd8 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -110,7 +110,7 @@ config RISCV
> select GENERIC_CPU_VULNERABILITIES
> select GENERIC_EARLY_IOREMAP
> select GENERIC_ENTRY
> - select GENERIC_GETTIMEOFDAY if HAVE_GENERIC_VDSO && 64BIT
> + select GENERIC_GETTIMEOFDAY if MMU && 64BIT
> select GENERIC_IDLE_POLL_SETUP
> select GENERIC_IOREMAP if MMU
> select HAVE_IOREMAP_PROT if MMU
> @@ -227,7 +227,7 @@ config RISCV
> select THREAD_INFO_IN_TASK
> select TRACE_IRQFLAGS_SUPPORT
> select UACCESS_MEMCPY if !MMU
> - select VDSO_GETRANDOM if HAVE_GENERIC_VDSO && 64BIT
> + select VDSO_GETRANDOM if MMU && 64BIT
> select USER_STACKTRACE_SUPPORT
> select ZONE_DMA32 if 64BIT
>
> diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
> index 84404e6778d5..c9c55e3ddf1d 100644
> --- a/arch/s390/Kconfig
> +++ b/arch/s390/Kconfig
> @@ -215,7 +215,6 @@ config S390
> select HAVE_FUNCTION_GRAPH_TRACER
> select HAVE_FUNCTION_TRACER
> select HAVE_GCC_PLUGINS
> - select HAVE_GENERIC_VDSO
> select HAVE_IOREMAP_PROT if PCI
> select HAVE_KERNEL_BZIP2
> select HAVE_KERNEL_GZIP
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 0e9c906c4b5d..4dd79311133f 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -113,7 +113,6 @@ config SPARC64
> select ARCH_SUPPORTS_SCHED_SMT if SMP
> select ARCH_SUPPORTS_SCHED_MC if SMP
> select ARCH_HAS_LAZY_MMU_MODE
> - select HAVE_GENERIC_VDSO
> select GENERIC_GETTIMEOFDAY
>
> config ARCH_PROC_KCORE_TEXT
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index bdad90f210e4..2f4a78024a96 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -302,7 +302,6 @@ config X86
> select HAVE_UNSTABLE_SCHED_CLOCK
> select HAVE_UNWIND_USER_FP if X86_64
> select HAVE_USER_RETURN_NOTIFIER
> - select HAVE_GENERIC_VDSO
> select VDSO_GETRANDOM if X86_64
> select HOTPLUG_PARALLEL if SMP && X86_64
> select HOTPLUG_SMT if SMP
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE
2026-07-09 7:28 [PATCH 0/6] vDSO: Clean up the HAVE_GENERIC_VDSO kconfig symbol Thomas Weißschuh
` (4 preceding siblings ...)
2026-07-09 7:28 ` [PATCH 5/6] vDSO: Drop HAVE_GENERIC_VDSO from architecture kconfig files Thomas Weißschuh
@ 2026-07-09 7:28 ` Thomas Weißschuh
2026-07-09 9:31 ` Vincenzo Frascino
2026-07-09 11:10 ` Philippe Mathieu-Daudé
5 siblings, 2 replies; 15+ messages in thread
From: Thomas Weißschuh @ 2026-07-09 7:28 UTC (permalink / raw)
To: Andy Lutomirski, Thomas Gleixner, Vincenzo Frascino,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips, Thomas Weißschuh
Over time the meaning of HAVE_GENERIC_VDSO has become off.
Today it only controls the availability of the vDSO datastore.
Rename the symbol to match its function.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
arch/loongarch/Kconfig | 2 +-
arch/powerpc/Kconfig | 2 +-
arch/riscv/Kconfig | 2 +-
include/linux/vdso_datastore.h | 6 +++---
lib/vdso/Kconfig | 6 +++---
lib/vdso/Makefile | 2 +-
6 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig
index d8d252325017..41ed648fcec9 100644
--- a/arch/loongarch/Kconfig
+++ b/arch/loongarch/Kconfig
@@ -153,7 +153,6 @@ config LOONGARCH
select HAVE_FUNCTION_GRAPH_TRACER
select HAVE_FUNCTION_TRACER
select HAVE_GCC_PLUGINS
- select HAVE_GENERIC_VDSO
select HAVE_HW_BREAKPOINT if PERF_EVENTS
select HAVE_IOREMAP_PROT
select HAVE_IRQ_EXIT_ON_IRQ_STACK
@@ -213,6 +212,7 @@ config LOONGARCH
select TRACE_IRQFLAGS_SUPPORT
select USE_PERCPU_NUMA_NODE_ID
select USER_STACKTRACE_SUPPORT
+ select VDSO_DATASTORE
select VDSO_GETRANDOM
select ZONE_DMA32 if 64BIT
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index f7ce5fff81f0..c6bc2cd6cc83 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -256,7 +256,6 @@ config PPC
select HAVE_FUNCTION_GRAPH_TRACER
select HAVE_FUNCTION_TRACER if !COMPILE_TEST && (PPC64 || (PPC32 && CC_IS_GCC))
select HAVE_GCC_PLUGINS
- select HAVE_GENERIC_VDSO
select HAVE_HARDLOCKUP_DETECTOR_ARCH if PPC_BOOK3S_64 && SMP
select HAVE_HARDLOCKUP_DETECTOR_PERF if PERF_EVENTS && HAVE_PERF_EVENTS_NMI
select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx)
@@ -328,6 +327,7 @@ config PPC
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
select TRACE_IRQFLAGS_SUPPORT
+ select VDSO_DATASTORE
select VDSO_GETRANDOM
#
# Please keep this list sorted alphabetically.
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 9aa8c4df0cd8..019fb4799943 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -171,7 +171,6 @@ config RISCV
select HAVE_FUNCTION_ARG_ACCESS_API
select HAVE_FUNCTION_ERROR_INJECTION
select HAVE_GCC_PLUGINS
- select HAVE_GENERIC_VDSO if MMU
select HAVE_IRQ_TIME_ACCOUNTING
select HAVE_KERNEL_BZIP2 if !EFI_ZBOOT
select HAVE_KERNEL_GZIP if !EFI_ZBOOT
@@ -227,6 +226,7 @@ config RISCV
select THREAD_INFO_IN_TASK
select TRACE_IRQFLAGS_SUPPORT
select UACCESS_MEMCPY if !MMU
+ select VDSO_DATASTORE if MMU
select VDSO_GETRANDOM if MMU && 64BIT
select USER_STACKTRACE_SUPPORT
select ZONE_DMA32 if 64BIT
diff --git a/include/linux/vdso_datastore.h b/include/linux/vdso_datastore.h
index 3dfba9502d78..13b01baf3497 100644
--- a/include/linux/vdso_datastore.h
+++ b/include/linux/vdso_datastore.h
@@ -7,10 +7,10 @@
extern const struct vm_special_mapping vdso_vvar_mapping;
struct vm_area_struct *vdso_install_vvar_mapping(struct mm_struct *mm, unsigned long addr);
-#ifdef CONFIG_HAVE_GENERIC_VDSO
+#ifdef CONFIG_VDSO_DATASTORE
void __init vdso_setup_data_pages(void);
-#else /* !CONFIG_HAVE_GENERIC_VDSO */
+#else /* !CONFIG_VDSO_DATASTORE */
static inline void vdso_setup_data_pages(void) { }
-#endif /* CONFIG_HAVE_GENERIC_VDSO */
+#endif /* CONFIG_VDSO_DATASTORE */
#endif /* _LINUX_VDSO_DATASTORE_H */
diff --git a/lib/vdso/Kconfig b/lib/vdso/Kconfig
index eedb04974fd5..597f5f0f9681 100644
--- a/lib/vdso/Kconfig
+++ b/lib/vdso/Kconfig
@@ -1,11 +1,11 @@
# SPDX-License-Identifier: GPL-2.0
-config HAVE_GENERIC_VDSO
+config VDSO_DATASTORE
bool
config GENERIC_GETTIMEOFDAY
bool
- select HAVE_GENERIC_VDSO
+ select VDSO_DATASTORE
help
This is a generic implementation of gettimeofday vdso.
Each architecture that enables this feature has to
@@ -20,6 +20,6 @@ config GENERIC_VDSO_OVERFLOW_PROTECT
config VDSO_GETRANDOM
bool
- select HAVE_GENERIC_VDSO
+ select VDSO_DATASTORE
help
Selected by architectures that support vDSO getrandom().
diff --git a/lib/vdso/Makefile b/lib/vdso/Makefile
index 405f743253d7..ac304def42d6 100644
--- a/lib/vdso/Makefile
+++ b/lib/vdso/Makefile
@@ -1,3 +1,3 @@
# SPDX-License-Identifier: GPL-2.0-only
-obj-$(CONFIG_HAVE_GENERIC_VDSO) += datastore.o
+obj-$(CONFIG_VDSO_DATASTORE) += datastore.o
--
2.55.0
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE
2026-07-09 7:28 ` [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE Thomas Weißschuh
@ 2026-07-09 9:31 ` Vincenzo Frascino
2026-07-09 11:10 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 15+ messages in thread
From: Vincenzo Frascino @ 2026-07-09 9:31 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 09/07/2026 08:28, Thomas Weißschuh wrote:
> Over time the meaning of HAVE_GENERIC_VDSO has become off.
> Today it only controls the availability of the vDSO datastore.
>
> Rename the symbol to match its function.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
> arch/loongarch/Kconfig | 2 +-
> arch/powerpc/Kconfig | 2 +-
> arch/riscv/Kconfig | 2 +-
> include/linux/vdso_datastore.h | 6 +++---
> lib/vdso/Kconfig | 6 +++---
> lib/vdso/Makefile | 2 +-
> 6 files changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig
> index d8d252325017..41ed648fcec9 100644
> --- a/arch/loongarch/Kconfig
> +++ b/arch/loongarch/Kconfig
> @@ -153,7 +153,6 @@ config LOONGARCH
> select HAVE_FUNCTION_GRAPH_TRACER
> select HAVE_FUNCTION_TRACER
> select HAVE_GCC_PLUGINS
> - select HAVE_GENERIC_VDSO
> select HAVE_HW_BREAKPOINT if PERF_EVENTS
> select HAVE_IOREMAP_PROT
> select HAVE_IRQ_EXIT_ON_IRQ_STACK
> @@ -213,6 +212,7 @@ config LOONGARCH
> select TRACE_IRQFLAGS_SUPPORT
> select USE_PERCPU_NUMA_NODE_ID
> select USER_STACKTRACE_SUPPORT
> + select VDSO_DATASTORE
> select VDSO_GETRANDOM
> select ZONE_DMA32 if 64BIT
>
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index f7ce5fff81f0..c6bc2cd6cc83 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -256,7 +256,6 @@ config PPC
> select HAVE_FUNCTION_GRAPH_TRACER
> select HAVE_FUNCTION_TRACER if !COMPILE_TEST && (PPC64 || (PPC32 && CC_IS_GCC))
> select HAVE_GCC_PLUGINS
> - select HAVE_GENERIC_VDSO
> select HAVE_HARDLOCKUP_DETECTOR_ARCH if PPC_BOOK3S_64 && SMP
> select HAVE_HARDLOCKUP_DETECTOR_PERF if PERF_EVENTS && HAVE_PERF_EVENTS_NMI
> select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx)
> @@ -328,6 +327,7 @@ config PPC
> select SYSCTL_EXCEPTION_TRACE
> select THREAD_INFO_IN_TASK
> select TRACE_IRQFLAGS_SUPPORT
> + select VDSO_DATASTORE
> select VDSO_GETRANDOM
> #
> # Please keep this list sorted alphabetically.
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index 9aa8c4df0cd8..019fb4799943 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -171,7 +171,6 @@ config RISCV
> select HAVE_FUNCTION_ARG_ACCESS_API
> select HAVE_FUNCTION_ERROR_INJECTION
> select HAVE_GCC_PLUGINS
> - select HAVE_GENERIC_VDSO if MMU
> select HAVE_IRQ_TIME_ACCOUNTING
> select HAVE_KERNEL_BZIP2 if !EFI_ZBOOT
> select HAVE_KERNEL_GZIP if !EFI_ZBOOT
> @@ -227,6 +226,7 @@ config RISCV
> select THREAD_INFO_IN_TASK
> select TRACE_IRQFLAGS_SUPPORT
> select UACCESS_MEMCPY if !MMU
> + select VDSO_DATASTORE if MMU
> select VDSO_GETRANDOM if MMU && 64BIT
> select USER_STACKTRACE_SUPPORT
> select ZONE_DMA32 if 64BIT
> diff --git a/include/linux/vdso_datastore.h b/include/linux/vdso_datastore.h
> index 3dfba9502d78..13b01baf3497 100644
> --- a/include/linux/vdso_datastore.h
> +++ b/include/linux/vdso_datastore.h
> @@ -7,10 +7,10 @@
> extern const struct vm_special_mapping vdso_vvar_mapping;
> struct vm_area_struct *vdso_install_vvar_mapping(struct mm_struct *mm, unsigned long addr);
>
> -#ifdef CONFIG_HAVE_GENERIC_VDSO
> +#ifdef CONFIG_VDSO_DATASTORE
> void __init vdso_setup_data_pages(void);
> -#else /* !CONFIG_HAVE_GENERIC_VDSO */
> +#else /* !CONFIG_VDSO_DATASTORE */
> static inline void vdso_setup_data_pages(void) { }
> -#endif /* CONFIG_HAVE_GENERIC_VDSO */
> +#endif /* CONFIG_VDSO_DATASTORE */
>
> #endif /* _LINUX_VDSO_DATASTORE_H */
> diff --git a/lib/vdso/Kconfig b/lib/vdso/Kconfig
> index eedb04974fd5..597f5f0f9681 100644
> --- a/lib/vdso/Kconfig
> +++ b/lib/vdso/Kconfig
> @@ -1,11 +1,11 @@
> # SPDX-License-Identifier: GPL-2.0
>
> -config HAVE_GENERIC_VDSO
> +config VDSO_DATASTORE
> bool
>
> config GENERIC_GETTIMEOFDAY
> bool
> - select HAVE_GENERIC_VDSO
> + select VDSO_DATASTORE
> help
> This is a generic implementation of gettimeofday vdso.
> Each architecture that enables this feature has to
> @@ -20,6 +20,6 @@ config GENERIC_VDSO_OVERFLOW_PROTECT
>
> config VDSO_GETRANDOM
> bool
> - select HAVE_GENERIC_VDSO
> + select VDSO_DATASTORE
> help
> Selected by architectures that support vDSO getrandom().
> diff --git a/lib/vdso/Makefile b/lib/vdso/Makefile
> index 405f743253d7..ac304def42d6 100644
> --- a/lib/vdso/Makefile
> +++ b/lib/vdso/Makefile
> @@ -1,3 +1,3 @@
> # SPDX-License-Identifier: GPL-2.0-only
>
> -obj-$(CONFIG_HAVE_GENERIC_VDSO) += datastore.o
> +obj-$(CONFIG_VDSO_DATASTORE) += datastore.o
>
--
Regards,
Vincenzo
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE
2026-07-09 7:28 ` [PATCH 6/6] vDSO: Rename HAVE_GENERIC_VDSO to VDSO_DATASTORE Thomas Weißschuh
2026-07-09 9:31 ` Vincenzo Frascino
@ 2026-07-09 11:10 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 15+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-07-09 11:10 UTC (permalink / raw)
To: Thomas Weißschuh, Andy Lutomirski, Thomas Gleixner,
Vincenzo Frascino, Thomas Bogendoerfer
Cc: linux-kernel, linux-mips
On 9/7/26 09:28, Thomas WeiÃschuh wrote:
> Over time the meaning of HAVE_GENERIC_VDSO has become off.
> Today it only controls the availability of the vDSO datastore.
>
> Rename the symbol to match its function.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
> ---
> arch/loongarch/Kconfig | 2 +-
> arch/powerpc/Kconfig | 2 +-
> arch/riscv/Kconfig | 2 +-
> include/linux/vdso_datastore.h | 6 +++---
> lib/vdso/Kconfig | 6 +++---
> lib/vdso/Makefile | 2 +-
> 6 files changed, 10 insertions(+), 10 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 15+ messages in thread