diff mbox series

[V3,04/14] KVM: MIPS: Add EVENTFD support which is needed by VHOST

Message ID 1588500367-1056-5-git-send-email-chenhc@lemote.com
State New
Headers show
Series KVM: MIPS: Add Loongson-3 support (Host Side) | expand

Commit Message

Huacai Chen May 3, 2020, 10:05 a.m. UTC
Add EVENTFD support for KVM/MIPS, which is needed by VHOST. Tested on
Loongson-3 platform.

Signed-off-by: Huacai Chen <chenhc@lemote.com>
Co-developed-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
---
 arch/mips/kvm/Kconfig     | 1 +
 arch/mips/kvm/Makefile    | 2 +-
 arch/mips/kvm/trap_emul.c | 3 +++
 arch/mips/kvm/vz.c        | 3 +++
 4 files changed, 8 insertions(+), 1 deletion(-)

Comments

Aleksandar Markovic May 8, 2020, 9:08 a.m. UTC | #1
нед, 3. мај 2020. у 12:09 Huacai Chen <chenhc@lemote.com> је написао/ла:
>
> Add EVENTFD support for KVM/MIPS, which is needed by VHOST. Tested on
> Loongson-3 platform.
>
> Signed-off-by: Huacai Chen <chenhc@lemote.com>
> Co-developed-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
> ---

Perhaps this patch needs rebasing to land cleanly into master.

But, in general, for what is worth:

Reviewed-by: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>


>  arch/mips/kvm/Kconfig     | 1 +
>  arch/mips/kvm/Makefile    | 2 +-
>  arch/mips/kvm/trap_emul.c | 3 +++
>  arch/mips/kvm/vz.c        | 3 +++
>  4 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/arch/mips/kvm/Kconfig b/arch/mips/kvm/Kconfig
> index b91d145..d697752 100644
> --- a/arch/mips/kvm/Kconfig
> +++ b/arch/mips/kvm/Kconfig
> @@ -22,6 +22,7 @@ config KVM
>         select EXPORT_UASM
>         select PREEMPT_NOTIFIERS
>         select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> +       select HAVE_KVM_EVENTFD
>         select HAVE_KVM_VCPU_ASYNC_IOCTL
>         select KVM_MMIO
>         select MMU_NOTIFIER
> diff --git a/arch/mips/kvm/Makefile b/arch/mips/kvm/Makefile
> index 01affc1..0a3cef6 100644
> --- a/arch/mips/kvm/Makefile
> +++ b/arch/mips/kvm/Makefile
> @@ -2,7 +2,7 @@
>  # Makefile for KVM support for MIPS
>  #
>
> -common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o)
> +common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o eventfd.o)
>
>  EXTRA_CFLAGS += -Ivirt/kvm -Iarch/mips/kvm
>
> diff --git a/arch/mips/kvm/trap_emul.c b/arch/mips/kvm/trap_emul.c
> index 5a11e83..f464506b 100644
> --- a/arch/mips/kvm/trap_emul.c
> +++ b/arch/mips/kvm/trap_emul.c
> @@ -529,6 +529,9 @@ static int kvm_trap_emul_check_extension(struct kvm *kvm, long ext)
>         case KVM_CAP_MIPS_TE:
>                 r = 1;
>                 break;
> +       case KVM_CAP_IOEVENTFD:
> +               r = 1;
> +               break;
>         default:
>                 r = 0;
>                 break;
> diff --git a/arch/mips/kvm/vz.c b/arch/mips/kvm/vz.c
> index dde2088..17932ab 100644
> --- a/arch/mips/kvm/vz.c
> +++ b/arch/mips/kvm/vz.c
> @@ -2927,6 +2927,9 @@ static int kvm_vz_check_extension(struct kvm *kvm, long ext)
>                 r = 2;
>                 break;
>  #endif
> +       case KVM_CAP_IOEVENTFD:
> +               r = 1;
> +               break;
>         default:
>                 r = 0;
>                 break;
> --
> 2.7.0
>
Aleksandar Markovic May 8, 2020, 10:08 a.m. UTC | #2
пет, 8. мај 2020. у 11:08 Aleksandar Markovic
<aleksandar.qemu.devel@gmail.com> је написао/ла:
>
> нед, 3. мај 2020. у 12:09 Huacai Chen <chenhc@lemote.com> је написао/ла:
> >
> > Add EVENTFD support for KVM/MIPS, which is needed by VHOST. Tested on
> > Loongson-3 platform.
> >
> > Signed-off-by: Huacai Chen <chenhc@lemote.com>
> > Co-developed-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
> > ---
>
> Perhaps this patch needs rebasing to land cleanly into master.
>

Or, maybe, my tree was out-of-date. Sorry if that was the case.

Yours,
Aleksandar

> But, in general, for what is worth:
>
> Reviewed-by: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
>
>
> >  arch/mips/kvm/Kconfig     | 1 +
> >  arch/mips/kvm/Makefile    | 2 +-
> >  arch/mips/kvm/trap_emul.c | 3 +++
> >  arch/mips/kvm/vz.c        | 3 +++
> >  4 files changed, 8 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/mips/kvm/Kconfig b/arch/mips/kvm/Kconfig
> > index b91d145..d697752 100644
> > --- a/arch/mips/kvm/Kconfig
> > +++ b/arch/mips/kvm/Kconfig
> > @@ -22,6 +22,7 @@ config KVM
> >         select EXPORT_UASM
> >         select PREEMPT_NOTIFIERS
> >         select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> > +       select HAVE_KVM_EVENTFD
> >         select HAVE_KVM_VCPU_ASYNC_IOCTL
> >         select KVM_MMIO
> >         select MMU_NOTIFIER
> > diff --git a/arch/mips/kvm/Makefile b/arch/mips/kvm/Makefile
> > index 01affc1..0a3cef6 100644
> > --- a/arch/mips/kvm/Makefile
> > +++ b/arch/mips/kvm/Makefile
> > @@ -2,7 +2,7 @@
> >  # Makefile for KVM support for MIPS
> >  #
> >
> > -common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o)
> > +common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o eventfd.o)
> >
> >  EXTRA_CFLAGS += -Ivirt/kvm -Iarch/mips/kvm
> >
> > diff --git a/arch/mips/kvm/trap_emul.c b/arch/mips/kvm/trap_emul.c
> > index 5a11e83..f464506b 100644
> > --- a/arch/mips/kvm/trap_emul.c
> > +++ b/arch/mips/kvm/trap_emul.c
> > @@ -529,6 +529,9 @@ static int kvm_trap_emul_check_extension(struct kvm *kvm, long ext)
> >         case KVM_CAP_MIPS_TE:
> >                 r = 1;
> >                 break;
> > +       case KVM_CAP_IOEVENTFD:
> > +               r = 1;
> > +               break;
> >         default:
> >                 r = 0;
> >                 break;
> > diff --git a/arch/mips/kvm/vz.c b/arch/mips/kvm/vz.c
> > index dde2088..17932ab 100644
> > --- a/arch/mips/kvm/vz.c
> > +++ b/arch/mips/kvm/vz.c
> > @@ -2927,6 +2927,9 @@ static int kvm_vz_check_extension(struct kvm *kvm, long ext)
> >                 r = 2;
> >                 break;
> >  #endif
> > +       case KVM_CAP_IOEVENTFD:
> > +               r = 1;
> > +               break;
> >         default:
> >                 r = 0;
> >                 break;
> > --
> > 2.7.0
> >
diff mbox series

Patch

diff --git a/arch/mips/kvm/Kconfig b/arch/mips/kvm/Kconfig
index b91d145..d697752 100644
--- a/arch/mips/kvm/Kconfig
+++ b/arch/mips/kvm/Kconfig
@@ -22,6 +22,7 @@  config KVM
 	select EXPORT_UASM
 	select PREEMPT_NOTIFIERS
 	select KVM_GENERIC_DIRTYLOG_READ_PROTECT
+	select HAVE_KVM_EVENTFD
 	select HAVE_KVM_VCPU_ASYNC_IOCTL
 	select KVM_MMIO
 	select MMU_NOTIFIER
diff --git a/arch/mips/kvm/Makefile b/arch/mips/kvm/Makefile
index 01affc1..0a3cef6 100644
--- a/arch/mips/kvm/Makefile
+++ b/arch/mips/kvm/Makefile
@@ -2,7 +2,7 @@ 
 # Makefile for KVM support for MIPS
 #
 
-common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o)
+common-objs-y = $(addprefix ../../../virt/kvm/, kvm_main.o coalesced_mmio.o eventfd.o)
 
 EXTRA_CFLAGS += -Ivirt/kvm -Iarch/mips/kvm
 
diff --git a/arch/mips/kvm/trap_emul.c b/arch/mips/kvm/trap_emul.c
index 5a11e83..f464506b 100644
--- a/arch/mips/kvm/trap_emul.c
+++ b/arch/mips/kvm/trap_emul.c
@@ -529,6 +529,9 @@  static int kvm_trap_emul_check_extension(struct kvm *kvm, long ext)
 	case KVM_CAP_MIPS_TE:
 		r = 1;
 		break;
+	case KVM_CAP_IOEVENTFD:
+		r = 1;
+		break;
 	default:
 		r = 0;
 		break;
diff --git a/arch/mips/kvm/vz.c b/arch/mips/kvm/vz.c
index dde2088..17932ab 100644
--- a/arch/mips/kvm/vz.c
+++ b/arch/mips/kvm/vz.c
@@ -2927,6 +2927,9 @@  static int kvm_vz_check_extension(struct kvm *kvm, long ext)
 		r = 2;
 		break;
 #endif
+	case KVM_CAP_IOEVENTFD:
+		r = 1;
+		break;
 	default:
 		r = 0;
 		break;