From: Wei Liu <wei.liu@kernel.org>
To: Robin Murphy <robin.murphy@arm.com>
Cc: Wei Liu <wei.liu@kernel.org>,
Linux on Hyper-V List <linux-hyperv@vger.kernel.org>,
pasha.tatashin@soleen.com, Will Deacon <will@kernel.org>,
kumarpraveen@linux.microsoft.com,
David Woodhouse <dwmw2@infradead.org>,
Linux Kernel List <linux-kernel@vger.kernel.org>,
Michael Kelley <mikelley@microsoft.com>,
"open list:INTEL IOMMU VT-d" <iommu@lists.linux-foundation.org>,
Nuno Das Neves <nunodasneves@linux.microsoft.com>,
Sunil Muthuswamy <sunilmut@microsoft.com>,
virtualization@lists.linux-foundation.org,
Vineeth Pillai <viremana@linux.microsoft.com>,
Jean-Philippe Brucker <jean-philippe@linaro.org>
Subject: Re: [RFC v1 3/8] intel/vt-d: make DMAR table parsing code more flexible
Date: Fri, 9 Jul 2021 13:42:53 +0000 [thread overview]
Message-ID: <20210709134253.274m4dpqukxn43q7@liuwe-devbox-debian-v2> (raw)
In-Reply-To: <e1dcc315-4ebb-661e-4289-d176b3db39b5@arm.com>
On Fri, Jul 09, 2021 at 01:56:46PM +0100, Robin Murphy wrote:
> On 2021-07-09 12:43, Wei Liu wrote:
> > Microsoft Hypervisor provides a set of hypercalls to manage device
> > domains. The root kernel should parse the DMAR so that it can program
> > the IOMMU (with hypercalls) correctly.
> >
> > The DMAR code was designed to work with Intel IOMMU only. Add two more
> > parameters to make it useful to Microsoft Hypervisor. Microsoft
> > Hypervisor does not need the DMAR parsing code to allocate an Intel
> > IOMMU structure; it also wishes to always reparse the DMAR table even
> > after it has been parsed before.
>
> We've recently defined the VIOT table for describing paravirtualised IOMMUs
> - would it make more sense to extend that to support the Microsoft
> implementation than to abuse a hardware-specific table? Am I right in
I searched for VIOT and believed I found the correct link
https://lwn.net/Articles/859291/. My understanding is based on the
reading of that series.
VIOT is useful. I think it solves the problem for guests.
It does not solve the problem we have though. The DMAR tables are not
conjured up by some backend software running on the host side. They are
the real tables provided by the firmware. The kernel here is part of the
host setup, dealing with physical hardware.
No matter how much I wish all vendors unified their tables, I don't see
how that's going to happen for readily available servers. :-(
> assuming said hypervisor isn't intended to only ever run on Intel hardware?
Yes, that's correct. We also plan to add support AMD and ARM64.
Wei.
next prev parent reply other threads:[~2021-07-09 13:43 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-09 11:43 [RFC v1 0/8] MSHV: add PV-IOMMU driver Wei Liu
2021-07-09 11:43 ` [RFC v1 1/8] x86/hyperv: export hv_build_pci_dev_id Wei Liu
2021-07-09 11:43 ` [RFC v1 2/8] asm-generic/hyperv: add device domain definitions Wei Liu
2021-07-09 11:43 ` [RFC v1 3/8] intel/vt-d: make DMAR table parsing code more flexible Wei Liu
2021-07-09 12:56 ` Robin Murphy
2021-07-09 13:42 ` Wei Liu [this message]
2021-07-09 11:43 ` [RFC v1 4/8] intel/vt-d: export intel_iommu_get_resv_regions Wei Liu
2021-07-09 14:17 ` Lu Baolu
2021-07-09 14:21 ` Wei Liu
2021-07-09 11:43 ` [RFC v1 5/8] mshv: add paravirtualized IOMMU support Wei Liu
2021-08-03 18:40 ` Praveen Kumar
2021-08-03 21:47 ` Wei Liu
2021-08-04 6:43 ` Praveen Kumar
2021-08-10 10:46 ` Wei Liu
2021-07-09 11:43 ` [RFC v1 6/8] mshv: command line option to skip devices in PV-IOMMU Wei Liu
2021-07-09 12:46 ` Robin Murphy
2021-07-09 13:34 ` Wei Liu
2021-08-03 18:50 ` Praveen Kumar
2021-08-03 21:56 ` Wei Liu
2021-08-04 7:03 ` Praveen Kumar
2021-08-10 10:04 ` Wei Liu
2021-07-09 11:43 ` [RFC v1 7/8] mshv: implement in-kernel device framework Wei Liu
2021-07-09 13:02 ` Matthew Wilcox
2021-07-09 13:50 ` Wei Liu
2021-07-09 15:32 ` Matthew Wilcox
2021-07-09 16:27 ` Wei Liu
2021-07-09 16:38 ` Matthew Wilcox
2021-07-09 19:14 ` Wei Liu
2021-07-09 19:48 ` Matthew Wilcox
2021-07-09 20:11 ` Wei Liu
2021-08-03 19:12 ` Praveen Kumar
2021-08-03 22:04 ` Wei Liu
2021-07-09 11:43 ` [RFC v1 8/8] mshv: add vfio bridge device Wei Liu
2021-08-03 19:27 ` Praveen Kumar
2021-08-10 10:52 ` Wei Liu
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=20210709134253.274m4dpqukxn43q7@liuwe-devbox-debian-v2 \
--to=wei.liu@kernel.org \
--cc=dwmw2@infradead.org \
--cc=iommu@lists.linux-foundation.org \
--cc=jean-philippe@linaro.org \
--cc=kumarpraveen@linux.microsoft.com \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mikelley@microsoft.com \
--cc=nunodasneves@linux.microsoft.com \
--cc=pasha.tatashin@soleen.com \
--cc=robin.murphy@arm.com \
--cc=sunilmut@microsoft.com \
--cc=viremana@linux.microsoft.com \
--cc=virtualization@lists.linux-foundation.org \
--cc=will@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).