Messages in this thread |  | | From | Huacai Chen <> | | Date | Fri, 8 May 2026 11:11:21 +0800 | | Subject | Re: [PATCH] LoongArch: KVM: Move some variable declaration to file paravirt.h |
| |
On Fri, May 8, 2026 at 11:08 AM Bibo Mao <maobibo@loongson.cn> wrote: > > > > On 2026/5/8 上午10:56, Huacai Chen wrote: > > Hi, Bibo, > > > > On Fri, May 8, 2026 at 9:30 AM Bibo Mao <maobibo@loongson.cn> wrote: > >> > >> Some variables relative with paravirt feature are declared in header file > >> asm/qspinlock.h, however this file can be included only when option > >> CONFIG_SMP is on. There is compiling warning if CONFIG_SMP is off since > >> it is not declared. > >> > >> Move these variable declaration to header file asm/paravirt.h to avoid > >> compiling warning. > > Have you reproduced the warning? I cannot reproduce it in my > > environment with the config file from lkp report, so I also cannot > > confirm whether it is fixed. > yes, I can reproduce this and it is fixed. The warning is reported from > sparse tool, rather than LLVM. > > > > Another question: > > Is paravirt.h a better place than kvm_para.h? > en, here kvm_para.h seems better, will send V2 version in next time. Frankly, I don't know the difference between the two files. kvm_para.h is kvm specific and paravirt.h is generic? Or kvm_para.h is the hypervisor side and paravirt.h is the guest side?
Huacai
> > Regards > Bibo Mao > > > > > Huacai > > > >> > >> Fixes: c43dce6f13fb ("LoongArch: KVM: Make vcpu_is_preempted() as a macro rather than function") > >> Reported-by: kernel test robot <lkp@intel.com> > >> Closes: https://lore.kernel.org/oe-kbuild-all/202605061313.O8Hswm2b-lkp@intel.com/ > >> Signed-off-by: Bibo Mao <maobibo@loongson.cn> > >> --- > >> arch/loongarch/include/asm/paravirt.h | 4 ++++ > >> arch/loongarch/include/asm/qspinlock.h | 5 +---- > >> 2 files changed, 5 insertions(+), 4 deletions(-) > >> > >> diff --git a/arch/loongarch/include/asm/paravirt.h b/arch/loongarch/include/asm/paravirt.h > >> index 0111f0ad5f73..dbc64908017f 100644 > >> --- a/arch/loongarch/include/asm/paravirt.h > >> +++ b/arch/loongarch/include/asm/paravirt.h > >> @@ -3,6 +3,10 @@ > >> #define _ASM_LOONGARCH_PARAVIRT_H > >> > >> #ifdef CONFIG_PARAVIRT > >> +#include <linux/jump_label.h> > >> +DECLARE_STATIC_KEY_FALSE(virt_preempt_key); > >> +DECLARE_STATIC_KEY_FALSE(virt_spin_lock_key); > >> +DECLARE_PER_CPU(struct kvm_steal_time, steal_time); > >> > >> int __init pv_ipi_init(void); > >> int __init pv_time_init(void); > >> diff --git a/arch/loongarch/include/asm/qspinlock.h b/arch/loongarch/include/asm/qspinlock.h > >> index 0ee15b3b3937..fbfc6be82f26 100644 > >> --- a/arch/loongarch/include/asm/qspinlock.h > >> +++ b/arch/loongarch/include/asm/qspinlock.h > >> @@ -3,12 +3,9 @@ > >> #define _ASM_LOONGARCH_QSPINLOCK_H > >> > >> #include <asm/kvm_para.h> > >> -#include <linux/jump_label.h> > >> +#include <asm/paravirt.h> > >> > >> #ifdef CONFIG_PARAVIRT > >> -DECLARE_STATIC_KEY_FALSE(virt_preempt_key); > >> -DECLARE_STATIC_KEY_FALSE(virt_spin_lock_key); > >> -DECLARE_PER_CPU(struct kvm_steal_time, steal_time); > >> > >> #define virt_spin_lock virt_spin_lock > >> > >> > >> base-commit: 74fe02ce122a6103f207d29fafc8b3a53de6abaf > >> -- > >> 2.39.3 > >> >
|  |