2024-01-04 10:43:33

by Andrew Jones

[permalink] [raw]
Subject: [PATCH] RISC-V: KVM: Require HAVE_KVM

KVM requires EVENTFD, which is selected by HAVE_KVM. Other KVM
supporting architectures select HAVE_KVM and then their KVM
Kconfigs ensure its there with a depends on HAVE_KVM. Make RISCV
consistent with that approach which fixes configs which have KVM
but not EVENTFD, as was discovered with a randconfig test.

Reported-by: Randy Dunlap <[email protected]>
Closes: https://lore.kernel.org/all/[email protected]/
Signed-off-by: Andrew Jones <[email protected]>
---
arch/riscv/Kconfig | 1 +
arch/riscv/kvm/Kconfig | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index a935a5f736b9..daba06a3b76f 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -128,6 +128,7 @@ config RISCV
select HAVE_KPROBES if !XIP_KERNEL
select HAVE_KPROBES_ON_FTRACE if !XIP_KERNEL
select HAVE_KRETPROBES if !XIP_KERNEL
+ select HAVE_KVM
# https://github.com/ClangBuiltLinux/linux/issues/1881
select HAVE_LD_DEAD_CODE_DATA_ELIMINATION if !LD_IS_LLD
select HAVE_MOVE_PMD
diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
index 1fd76aee3b71..36fa8ec9e5ba 100644
--- a/arch/riscv/kvm/Kconfig
+++ b/arch/riscv/kvm/Kconfig
@@ -19,7 +19,7 @@ if VIRTUALIZATION

config KVM
tristate "Kernel-based Virtual Machine (KVM) support (EXPERIMENTAL)"
- depends on RISCV_SBI && MMU
+ depends on HAVE_KVM && RISCV_SBI && MMU
select HAVE_KVM_IRQCHIP
select HAVE_KVM_IRQ_ROUTING
select HAVE_KVM_MSI
--
2.43.0



2024-01-04 10:52:23

by Andrew Jones

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: KVM: Require HAVE_KVM


This applies to linux-next, but I forgot to append -next to the PATCH
prefix.

On Thu, Jan 04, 2024 at 11:43:08AM +0100, Andrew Jones wrote:
> KVM requires EVENTFD, which is selected by HAVE_KVM. Other KVM
> supporting architectures select HAVE_KVM and then their KVM
> Kconfigs ensure its there with a depends on HAVE_KVM. Make RISCV
> consistent with that approach which fixes configs which have KVM
> but not EVENTFD, as was discovered with a randconfig test.
>
> Reported-by: Randy Dunlap <[email protected]>
> Closes: https://lore.kernel.org/all/[email protected]/

I think powerpc may need a patch like this as well, since I don't see
anything ensuring EVENTFD is selected for it anymore either.

Thanks,
drew

> Signed-off-by: Andrew Jones <[email protected]>
> ---
> arch/riscv/Kconfig | 1 +
> arch/riscv/kvm/Kconfig | 2 +-
> 2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index a935a5f736b9..daba06a3b76f 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -128,6 +128,7 @@ config RISCV
> select HAVE_KPROBES if !XIP_KERNEL
> select HAVE_KPROBES_ON_FTRACE if !XIP_KERNEL
> select HAVE_KRETPROBES if !XIP_KERNEL
> + select HAVE_KVM
> # https://github.com/ClangBuiltLinux/linux/issues/1881
> select HAVE_LD_DEAD_CODE_DATA_ELIMINATION if !LD_IS_LLD
> select HAVE_MOVE_PMD
> diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
> index 1fd76aee3b71..36fa8ec9e5ba 100644
> --- a/arch/riscv/kvm/Kconfig
> +++ b/arch/riscv/kvm/Kconfig
> @@ -19,7 +19,7 @@ if VIRTUALIZATION
>
> config KVM
> tristate "Kernel-based Virtual Machine (KVM) support (EXPERIMENTAL)"
> - depends on RISCV_SBI && MMU
> + depends on HAVE_KVM && RISCV_SBI && MMU
> select HAVE_KVM_IRQCHIP
> select HAVE_KVM_IRQ_ROUTING
> select HAVE_KVM_MSI
> --
> 2.43.0
>

2024-01-04 11:08:26

by Alexandre Ghiti

[permalink] [raw]
Subject: Re: [PATCH] RISC-V: KVM: Require HAVE_KVM

On 04/01/2024 11:52, Andrew Jones wrote:
> This applies to linux-next, but I forgot to append -next to the PATCH
> prefix.


Shoudn't this go to -fixes instead? With a Fixes tag?


>
> On Thu, Jan 04, 2024 at 11:43:08AM +0100, Andrew Jones wrote:
>> KVM requires EVENTFD, which is selected by HAVE_KVM. Other KVM
>> supporting architectures select HAVE_KVM and then their KVM
>> Kconfigs ensure its there with a depends on HAVE_KVM. Make RISCV
>> consistent with that approach which fixes configs which have KVM
>> but not EVENTFD, as was discovered with a randconfig test.
>>
>> Reported-by: Randy Dunlap <[email protected]>
>> Closes: https://lore.kernel.org/all/[email protected]/
> I think powerpc may need a patch like this as well, since I don't see
> anything ensuring EVENTFD is selected for it anymore either.
>
> Thanks,
> drew
>
>> Signed-off-by: Andrew Jones <[email protected]>
>> ---
>> arch/riscv/Kconfig | 1 +
>> arch/riscv/kvm/Kconfig | 2 +-
>> 2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
>> index a935a5f736b9..daba06a3b76f 100644
>> --- a/arch/riscv/Kconfig
>> +++ b/arch/riscv/Kconfig
>> @@ -128,6 +128,7 @@ config RISCV
>> select HAVE_KPROBES if !XIP_KERNEL
>> select HAVE_KPROBES_ON_FTRACE if !XIP_KERNEL
>> select HAVE_KRETPROBES if !XIP_KERNEL
>> + select HAVE_KVM
>> # https://github.com/ClangBuiltLinux/linux/issues/1881
>> select HAVE_LD_DEAD_CODE_DATA_ELIMINATION if !LD_IS_LLD
>> select HAVE_MOVE_PMD
>> diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
>> index 1fd76aee3b71..36fa8ec9e5ba 100644
>> --- a/arch/riscv/kvm/Kconfig
>> +++ b/arch/riscv/kvm/Kconfig
>> @@ -19,7 +19,7 @@ if VIRTUALIZATION
>>
>> config KVM
>> tristate "Kernel-based Virtual Machine (KVM) support (EXPERIMENTAL)"
>> - depends on RISCV_SBI && MMU
>> + depends on HAVE_KVM && RISCV_SBI && MMU
>> select HAVE_KVM_IRQCHIP
>> select HAVE_KVM_IRQ_ROUTING
>> select HAVE_KVM_MSI
>> --
>> 2.43.0
>>
> _______________________________________________
> linux-riscv mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-riscv

2024-01-04 11:21:24

by Andrew Jones

[permalink] [raw]
Subject: Re: Re: [PATCH] RISC-V: KVM: Require HAVE_KVM

On Thu, Jan 04, 2024 at 12:07:51PM +0100, Alexandre Ghiti wrote:
> On 04/01/2024 11:52, Andrew Jones wrote:
> > This applies to linux-next, but I forgot to append -next to the PATCH
> > prefix.
>
>
> Shoudn't this go to -fixes instead? With a Fixes tag?

I'm not sure how urgent it is since it's a randconfig thing, but if we
think it deserves the -fixes track then I can do that. The Fixes tag isn't
super easy to select since, while it seems like it should be 8132d887a702
("KVM: remove CONFIG_HAVE_KVM_EVENTFD"), it could also be 99cdc6c18c2d
("RISC-V: Add initial skeletal KVM support").

I'll leave both the urgency decision and the Fixes tag selection up to
the maintainers. Anup? Paolo?

Thanks,
drew

2024-01-04 11:33:36

by Anup Patel

[permalink] [raw]
Subject: Re: Re: [PATCH] RISC-V: KVM: Require HAVE_KVM

On Thu, Jan 4, 2024 at 4:51 PM Andrew Jones <[email protected]> wrote:
>
> On Thu, Jan 04, 2024 at 12:07:51PM +0100, Alexandre Ghiti wrote:
> > On 04/01/2024 11:52, Andrew Jones wrote:
> > > This applies to linux-next, but I forgot to append -next to the PATCH
> > > prefix.
> >
> >
> > Shoudn't this go to -fixes instead? With a Fixes tag?
>
> I'm not sure how urgent it is since it's a randconfig thing, but if we
> think it deserves the -fixes track then I can do that. The Fixes tag isn't
> super easy to select since, while it seems like it should be 8132d887a702
> ("KVM: remove CONFIG_HAVE_KVM_EVENTFD"), it could also be 99cdc6c18c2d
> ("RISC-V: Add initial skeletal KVM support").
>
> I'll leave both the urgency decision and the Fixes tag selection up to
> the maintainers. Anup? Paolo?

Lets add

Fixes: 99cdc6c18c2d ("RISC-V: Add initial skeletal KVM support")

Regards,
Anup