> > My initial guess is that some of the callers of copy_to_user are
> > doing something that is harmed the prefetching.
> > (Maybe they are doing additional prefetch() calls)
>
> Most callers are dealing with cached data, and unless you checked the
> length in advance to make a sensible decision it will just make things ugly.
> If you aren't copying 512 bytes+ its probably not worth it.
It didn't make an iota of difference what sizes I played with
(and I tried quite a few different ones)
I've come up with a preload_cache() function (for want of a better name)
and plonked that in prefetch.h for now. Having this #define to nothing
on other arch's would mean we could use this in places like we currently
do prefetch(). I'm still not happy with it, but its cleaner than my
original hack.
It's in -dj10 for the curious.
Dave.
-- | Dave Jones. http://www.codemonkey.org.uk | SuSE Labs- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/