From: Paul Brook <paul@codesourcery.com>
To: qemu-devel@nongnu.org
Cc: Blue Swirl <blauwirbel@gmail.com>
Subject: Re: [Qemu-devel] qemu cpu-all.h exec.c
Date: Fri, 4 Jan 2008 22:43:51 +0000 [thread overview]
Message-ID: <200801042243.52167.paul@codesourcery.com> (raw)
In-Reply-To: <f43fc5580801041236p3f5b85e3wb0616d132cb4281f@mail.gmail.com>
> > The latter depends how general you want the solution to be. One
> > possibility is for the device DMA+registration routines map everything
> > onto CPU address space.
>
> Interesting idea, do you mean that all individual bus address spaces
> could exist in system view in the same large address space outside the
> target CPU address space? Then some of the translations could become
> simple offset operations.
No, I was basically assuming that all cpu->device mappings are linear offsets.
This means you need almost no changes to the current CPU access code. You can
also arrange for all device DMA requests to be translated into CPU physical
addresses (VIA IOMMU, or whatever), then treat them the same as if they were
CPU accesses.
However on second thoughts this probably isn't such a clever idea. There are
some potentially interesting cases it can't handle.
I'll see if I can come up with an actual proposal. My current theory is that
we should be able to combine the bus mappings with the TLB fill, which should
help mitigate the overhead.
Paul
next prev parent reply other threads:[~2008-01-04 22:44 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-01 16:57 [Qemu-devel] qemu cpu-all.h exec.c Blue Swirl
2008-01-01 21:42 ` Fabrice Bellard
2008-01-02 16:42 ` Blue Swirl
2008-01-02 17:18 ` Paul Brook
2008-01-02 17:31 ` Blue Swirl
2008-01-03 1:18 ` Paul Brook
2008-01-03 15:57 ` Blue Swirl
2008-01-03 16:12 ` Paul Brook
2008-01-03 16:53 ` Fabrice Bellard
2008-01-03 19:44 ` Blue Swirl
2008-01-03 20:16 ` Paul Brook
2008-01-04 20:36 ` Blue Swirl
2008-01-04 22:43 ` Paul Brook [this message]
-- strict thread matches above, loose matches on Subject: below --
2007-05-26 17:36 Blue Swirl
2007-04-04 7:55 Jocelyn Mayer
2005-10-30 20:48 Fabrice Bellard
2005-02-10 21:56 Fabrice Bellard
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=200801042243.52167.paul@codesourcery.com \
--to=paul@codesourcery.com \
--cc=blauwirbel@gmail.com \
--cc=qemu-devel@nongnu.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).