From: Jeremy Fitzhardinge <jeremy@goop.org>
To: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: galak@kernel.crashing.org, hch@infradead.org,
linux-kernel@vger.kernel.org, mingo@elte.hu,
ian.campbell@citrix.com, beckyb@kernel.crashing.org
Subject: Re: [PATCH 4/7] swiotlb: Allow arch override of address_needs_mapping
Date: Thu, 09 Apr 2009 12:19:19 -0700 [thread overview]
Message-ID: <49DE4A37.3080702@goop.org> (raw)
In-Reply-To: <20090410033357S.fujita.tomonori@lab.ntt.co.jp>
FUJITA Tomonori wrote:
>> Well, Becky's patches also added the hwdev argument to them, so
>> presumably the powerpc implementation needs that (different
>> devices/buses have differing views of physical memory, I guess).
>>
>
> Until I see the ppc specific swiotlb patchset, I'm not sure but I
> think that we can remove phys_to_bus in swiotlb.
>
Kumar's comment was: "For our SoC chips we don't need any mapping
between phys & bus. However something like PCI does have a mapping (a
simple offset)."
Kumar, could a single system have different phys<->bus mappings on a
single system, or could it differ from device to device (or bus to bus)?
> Even if we need phys_to_bus, we can remove the rest of __weak tricks
> for only dom0. And we can make phys_to_bus arch-specific. Then we
> don't need any __weak tricks in swiotlb (and x86's swiotlb). dom0
> support adds many hacks to swiotlb.
>
Well, we'd still need a way to do hook the swiotlb_alloc(_boot)
allocation. At the moment its effectively arch-specific because x86
only uses swiotlb_alloc_boot(), and ia64 only uses swiotlb_alloc(). One
option would be to simply make that function arch-defined, which would
remove the need for any kind of override mechanism in lib/swiotlb; that
would match the handling of phys_to_bus. And its more appealing if we
manage to drop swiotlb_alloc_boot, so there's only a single function for
the arches to worry about.
> Yeah, ISA DMA comment is misleading. swiotlb can't handle it. And it
> doesn't need to handle it because the block layer can thanks to
> the bouncing (the network layer does the similar, I think).
>
> As you said, we could remove the latter though I'm not sure.
>
It would take a bit of rearranging the x86 swiotlb/iommu init sequence,
but I don't think it would be too complex. I'll look into it.
J
next prev parent reply other threads:[~2009-04-09 19:19 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-08 14:09 [PATCH V3 0/7] swiotlb: changes for powerpc/highmem Kumar Gala
2009-04-08 14:09 ` [PATCH 1/7] swiotlb: comment corrections (no code changes) Kumar Gala
2009-04-08 14:09 ` [PATCH 2/7] swiotlb: fix compile warning Kumar Gala
2009-04-08 14:09 ` [PATCH 3/7] swiotlb: map_page fix for highmem systems Kumar Gala
2009-04-08 14:09 ` [PATCH 4/7] swiotlb: Allow arch override of address_needs_mapping Kumar Gala
2009-04-08 14:09 ` [PATCH 5/7] swiotlb: Rename unmap_single to do_unmap_single Kumar Gala
2009-04-08 14:09 ` [PATCH 6/7] swiotlb: Use swiotlb_sync_single instead of duplicating code Kumar Gala
2009-04-08 14:09 ` [PATCH 7/7] swiotlb: Change swiotlb_bus_to[phys,virt] prototypes Kumar Gala
2009-04-08 15:25 ` [tip:core/iommu] swiotlb: change " Becky Bruce
2009-04-08 15:25 ` [tip:core/iommu] swiotlb: use swiotlb_sync_single instead of duplicating code Becky Bruce
2009-04-08 15:25 ` [tip:core/iommu] swiotlb: rename unmap_single to do_unmap_single Becky Bruce
2009-04-08 15:25 ` [tip:core/iommu] swiotlb: allow arch override of address_needs_mapping Becky Bruce
2009-04-08 20:38 ` [PATCH 4/7] swiotlb: Allow " Christoph Hellwig
2009-04-08 20:56 ` Kumar Gala
2009-04-08 21:15 ` FUJITA Tomonori
2009-04-08 21:55 ` Jeremy Fitzhardinge
2009-04-08 22:10 ` FUJITA Tomonori
2009-04-08 22:36 ` Jeremy Fitzhardinge
2009-04-08 23:01 ` FUJITA Tomonori
2009-04-08 23:16 ` Jeremy Fitzhardinge
2009-04-08 23:37 ` FUJITA Tomonori
2009-04-09 0:09 ` Jeremy Fitzhardinge
2009-04-09 4:43 ` Kumar Gala
2009-04-09 18:34 ` FUJITA Tomonori
2009-04-09 19:19 ` Jeremy Fitzhardinge [this message]
2009-04-09 19:43 ` FUJITA Tomonori
2009-04-09 19:50 ` FUJITA Tomonori
2009-04-09 19:54 ` Jeremy Fitzhardinge
2009-04-09 4:59 ` Kumar Gala
2009-04-09 18:50 ` FUJITA Tomonori
2009-04-09 20:10 ` Kumar Gala
2009-04-09 20:25 ` Kumar Gala
2009-04-08 22:24 ` Christoph Hellwig
2009-04-08 15:24 ` [tip:core/iommu] swiotlb: map_page fix for highmem systems Becky Bruce
2009-04-08 15:24 ` [tip:core/iommu] swiotlb: fix compile warning Becky Bruce
2009-04-08 15:24 ` [tip:core/iommu] swiotlb: comment corrections Becky Bruce
2009-04-08 14:21 ` [PATCH V3 0/7] swiotlb: changes for powerpc/highmem Ingo Molnar
-- strict thread matches above, loose matches on Subject: below --
2009-04-04 1:56 [PATCH V2 " Becky Bruce
2009-04-04 1:56 ` [PATCH 1/7] swiotlb: comment corrections (no code changes) Becky Bruce
2009-04-04 1:56 ` [PATCH 2/7] swiotlb: fix compile warning Becky Bruce
2009-04-04 1:56 ` [PATCH 3/7] swiotlb: map_page fix for highmem systems Becky Bruce
2009-04-04 1:56 ` [PATCH 4/7] swiotlb: Allow arch override of address_needs_mapping Becky Bruce
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=49DE4A37.3080702@goop.org \
--to=jeremy@goop.org \
--cc=beckyb@kernel.crashing.org \
--cc=fujita.tomonori@lab.ntt.co.jp \
--cc=galak@kernel.crashing.org \
--cc=hch@infradead.org \
--cc=ian.campbell@citrix.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
/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.