Re: [PATCH v1 3/6] soc: mediatek: virt: geniezone: Introduce GenieZone hypervisor support

From: Yi-De Wu (吳一德)
Date: Fri May 12 2023 - 03:29:31 EST


On Fri, 2023-04-14 at 10:51 +0200, Krzysztof Kozlowski wrote:
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
>
>
> On 14/04/2023 10:43, Yi-De Wu (吳一德) wrote:
> > On Thu, 2023-04-13 at 19:08 +0200, Matthias Brugger wrote:
> > > External email : Please do not click links or open attachments
> > > until
> > > you have verified the sender or the content.
> > >
> > >
> > > On 13/04/2023 14:55, Krzysztof Kozlowski wrote:
> > > > On 13/04/2023 11:07, Yi-De Wu wrote:
> > > > > From: "Yingshiuan Pan" <yingshiuan.pan@xxxxxxxxxxxx>
> > > > >
> > > > > GenieZone is MediaTek proprietary hypervisor solution, and it
> > > > > is
> > > > > running
> > > > > in EL2 stand alone as a type-I hypervisor. This patch exports
> > > > > a
> > > > > set of
> > > > > ioctl interfaces for userspace VMM (e.g., crosvm) to operate
> > > > > guest VMs
> > > > > lifecycle (creation, running, and destroy) on GenieZone.
> > > > >
> > > > > Signed-off-by: Yingshiuan Pan <yingshiuan.pan@xxxxxxxxxxxx>
> > > > > Signed-off-by: Yi-De Wu <yi-de.wu@xxxxxxxxxxxx>
> > > > > ---
> > > > > arch/arm64/include/uapi/asm/gzvm_arch.h | 79 ++++
> > > > > drivers/soc/mediatek/Kconfig | 2 +
> > > > > drivers/soc/mediatek/Makefile | 1 +
> > > > > drivers/soc/mediatek/virt/geniezone/Kconfig | 17 +
> > > >
> > > > Hypervisor drivers do not go to soc. Stop shoving there
> > > > everything
> > > > from
> > > > your downstream. Find appropriate directory, e.g. maybe
> > > > drivers/virt.
> > >
> > > Acked, what is the reason you want to add this to drivers/soc
> > > instead
> > > of
> > > drivers/virt?
> > >
> > > Regards,
> > > Matthias
> > >
> >
> > Noted. We would take your advice and move it from
> > drivers/soc/mediatek/virt to /drivers/virt on next version.
> >
> > The reason we put it under our soc/ is that the drver is highly
> > propietary for mediatek's product and for aarch64 only. Maybe it's
> > not
> > general enough to put in under /drivers/virt.
>
> If virt folks reject the driver, because it is highly proprietary,
> then
> it is not suitable for soc/mediatek either.
>
> Your argument is actually not helping you. It's rather a proof that
> this
> driver might not be suitable for Linux kernel at all.
>
> >
>
>
https://urldefense.com/v3/__https://android-review.googlesource.com/c/kernel/common/*/2447547/1..2/drivers/virt/geniezone/gzvm.h*b91__;KyM!!CTRNKA9wMg0ARbw!jJ0FRv_s6iLuc1rp4RPApkktGpIarf5qAVE0_Dq6X_KCq_283Kh5DKW6jlMyDfaHNFr1DglKyRKq1JcE4XTdQjw9XGz_4Q$
>
> I don't see there anything suggesting moving to soc/mediatek. Comment
> from Trilok (+Cc) suggests that your code is simply not portable.
> Write
> code which is portable and properly organized.
>
> Best regards,
> Krzysztof
>

We've already moved most of all works from
drivers/soc/mediatek/virt/geniezone to drivers/virt/geniezone and
arch/arm64/geniezone for general and architecture dependent
implementations respectively. And hopefully the code could be reviewd
out there.