On Mon, 19 Sep 2005, Thiemo Seufer wrote:
> I found an performance bug in c-r4k.c:r4k_dma_cache_inv, where a
> Hit_Writeback_Inv instead of Hit_Invalidate is done. Ralf mentioned
> this is probably due to broken Hit_Invalidate cache ops on some
> CPUs, does anybody have more information about this? The appended
> patch works apparently fine on R4400, R4600v2.0, R5000.
It's actually been on my to-do list for research for quite a while.
These functions are called through pointers, so even if there are errata
in some processors, I'd be more than happy to use pure invalidations for
these that work whenever possible.
FYI, for R4k DECstations the need to flush the cache for newly allocated
skbs reduces throughput of FDDI reception by about a half (!), down from
about 90Mbps (that's for the /260); hopefully with no writebacks the
performance hit will be at least a bit smaller.