Very nice until the disc controller DMA dumps some data into memory and the CPU cache thinks there should be something else at the same location. The DMA writes, the CPU writes and then some software uses that data, then saves.. OOPS!
How is this solved?