]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm/paravirt: Use common code for paravirt_steal_clock()
authorJuergen Gross <jgross@suse.com>
Mon, 5 Jan 2026 11:05:06 +0000 (12:05 +0100)
committerBorislav Petkov (AMD) <bp@alien8.de>
Mon, 12 Jan 2026 14:57:23 +0000 (15:57 +0100)
Remove the arch-specific variant of paravirt_steal_clock() and use
the common one instead.

This allows to remove paravirt.c and paravirt.h from arch/arm.

Until all archs supporting Xen have been switched to the common code
of paravirt_steal_clock(), drivers/xen/time.c needs to include
asm/paravirt.h for those archs, while this is not necessary for arm
any longer.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://patch.msgid.link/20260105110520.21356-8-jgross@suse.com
arch/arm/Kconfig
arch/arm/include/asm/paravirt.h [deleted file]
arch/arm/kernel/Makefile
arch/arm/kernel/paravirt.c [deleted file]
drivers/xen/time.c

index fa83c040ee2d402d09442c58bf168e6e476b3680..fc9b5b7016c37ed8219707e4c2ae09601d521508 100644 (file)
@@ -1320,6 +1320,7 @@ config UACCESS_WITH_MEMCPY
 
 config PARAVIRT
        bool "Enable paravirtualization code"
+       select HAVE_PV_STEAL_CLOCK_GEN
        help
          This changes the kernel so it can modify itself when it is run
          under a hypervisor, potentially improving performance significantly
diff --git a/arch/arm/include/asm/paravirt.h b/arch/arm/include/asm/paravirt.h
deleted file mode 100644 (file)
index 69da4bd..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-#ifndef _ASM_ARM_PARAVIRT_H
-#define _ASM_ARM_PARAVIRT_H
-
-#ifdef CONFIG_PARAVIRT
-#include <linux/static_call_types.h>
-
-u64 dummy_steal_clock(int cpu);
-
-DECLARE_STATIC_CALL(pv_steal_clock, dummy_steal_clock);
-
-static inline u64 paravirt_steal_clock(int cpu)
-{
-       return static_call(pv_steal_clock)(cpu);
-}
-#endif
-
-#endif
index afc9de7ef9a1adf8582399c98c5d79388248f824..b36cf0cfd4a765088d96b8e8c92cde42e3d47fb0 100644 (file)
@@ -83,7 +83,6 @@ AFLAGS_iwmmxt.o                       := -Wa,-mcpu=iwmmxt
 obj-$(CONFIG_ARM_CPU_TOPOLOGY)  += topology.o
 obj-$(CONFIG_VDSO)             += vdso.o
 obj-$(CONFIG_EFI)              += efi.o
-obj-$(CONFIG_PARAVIRT) += paravirt.o
 
 obj-y                  += head$(MMUEXT).o
 obj-$(CONFIG_DEBUG_LL) += debug.o
diff --git a/arch/arm/kernel/paravirt.c b/arch/arm/kernel/paravirt.c
deleted file mode 100644 (file)
index 3895a55..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- *
- * Copyright (C) 2013 Citrix Systems
- *
- * Author: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
- */
-
-#include <linux/export.h>
-#include <linux/jump_label.h>
-#include <linux/types.h>
-#include <linux/static_call.h>
-#include <asm/paravirt.h>
-
-static u64 native_steal_clock(int cpu)
-{
-       return 0;
-}
-
-DEFINE_STATIC_CALL(pv_steal_clock, native_steal_clock);
index d360ded2ef39f415efa93c8715ee7f597c8ece44..53b12f5ac465393b58afe2d8e1413df9b3e82bdb 100644 (file)
@@ -10,7 +10,9 @@
 #include <linux/static_call.h>
 #include <linux/sched/cputime.h>
 
+#ifndef CONFIG_HAVE_PV_STEAL_CLOCK_GEN
 #include <asm/paravirt.h>
+#endif
 #include <asm/xen/hypervisor.h>
 #include <asm/xen/hypercall.h>