[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250403032729-mutt-send-email-mst@kernel.org>
Date: Thu, 3 Apr 2025 03:31:26 -0400
From: "Michael S. Tsirkin" <mst@...hat.com>
To: David Woodhouse <dwmw2@...radead.org>
Cc: virtio-comment@...ts.linux.dev, hch@...radead.org,
Claire Chang <tientzu@...omium.org>,
linux-devicetree <devicetree@...r.kernel.org>,
Rob Herring <robh+dt@...nel.org>,
Jörg Roedel <joro@...tes.org>,
iommu@...ts.linux-foundation.org, linux-kernel@...r.kernel.org,
graf@...zon.de
Subject: Re: [RFC PATCH 1/3] content: Add VIRTIO_F_SWIOTLB to negotiate use
of SWIOTLB bounce buffers
On Wed, Apr 02, 2025 at 06:10:53PM +0100, David Woodhouse wrote:
> On Wed, 2025-04-02 at 12:43 -0400, Michael S. Tsirkin wrote:
> >
> > yes.
> >
> > I know a bit more about PCI, and for PCI I prefer just not saying
> > anything. The platform already defines whether it is behind an iommu
> > or not, and duplication is not good.
>
> Not a hill for me to die on I suppose, but I would personally prefer to
> spell it out in words of one syllable or fewer, to make *sure* that
> device and driver authors get it right even though it's "obvious".
>
> After all, if we could trust them to do their thinking, we would never
> have had the awful situation that led to VIRTIO_F_ACCESS_PLATFORM
> existing in the first place; the legacy behaviour we get when that bit
> *isn't* set would never have happened.
Oh, you are wrong here. It's not implementer's fault.
virtio just was not designed with real DMA
in mind, and micro-optimizing by bypassing the DMA API
was very much intentional.
> > For mmio it is my understanding that the "restricted" does the same
> > already? or is it required in the spec for some reason?
>
> No, it's exactly the same. But I still don't trust driver authors to
> realise the obvious, or VMM implementations either for that matter.
>
> I'm not sure I see the *harm* in spelling out explicitly for the hard-
> of-thinking.
I don't want people to make assumptions, like crashing if device is
behind an iommu or whatnot.
We can go with something informative.
"It is expected that for most implementations, when using this feature,
the behaviour with and without ACCESS_PLATFORM is the same"
--
MST
Powered by blists - more mailing lists