From: Shameerali Kolothum Thodi via <qemu-devel@nongnu.org>
To: "eric.auger@redhat.com" <eric.auger@redhat.com>,
"qemu-arm@nongnu.org" <qemu-arm@nongnu.org>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Cc: "peter.maydell@linaro.org" <peter.maydell@linaro.org>,
"jgg@nvidia.com" <jgg@nvidia.com>,
"nicolinc@nvidia.com" <nicolinc@nvidia.com>,
"ddutile@redhat.com" <ddutile@redhat.com>,
"berrange@redhat.com" <berrange@redhat.com>,
"nathanc@nvidia.com" <nathanc@nvidia.com>,
"mochs@nvidia.com" <mochs@nvidia.com>,
"smostafa@google.com" <smostafa@google.com>,
Linuxarm <linuxarm@huawei.com>,
"Wangzhou (B)" <wangzhou1@hisilicon.com>,
jiangkunkun <jiangkunkun@huawei.com>,
"Jonathan Cameron" <jonathan.cameron@huawei.com>,
"zhangfei.gao@linaro.org" <zhangfei.gao@linaro.org>
Subject: RE: [RFC PATCH v2 04/20] hw/arm/virt: Add support for smmuv3-accel
Date: Wed, 12 Mar 2025 16:22:14 +0000 [thread overview]
Message-ID: <5d894a546d3f4081ac2cfe98bd2ea612@huawei.com> (raw)
In-Reply-To: <5b29ea01-1b86-4b48-a769-14986751a0f1@redhat.com>
> -----Original Message-----
> From: qemu-devel-
> bounces+shameerali.kolothum.thodi=huawei.com@nongnu.org <qemu-
> devel-bounces+shameerali.kolothum.thodi=huawei.com@nongnu.org> On
> Behalf Of Eric Auger
> Sent: Wednesday, March 12, 2025 4:13 PM
> To: Shameerali Kolothum Thodi
> <shameerali.kolothum.thodi@huawei.com>; qemu-arm@nongnu.org;
> qemu-devel@nongnu.org
> Cc: peter.maydell@linaro.org; jgg@nvidia.com; nicolinc@nvidia.com;
> ddutile@redhat.com; berrange@redhat.com; nathanc@nvidia.com;
> mochs@nvidia.com; smostafa@google.com; Linuxarm
> <linuxarm@huawei.com>; Wangzhou (B) <wangzhou1@hisilicon.com>;
> jiangkunkun <jiangkunkun@huawei.com>; Jonathan Cameron
> <jonathan.cameron@huawei.com>; zhangfei.gao@linaro.org
> Subject: Re: [RFC PATCH v2 04/20] hw/arm/virt: Add support for smmuv3-
> accel
>
> Hi Shameer,
>
>
> On 3/12/25 4:46 PM, Shameerali Kolothum Thodi wrote:
> > Hi Eric,
> >
> >> -----Original Message-----
> >> From: qemu-devel-
> >> bounces+shameerali.kolothum.thodi=huawei.com@nongnu.org <qemu-
> >> devel-bounces+shameerali.kolothum.thodi=huawei.com@nongnu.org>
> On
> >> Behalf Of Eric Auger
> >> Sent: Wednesday, March 12, 2025 3:36 PM
> >> To: Shameerali Kolothum Thodi
> >> <shameerali.kolothum.thodi@huawei.com>; qemu-arm@nongnu.org;
> >> qemu-devel@nongnu.org
> >> Cc: peter.maydell@linaro.org; jgg@nvidia.com; nicolinc@nvidia.com;
> >> ddutile@redhat.com; berrange@redhat.com; nathanc@nvidia.com;
> >> mochs@nvidia.com; smostafa@google.com; Linuxarm
> >> <linuxarm@huawei.com>; Wangzhou (B) <wangzhou1@hisilicon.com>;
> >> jiangkunkun <jiangkunkun@huawei.com>; Jonathan Cameron
> >> <jonathan.cameron@huawei.com>; zhangfei.gao@linaro.org
> >> Subject: Re: [RFC PATCH v2 04/20] hw/arm/virt: Add support for
> >> smmuv3- accel
> >>
> >> Hi Shameer,
> >>
> >>
> >> On 3/11/25 3:10 PM, Shameer Kolothum wrote:
> >>> Allow cold-plug smmuv3-accel to virt If the machine wide smmuv3 is
> >>> not specified.
> >>>
> >>> No FDT support is added for now.
> >>>
> >>> Signed-off-by: Shameer Kolothum
> >> <shameerali.kolothum.thodi@huawei.com>
> >>> ---
> >>> hw/arm/virt.c | 12 ++++++++++++
> >>> hw/core/sysbus-fdt.c | 1 +
> >>> include/hw/arm/virt.h | 1 +
> >>> 3 files changed, 14 insertions(+)
> >>>
> >>> diff --git a/hw/arm/virt.c b/hw/arm/virt.c index
> >>> 4a5a9666e9..84a323da55 100644
> >>> --- a/hw/arm/virt.c
> >>> +++ b/hw/arm/virt.c
> >>> @@ -73,6 +73,7 @@
> >>> #include "qobject/qlist.h"
> >>> #include "standard-headers/linux/input.h"
> >>> #include "hw/arm/smmuv3.h"
> >>> +#include "hw/arm/smmuv3-accel.h"
> >>> #include "hw/acpi/acpi.h"
> >>> #include "target/arm/cpu-qom.h"
> >>> #include "target/arm/internals.h"
> >>> @@ -2911,6 +2912,16 @@ static void
> >> virt_machine_device_plug_cb(HotplugHandler *hotplug_dev,
> >>> platform_bus_link_device(PLATFORM_BUS_DEVICE(vms-
> >>> platform_bus_dev),
> >>> SYS_BUS_DEVICE(dev));
> >>> }
> >>> + if (object_dynamic_cast(OBJECT(dev),
> >>> + TYPE_ARM_SMMUV3_ACCEL))
> >> {
> >>> + if (vms->iommu == VIRT_IOMMU_SMMUV3) {
> >> maybe just check whether it is != VIRT_IOMMU_NONE?
> >>> + error_setg(errp,
> >>> + "iommu=smmuv3 is already specified.
> >>> + can't create
> >> smmuv3-accel dev");
> >> I would clearly state "iommu=smmuv3 virt machine option is alreadt set"
> >> and use an error hint to say both are not compatible.
> >>> + return;
> >>> + }
> >>> + if (vms->iommu != VIRT_IOMMU_SMMUV3_ACCEL) {
> >>> + vms->iommu = VIRT_IOMMU_SMMUV3_ACCEL;
> >> I know there were quite a lot of dicussions on the 1st multi
> >> instantiation series related to the way we instanatiate that device
> >> and maybe I missed some blockers but why wouldn't we allow the
> >> instantiation of the legacy smmu device with -device too. I think
> >> this would be simpler for libvirt and we would somehow deprecate the
> >> machine option method? would that make a problem if you were to use
> >> -device smmu,accel or something alike?
> > Thanks for taking a look. I am just jumping on this one for now. Yes,
> > there were discussions around that. But I was not sure we concluded on
> > deprecating the machine option. So if I get you correctly the idea is,
> >
> > if we have,
> > -device smmuv3 it will instantiate the current machine wide smmuv3 and
> > for -device smmuv3,accel this device?
> yes that would be my preference.
Ok. I will look into that in my next respin. A quick question. Does qemu
DEVICE model support the differentiation like above easily? Or we have
to manage it with properties?
Any example device implementation like above already there?
Please let me know.
Thanks,
Shameer
next prev parent reply other threads:[~2025-03-12 16:22 UTC|newest]
Thread overview: 172+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-11 14:10 [RFC PATCH v2 00/20] hw/arm/virt: Add support for user-creatable accelerated SMMUv3 Shameer Kolothum via
2025-03-11 14:10 ` [RFC PATCH v2 01/20] backends/iommufd: Introduce iommufd_backend_alloc_viommu Shameer Kolothum via
2025-03-12 15:20 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 02/20] backends/iommufd: Introduce iommufd_vdev_alloc Shameer Kolothum via
2025-03-12 15:25 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 03/20] hw/arm/smmuv3-accel: Add initial infrastructure for smmuv3-accel device Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-11 20:13 ` Nicolin Chen
2025-03-12 15:15 ` Eric Auger
2025-03-17 17:54 ` Nicolin Chen
2025-03-17 18:07 ` Eric Auger
2025-03-17 19:10 ` Nicolin Chen
2025-03-17 19:24 ` Jason Gunthorpe
2025-03-17 20:19 ` Nicolin Chen
2025-03-18 9:50 ` Shameerali Kolothum Thodi via
2025-03-18 9:50 ` Shameerali Kolothum Thodi via
2025-03-18 18:31 ` Eric Auger
2025-03-18 19:13 ` Nicolin Chen
2025-03-18 21:22 ` Donald Dutile
2025-03-19 0:23 ` Jason Gunthorpe
2025-03-19 2:15 ` Donald Dutile
2025-03-19 17:00 ` Eric Auger
2025-03-19 17:12 ` Shameerali Kolothum Thodi via
2025-03-19 17:12 ` Shameerali Kolothum Thodi via
2025-03-19 17:38 ` Eric Auger
2025-03-21 0:55 ` Donald Dutile
2025-03-19 17:04 ` Eric Auger
2025-03-21 0:54 ` Donald Dutile
2025-03-24 14:52 ` Eric Auger
2025-03-19 0:31 ` Jason Gunthorpe
2025-03-19 5:27 ` Nicolin Chen
2025-03-24 14:08 ` Eric Auger
2025-03-18 21:42 ` Donald Dutile
2025-03-19 16:45 ` Eric Auger
2025-03-19 16:53 ` Shameerali Kolothum Thodi via
2025-03-19 16:53 ` Shameerali Kolothum Thodi via
2025-03-19 17:26 ` Eric Auger
2025-03-19 17:34 ` Jason Gunthorpe
2025-03-19 17:41 ` Eric Auger
2025-03-19 17:14 ` Nicolin Chen
2025-03-19 18:09 ` Eric Auger
2025-03-19 18:34 ` Nicolin Chen
2025-03-24 14:46 ` Eric Auger
2025-03-21 1:26 ` Donald Dutile
2025-03-24 14:59 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 04/20] hw/arm/virt: Add support for smmuv3-accel Shameer Kolothum via
2025-03-11 20:22 ` Nicolin Chen
2025-03-12 9:44 ` Shameerali Kolothum Thodi via
2025-03-12 15:36 ` Eric Auger
2025-03-12 15:46 ` Shameerali Kolothum Thodi via
2025-03-12 15:46 ` Shameerali Kolothum Thodi via
2025-03-12 16:13 ` Eric Auger
2025-03-12 16:22 ` Shameerali Kolothum Thodi via [this message]
2025-03-12 16:27 ` Eric Auger
2025-03-12 17:34 ` Shameerali Kolothum Thodi via
2025-03-12 18:30 ` Eric Auger
2025-03-13 8:26 ` Shameerali Kolothum Thodi via
2025-03-13 15:22 ` Eric Auger
2025-03-18 22:49 ` Donald Dutile
2025-03-19 9:28 ` Shameerali Kolothum Thodi via
2025-03-19 9:28 ` Shameerali Kolothum Thodi via
2025-03-11 14:10 ` [RFC PATCH v2 05/20] hw/arm/smmuv3-accel: Associate a pxb-pcie bus Shameer Kolothum via
2025-03-12 16:07 ` Eric Auger
2025-03-12 16:34 ` Shameerali Kolothum Thodi via
2025-03-12 16:34 ` Shameerali Kolothum Thodi via
2025-03-12 16:39 ` Daniel P. Berrangé
2025-03-12 17:28 ` Shameerali Kolothum Thodi via
2025-03-12 17:28 ` Shameerali Kolothum Thodi via
2025-03-13 15:21 ` Eric Auger
2025-03-12 16:42 ` Eric Auger
2025-03-13 8:22 ` Shameerali Kolothum Thodi via
2025-03-13 8:22 ` Shameerali Kolothum Thodi via
2025-03-17 16:57 ` Eric Auger
2025-03-18 22:12 ` Donald Dutile
2025-03-19 9:26 ` Shameerali Kolothum Thodi via
2025-03-19 9:26 ` Shameerali Kolothum Thodi via
2025-03-19 16:21 ` Donald Dutile
2025-03-19 18:21 ` Eric Auger
2025-03-21 0:59 ` Donald Dutile
2025-03-24 14:56 ` Eric Auger
2025-03-24 15:02 ` Daniel P. Berrangé
2025-03-24 21:43 ` Donald Dutile
2025-03-20 17:02 ` Nicolin Chen
2025-03-24 8:19 ` Shameerali Kolothum Thodi via
2025-03-24 8:19 ` Shameerali Kolothum Thodi via
2025-03-24 13:13 ` Eric Auger
2025-03-24 13:55 ` Shameerali Kolothum Thodi via
2025-03-24 13:55 ` Shameerali Kolothum Thodi via
2025-03-24 15:34 ` Eric Auger
2025-03-24 16:01 ` Nicolin Chen
2025-03-24 16:06 ` Shameerali Kolothum Thodi via
2025-03-24 16:06 ` Shameerali Kolothum Thodi via
2025-03-24 15:50 ` Nicolin Chen
2025-03-11 14:10 ` [RFC PATCH v2 06/20] hw/arm/smmu-common: Factor out common helper functions and export Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-12 16:12 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 07/20] hw/arm/smmu-common: Introduce callbacks for PCIIOMMUOps Shameer Kolothum via
2025-03-12 16:23 ` Eric Auger
2025-03-13 8:09 ` Shameerali Kolothum Thodi via
2025-03-13 8:09 ` Shameerali Kolothum Thodi via
2025-03-17 16:52 ` Eric Auger
2025-03-18 9:47 ` Shameerali Kolothum Thodi via
2025-03-12 17:10 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 08/20] hw/arm/smmuv3-accel: Provide get_address_space callback Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-11 20:50 ` Nicolin Chen
2025-03-12 17:14 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 09/20] hw/arm/smmuv3-accel: Add set/unset_iommu_device callback Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-11 21:07 ` Nicolin Chen
2025-03-17 8:38 ` Shameerali Kolothum Thodi via
2025-03-17 8:38 ` Shameerali Kolothum Thodi via
2025-03-17 18:19 ` Nicolin Chen
2025-03-12 12:52 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 10/20] hw/arm/smmuv3-accel: Support nested STE install/uninstall support Shameer Kolothum via
2025-03-25 18:08 ` Eric Auger
2025-03-25 19:33 ` Nicolin Chen
2025-03-11 14:10 ` [RFC PATCH v2 11/20] hw/arm/smmuv3-accel: Allocate a vDEVICE object for device Shameer Kolothum via
2025-03-18 23:30 ` Donald Dutile
2025-03-25 18:13 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 12/20] hw/arm/smmuv3-accel: Return sysmem if stage-1 is bypassed Shameer Kolothum via
2025-03-25 18:47 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 13/20] hw/arm/smmuv3-accel: Introduce helpers to batch and issue cache invalidations Shameer Kolothum via
2025-03-19 1:31 ` Donald Dutile
2025-03-19 9:48 ` Shameerali Kolothum Thodi via
2025-03-19 9:48 ` Shameerali Kolothum Thodi via
2025-03-19 16:24 ` Donald Dutile
2025-03-19 16:48 ` Nicolin Chen
2025-03-26 13:38 ` Eric Auger
2025-03-26 19:16 ` Nicolin Chen
2025-03-27 7:46 ` Shameerali Kolothum Thodi via
2025-03-27 8:00 ` Eric Auger
2025-03-26 13:59 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 14/20] hw/arm/smmuv3: Install nested ste for CFGI_STE Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-26 13:39 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 15/20] hw/arm/smmuv3: Forward invalidation commands to hw Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-26 14:16 ` Eric Auger
2025-03-26 19:27 ` Nicolin Chen
2025-03-27 8:03 ` Eric Auger
2025-03-26 14:18 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 16/20] hw/arm/smmuv3-accel: Read host SMMUv3 device info Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-19 2:45 ` Donald Dutile
2025-03-26 14:57 ` Eric Auger
2025-03-11 14:10 ` [RFC PATCH v2 17/20] hw/arm/smmuv3: Check idr registers for STE_S1CDMAX and STE_S1STALLD Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-26 17:18 ` Eric Auger
2025-03-26 19:46 ` Nicolin Chen
2025-03-27 7:54 ` Shameerali Kolothum Thodi via
2025-03-27 7:54 ` Shameerali Kolothum Thodi via
2025-03-27 9:11 ` Eric Auger
2025-03-27 13:05 ` Jason Gunthorpe
2025-03-11 14:10 ` [RFC PATCH v2 18/20] hw/arm/smmu-common: Bypass emulated IOTLB for a accel SMMUv3 Shameer Kolothum via
2025-03-19 2:52 ` Donald Dutile
2025-03-26 17:40 ` Eric Auger
2025-03-26 19:57 ` Nicolin Chen
2025-03-11 14:10 ` [RFC PATCH v2 19/20] hw/arm/virt-acpi-build: Update IORT with multiple smmuv3-accel nodes Shameer Kolothum via
2025-03-26 18:14 ` Eric Auger
2025-03-26 18:50 ` Nicolin Chen
2025-03-27 9:26 ` Shameerali Kolothum Thodi via
2025-03-27 9:26 ` Shameerali Kolothum Thodi via
2025-03-11 14:10 ` [RFC PATCH v2 20/20] hw/arm/smmuv3-accel: Enable smmuv3-accel creation Shameer Kolothum via
2025-03-11 14:10 ` Shameer Kolothum via
2025-03-19 16:40 ` [RFC PATCH v2 00/20] hw/arm/virt: Add support for user-creatable accelerated SMMUv3 Philippe Mathieu-Daudé
2025-03-19 17:13 ` Eric Auger
2025-03-25 14:42 ` Eric Auger
2025-03-25 15:43 ` Shameerali Kolothum Thodi via
2025-03-25 18:26 ` Nicolin Chen via
2025-03-25 18:26 ` Nicolin Chen via
2025-03-25 18:52 ` Eric Auger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5d894a546d3f4081ac2cfe98bd2ea612@huawei.com \
--to=qemu-devel@nongnu.org \
--cc=berrange@redhat.com \
--cc=ddutile@redhat.com \
--cc=eric.auger@redhat.com \
--cc=jgg@nvidia.com \
--cc=jiangkunkun@huawei.com \
--cc=jonathan.cameron@huawei.com \
--cc=linuxarm@huawei.com \
--cc=mochs@nvidia.com \
--cc=nathanc@nvidia.com \
--cc=nicolinc@nvidia.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=shameerali.kolothum.thodi@huawei.com \
--cc=smostafa@google.com \
--cc=wangzhou1@hisilicon.com \
--cc=zhangfei.gao@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.