public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: Alan Cox <alan@redhat.com>
Cc: Andi Kleen <ak@muc.de>, Anton Blanchard <anton@samba.org>,
	mark_salyzyn@adaptec.com, Christoph Hellwig <hch@infradead.org>,
	linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org,
	James Bottomley <James.Bottomley@steeleye.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>
Subject: Re: PATCH: Further aacraid work
Date: Fri, 18 Jun 2004 01:57:03 -0400	[thread overview]
Message-ID: <40D2842F.6090304@pobox.com> (raw)
In-Reply-To: <20040617205414.GE8705@devserv.devel.redhat.com>

Alan Cox wrote:
> On Thu, Jun 17, 2004 at 09:10:43PM +0200, Andi Kleen wrote:
> 
>>The AMD64 IOMMU could do it too (and the code to do it exists in
>>2.6). But the problem is that the current IO layer doesn't provide a
>>sufficient fallback path when this fails. You have to promise in
>>advance that you can merge and then later it's too late to change your
>>mind without signalling an IO error.
> 
> 
> I would rather see it below the I/O layer for things like AMD64. The
> reason I say this is that many drivers would suffer from iommu merging not
> gain, and others may have limits.


This reminds me of good ole IDE:  the first-generation SATA controllers 
carry forward the limits of the older PCI IDE controllers:  neither the 
S/G table nor any single S/G entry may span a 64K boundary.

In theory the block layer / SCSI layer DMA boundary stuff takes care of 
this -- but iommu merging _undoes_ the segment splitting that the 
hardware _requires_.  Thus, in ata_fill_sg in libata-core.c, I re-split 
the S/G list after DMA-mapping it.  A bit lame.

James and BenH discussed a solution at the DMA level, but I don't think 
anything ever happened.

	Jeff



  parent reply	other threads:[~2004-06-18  5:57 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <286GI-5y3-11@gated-at.bofh.it>
     [not found] ` <286Qp-5EU-19@gated-at.bofh.it>
2004-06-17 19:10   ` PATCH: Further aacraid work Andi Kleen
2004-06-17 20:54     ` Alan Cox
2004-06-17 21:13       ` James Bottomley
2004-06-17 21:25       ` Andi Kleen
2004-06-18 15:19         ` Benjamin Herrenschmidt
2004-06-18  5:57       ` Jeff Garzik [this message]
2004-06-18 14:07         ` James Bottomley
2004-06-18 15:17     ` Benjamin Herrenschmidt
2004-06-29 20:55 Salyzyn, Mark
2004-06-29 23:22 ` Byron Stanoszek
2004-06-30 19:52 ` Byron Stanoszek
2004-06-30 19:59   ` Dario
  -- strict thread matches above, loose matches on Subject: below --
2004-06-29 19:27 Salyzyn, Mark
2004-06-29 20:20 ` Byron Stanoszek
2004-06-29 20:42 ` Alan Cox
2004-06-29 18:53 Salyzyn, Mark
2004-06-29 19:03 ` Byron Stanoszek
2004-06-28 13:17 Salyzyn, Mark
2004-06-18 20:53 Salyzyn, Mark
2004-06-17 17:54 Salyzyn, Mark
2004-06-17 20:38 ` Alan Cox
2004-06-17 20:48   ` William Lee Irwin III
2004-06-17 20:56     ` James Bottomley
2004-06-18 15:05     ` William Lee Irwin III
2004-06-18 20:32       ` William Lee Irwin III
2004-06-27 17:33         ` James Bottomley
2004-06-17 14:39 Salyzyn, Mark
2004-06-17 14:55 ` James Bottomley
2004-06-17 14:58   ` Alan Cox
2004-06-17 15:15     ` Arjan van de Ven
2004-06-17 19:16       ` James Bottomley
2004-06-17 16:32   ` Clay Haapala
2004-06-17 16:37     ` James Bottomley
2004-06-17 16:46     ` Alan Cox
2004-06-17 15:11 ` Anton Blanchard
2004-06-17 12:53 Salyzyn, Mark
2004-06-17 13:07 ` Matthew Wilcox
2004-06-17 13:19   ` Christoph Hellwig
2004-06-17 13:55   ` James Bottomley
2004-06-17 13:32 ` Christoph Hellwig
2004-06-17 14:02 ` Alan Cox
2004-06-16 21:04 Alan Cox
2004-06-16 21:33 ` Christoph Hellwig
2004-06-16 21:40   ` Alan Cox
2004-06-16 21:42     ` Christoph Hellwig
2004-06-16 21:48       ` Alan Cox
2004-06-16 21:58         ` Christoph Hellwig
2004-06-16 22:06           ` Alan Cox
2004-06-29 17:48 ` Byron Stanoszek
2004-06-29 18:27   ` Mark Haverkamp
2004-06-29 18:37   ` Alan Cox
2004-06-30  2:02 ` bm
2004-06-30 16:07   ` Alan Cox

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=40D2842F.6090304@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=James.Bottomley@steeleye.com \
    --cc=ak@muc.de \
    --cc=alan@redhat.com \
    --cc=anton@samba.org \
    --cc=benh@kernel.crashing.org \
    --cc=hch@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mark_salyzyn@adaptec.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