From: Christoph Hellwig
Sent: 04 May 2020 17:03
On Sun, May 03, 2020 at 09:20:19PM +0100, Chris Wilson wrote:
Err, why does i915 implements its own uncached memcpy instead of relying on core functionality to start with?
What is this core functionality that provides movntqda?
A sensible name might be memcpy_uncached or mempcy_nontemporal. But the important point is that this should be arch code with a common fallback rather than hacking it up in drivers.
More the point, you are trying to do a copy where: 1) The kernel isn't expected to read the data - so can bypass the cache. and maybe: 2) The data needs flushing from the cache to actual memory. and maybe: 3) The cache lines need invalidating.
The fallbacks depend on the required behaviour.
David
- Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)