Re: [PATCH 0/4] 34xx spurious interrupts unravelling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday 31 October 2008, Woodruff, Richard wrote:
> 
> > owner@xxxxxxxxxxxxxxx] On Behalf Of David Brownell
> > Sent: Friday, October 31, 2008 4:59 PM
> 
> > As in, issue those dma cache updates, then write to the
> > DMA or peripheral controller registers ... and the key data
> > was still in the write buffers when those writes completed!
> > That's quite unusual; possibly related to memory controller
> > bugs in that silicon revision.
> 
> For the next series of ARMv7 Cortex's this is all being projected
> to require much more strictness in access ordering and use of barriers.

Any particular kind of barriers?  barrier() is compiler advice,
and gets the most use in Linux ... but <asm/system.h> reminds
me that V7 has isb/dsb/dmb instructions, and V6 can do them too.
(Now I'll have to go look at what they do again...)

That case needed a dsb analogue (on armv5, flush write buffer).


> There have been some cautions about newer write buffer policies
> which try and keep data instead of flushing it. Today even if
> you miss some drain in a small amount of time it will happen.
> That may not be the case always.   

Yeah, I remember back when I had to work with SPARC the issue
of memory ordering models was problematic.  There's a tradeoff:
the more ordering guarantees the easier it is for software, at
cost of slowing down data transfers by excess serialization.

And at the other extreme, if you configured things for highly
unordered access, the hardware wouldn't have many roadblocks
but the software could get confused rather easily.


What this means for software developers -- especially folk
writing drivers and tweaking address spaces -- is needing to
pay a bunch more attention to some confusing issues that most
ARM folk have managed to avoid over the past many years.

- Dave


> 
> Regards,
> Richard W.
> 
> 


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux