Quoting Chris Wilson (2019-09-20 13:22:13)
Quoting Chris Wilson (2019-09-20 13:18:21)
Since dropping the set-to-gtt-domain in commit a679f58d0510 ("drm/i915: Flush pages on acquisition"), we no longer mark the contents as dirty on a write fault. This has the issue of us then not marking the pages as dirty on releasing the buffer, which means the contents are not written out to the swap device (should we ever pick that buffer as a victim). Notably, this is visible in the dumb buffer interface used for cursors. Having updated the cursor contents via mmap, and swapped away, if the shrinker should evict the old cursor, upon next reuse, the cursor would be invisible.
Hmm, I think the dumb interface may be missing a few steps around the place to ensure the contents are flushed.
No, it's fine. We do the flush in pinning pages, the only thing that was dropped was then marking the content as dirty. -Chris