I'm surprised access through /dev/mem happens below the caching layer. I wouldn't have even thought of that possibility. Any idea why that is?
Cacheable accesses would break that use case.
CPU got cache for caching memory
I would expect the memory access to happen through the CPU and its cache, avoiding such problems.