From: Stuart Yoder <b08248@gmail.com>
To: Scott Wood <scottwood@freescale.com>
Cc: Wood Scott-B07421 <B07421@freescale.com>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"agraf@suse.de" <agraf@suse.de>,
"iommu@lists.linux-foundation.org"
<iommu@lists.linux-foundation.org>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Yoder Stuart-B08248 <B08248@freescale.com>,
Alex Williamson <alex.williamson@redhat.com>,
Bhushan Bharat-R65777 <R65777@freescale.com>
Subject: Re: [Qemu-devel] RFC: vfio API changes needed for powerpc
Date: Wed, 3 Apr 2013 13:32:26 -0500 [thread overview]
Message-ID: <CALRxmdBjF12q1eQgsjD8UUdpqvjUUoRHWcms4yLYYuB_su5J3w@mail.gmail.com> (raw)
In-Reply-To: <1364943035.24520.28@snotra>
On Tue, Apr 2, 2013 at 5:50 PM, Scott Wood <scottwood@freescale.com> wrote:
> On 04/02/2013 04:38:45 PM, Alex Williamson wrote:
>>
>> On Tue, 2013-04-02 at 16:08 -0500, Stuart Yoder wrote:
>> > On Tue, Apr 2, 2013 at 3:57 PM, Scott Wood <scottwood@freescale.com>
>> > wrote:
>> > >> > C. Explicit mapping using normal DMA map. The last idea is
>> > >> > that
>> > >> > we would introduce a new ioctl to give user-space an fd to
>> > >> > the MSI bank, which could be mmapped. The flow would be
>> > >> > something like this:
>> > >> > -for each group user space calls new ioctl
>> > >> > VFIO_GROUP_GET_MSI_FD
>> > >> > -user space mmaps the fd, getting a vaddr
>> > >> > -user space does a normal DMA map for desired iova
>> > >> > This approach makes everything explicit, but adds a new
>> > >> > ioctl
>> > >> > applicable most likely only to the PAMU (type2 iommu).
>> > >>
>> > >> And the DMA_MAP of that mmap then allows userspace to select the
>> > >> window
>> > >> used? This one seems like a lot of overhead, adding a new ioctl, new
>> > >> fd, mmap, special mapping path, etc.
>> > >
>> > >
>> > > There's going to be special stuff no matter what. This would keep it
>> > > separated from the IOMMU map code.
>> > >
>> > > I'm not sure what you mean by "overhead" here... the runtime overhead
>> > > of
>> > > setting things up is not particularly relevant as long as it's
>> > > reasonable.
>> > > If you mean development and maintenance effort, keeping things well
>> > > separated should help.
>> >
>> > We don't need to change DMA_MAP. If we can simply add a new "type 2"
>> > ioctl that allows user space to set which windows are MSIs, it seems
>> > vastly
>> > less complex than an ioctl to supply a new fd, mmap of it, etc.
>> >
>> > So maybe 2 ioctls:
>> > VFIO_IOMMU_GET_MSI_COUNT
>
>
> Do you mean a count of actual MSIs or a count of MSI banks used by the whole
> VFIO group?
I meant # of MSI banks, so VFIO_IOMMU_GET_MSI_BANK_COUNT would be better.
>> > VFIO_IOMMU_MAP_MSI(iova, size)
>
>
> Not sure how you mean "size" to be used -- for MPIC it would be 4K per bank,
> and you can only map one bank at a time (which bank you're mapping should be
> a parameter, if only so that the kernel doesn't have to keep iteration state
> for you).
The intent was for user space to tell the kernel which windows to use
for MSI. So I envisioned a total size of window-size * msi-bank-count.
Stuart
next prev parent reply other threads:[~2013-04-03 18:32 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-02 17:32 [Qemu-devel] RFC: vfio API changes needed for powerpc Yoder Stuart-B08248
2013-04-02 19:39 ` Scott Wood
2013-04-02 20:38 ` Stuart Yoder
2013-04-02 20:47 ` Scott Wood
2013-04-02 20:58 ` Stuart Yoder
2013-04-02 20:32 ` Alex Williamson
2013-04-02 20:54 ` Stuart Yoder
2013-04-02 21:16 ` Alex Williamson
2013-04-02 22:13 ` Scott Wood
2013-04-03 2:54 ` Alex Williamson
2013-04-02 20:57 ` Scott Wood
2013-04-02 21:08 ` Stuart Yoder
2013-04-02 21:38 ` Alex Williamson
2013-04-02 22:50 ` Scott Wood
2013-04-03 3:37 ` Alex Williamson
2013-04-03 19:09 ` Stuart Yoder
2013-04-03 19:18 ` Scott Wood
2013-04-03 19:43 ` Stuart Yoder
2013-04-03 20:00 ` Scott Wood
2013-04-03 19:23 ` Alex Williamson
2013-04-03 19:26 ` Scott Wood
2013-04-03 21:19 ` Scott Wood
2013-04-03 18:32 ` Stuart Yoder [this message]
2013-04-03 18:39 ` Scott Wood
2013-04-02 21:55 ` Scott Wood
2013-04-02 21:32 ` Alex Williamson
2013-04-02 22:44 ` Scott Wood
2013-04-03 3:12 ` Alex Williamson
2013-04-03 18:25 ` Stuart Yoder
2013-04-03 21:25 ` Scott Wood
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=CALRxmdBjF12q1eQgsjD8UUdpqvjUUoRHWcms4yLYYuB_su5J3w@mail.gmail.com \
--to=b08248@gmail.com \
--cc=B07421@freescale.com \
--cc=B08248@freescale.com \
--cc=R65777@freescale.com \
--cc=agraf@suse.de \
--cc=alex.williamson@redhat.com \
--cc=iommu@lists.linux-foundation.org \
--cc=kvm@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
--cc=scottwood@freescale.com \
/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).