On 06/04/18 15:24, Balbir Singh wrote: > This patch adds support for flushing potentially dirty > cache lines when memory is hot-plugged/hot-un-plugged. > The support is currently limited to 64 bit systems. > > The bug was exposed when mappings for a device were > actually hot-unplugged and plugged in back later. > A similar issue was observed during the development > of memtrace, but memtrace does it's own flushing of > region via a custom routine. > > These patches do a flush both on hotplug/unplug to > clear any stale data in the cache w.r.t mappings, > there is a small race window where a clean cache > line may be created again just prior to tearing > down the mapping. > > The patches were tested by disabling the flush > routines in memtrace and doing I/O on the trace > file. The system immediately checkstops (quite > reliablly if prior to the hot-unplug of the memtrace > region, we memset the regions we are about to > hot unplug). After these patches no custom flushing > is needed in the memtrace code. > > Signed-off-by: Balbir Singh <bsinghar...@gmail.com>
Reviewed-by: Rashmica Gupta <rashmic...@gmail.com>