Thread (17 messages) 17 messages, 4 authors, 2010-08-27

ARM: 2.6.3[45] PCI regression (IXP4xx and PXA?)

From: Russell King - ARM Linux <hidden>
Date: 2010-08-14 18:46:20
Also in: lkml

On Sat, Aug 14, 2010 at 06:30:37PM +0900, FUJITA Tomonori wrote:
On Fri, 13 Aug 2010 22:54:13 +0100
Russell King - ARM Linux [off-list ref] wrote:
quoted
 This means that when dmabounce comes to allocate the replacement
buffer, it gets a buffer which won't be accessible to the DMA
controller
Really? looks like dmabounce does nothing for coherent memory that
dma_alloc_coherent() allocates.

The following very hacky patch works?
So what happens if you use a driver which uses dma_alloc_coherent()
directly?  Should the driver really be passed memory which is
inaccessible to the device because its outside the host bridge PCI
window?

No, this is clearly wrong, so this patch doesn't fix anything.  It's
a bodge, nothing more.  The real solution is to have _both_ masks
both reduced down according to the host bridge, as we used to do.

So I suggest 6fee48c is reverted so that these platforms don't regress
for -rc1.

As I said when you sent the originally patch, it _looked_ okay, but I
don't have any way to test it.  It seems from testing (which
unfortunately only seems to only happen after patches hit mainline)
that it is not okay after all.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help