linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: problem with blk_queue_bounce_limit()
@ 2003-06-06 18:06 James Bottomley
  0 siblings, 0 replies; 29+ messages in thread
From: James Bottomley @ 2003-06-06 18:06 UTC (permalink / raw)
  To: David S. Miller; +Cc: Christoph Hellwig, Linux Kernel



       From: Christoph Hellwig <hch@infradead.org>
       Date: Fri, 6 Jun 2003 08:44:10 +0100
    
       PCI_DMA_BUS_IS_PHYS should be a propert of each struct device because
       a machine might have a iommu for one bus type but not another,
    
    We know of no such systems.  Even in mixed-bus environments such as
    sparc64 SBUS+PCI systems.
    
Actually, I know of such a system, although, I will admit they're
obscure.  Certain PA-RISC machines with EISA buses have an IOMMU on the
EISA bus alone (not on the GSC bus).  It's job was really to cope with
the ISA DMA issue nicely, but it qualifies.

It was for machines like this that I've already been thinking about
introducing a dma_is_phys(dev) macro, which I originally left out of the
generic device DMA API.

James



^ permalink raw reply	[flat|nested] 29+ messages in thread
* problem with blk_queue_bounce_limit()
@ 2003-06-05  6:42 David Mosberger
  2003-06-05  7:20 ` David S. Miller
  0 siblings, 1 reply; 29+ messages in thread
From: David Mosberger @ 2003-06-05  6:42 UTC (permalink / raw)
  To: axboe; +Cc: linux-kernel

On platforms with I/O MMU hardware, memory above 4GB, and IDE hard disks,
this check:

		BUG_ON(dma_addr < BLK_BOUNCE_ISA);

causes an instant panic.  The reason is quite obvious: since there is
an I/O MMU, BLK_BOUNCE_ISA is effectively unlimited, and most IDE
controllers can of course DMA only to <4GB.

So, the check is wrong.  I think the proper way to fix this is to pass
a "struct dev" into the routine and then to use dma_supported() to
check whether bounce buffers will be needed.  Do you agree?  If so,
can you fix it?

Thanks,

	--david

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2003-06-15  8:09 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-06 18:06 problem with blk_queue_bounce_limit() James Bottomley
  -- strict thread matches above, loose matches on Subject: below --
2003-06-05  6:42 David Mosberger
2003-06-05  7:20 ` David S. Miller
2003-06-06  6:42   ` David Mosberger
2003-06-06  6:45     ` David S. Miller
2003-06-06  6:54       ` David Mosberger
2003-06-06  7:08         ` David S. Miller
2003-06-06  6:52     ` David S. Miller
2003-06-06  7:19       ` David Mosberger
2003-06-06  7:32         ` David S. Miller
2003-06-06  7:44           ` Christoph Hellwig
2003-06-06  7:43             ` David S. Miller
2003-06-06  7:51               ` Christoph Hellwig
2003-06-06 20:13           ` David Mosberger
2003-06-07  6:44             ` David S. Miller
2003-06-07  7:05               ` David Mosberger
2003-06-07  7:11                 ` David S. Miller
2003-06-10 20:01                   ` David Mosberger
2003-06-12  6:47                     ` David S. Miller
2003-06-15  7:06                   ` Anton Blanchard
2003-06-15  7:11                     ` David S. Miller
2003-06-15  8:04                       ` Anton Blanchard
2003-06-15  8:18                         ` David S. Miller
2003-06-07  7:20               ` David Mosberger
2003-06-07  7:19                 ` David S. Miller
2003-06-07  9:44                 ` Russell King
2003-06-07  9:47                   ` David S. Miller
2003-06-07 13:23                     ` Christoph Hellwig
2003-06-10 20:24                 ` David Mosberger

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).