Message ID | 20211202092424.4000107-1-tejaskumarx.surendrakumar.upadhyay@intel.com (mailing list archive) |
---|---|
Headers | show |
Series | Replace VT-d workaround with guard pages | expand |
On 2021-12-02 at 14:54:21 +0530, Tejas Upadhyay wrote: > Replace filling the GGTT entirely with scratch pages to avoid invalid > accesses from VT-d overfetch of scanout by only surrounding scanout vma > with guard pages. This eliminates the 100+ms delay in resume where we > have to repopulate the GGTT with scratch. > > This should also help in avoiding slow suspend/resume on GEN11/12 > platforms. Which will also resolve issues with following reported > errors : "slow framebuffer consoles issue impacts Linux S3" Please remove the R-b tag received not from upstreaming review and change logs for the iterations happened somewhere else. Ram. > > V2: solved checkpatch warning > > Chris Wilson (3): > drm/i915: Wrap all access to i915_vma.node.start|size > drm/i915: Introduce guard pages to i915_vma > drm/i915: Refine VT-d scanout workaround > > drivers/gpu/drm/i915/display/intel_dpt.c | 4 +- > drivers/gpu/drm/i915/display/intel_fbdev.c | 6 +- > drivers/gpu/drm/i915/gem/i915_gem_domain.c | 13 +++++ > .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 34 ++++++------ > drivers/gpu/drm/i915/gem/i915_gem_mman.c | 2 +- > drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 2 +- > drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 4 +- > .../gpu/drm/i915/gem/selftests/huge_pages.c | 2 +- > .../i915/gem/selftests/i915_gem_client_blt.c | 15 ++--- > .../drm/i915/gem/selftests/i915_gem_context.c | 19 +++++-- > .../drm/i915/gem/selftests/i915_gem_mman.c | 2 +- > .../drm/i915/gem/selftests/igt_gem_utils.c | 6 +- > drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 2 +- > drivers/gpu/drm/i915/gt/gen7_renderclear.c | 2 +- > drivers/gpu/drm/i915/gt/gen8_ppgtt.c | 8 +-- > drivers/gpu/drm/i915/gt/intel_ggtt.c | 42 +++++--------- > drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c | 3 +- > drivers/gpu/drm/i915/gt/intel_ppgtt.c | 5 +- > drivers/gpu/drm/i915/gt/intel_renderstate.c | 2 +- > .../gpu/drm/i915/gt/intel_ring_submission.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_engine_cs.c | 8 +-- > drivers/gpu/drm/i915/gt/selftest_execlists.c | 18 +++--- > drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 15 ++--- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 16 +++--- > .../drm/i915/gt/selftest_ring_submission.c | 2 +- > drivers/gpu/drm/i915/gt/selftest_rps.c | 12 ++-- > .../gpu/drm/i915/gt/selftest_workarounds.c | 8 +-- > drivers/gpu/drm/i915/i915_cmd_parser.c | 4 +- > drivers/gpu/drm/i915/i915_debugfs.c | 2 +- > drivers/gpu/drm/i915/i915_gem_gtt.h | 1 + > drivers/gpu/drm/i915/i915_perf.c | 2 +- > drivers/gpu/drm/i915/i915_vma.c | 55 ++++++++++++++----- > drivers/gpu/drm/i915/i915_vma.h | 24 +++++++- > drivers/gpu/drm/i915/i915_vma_types.h | 3 +- > drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 12 +++- > drivers/gpu/drm/i915/selftests/i915_request.c | 20 +++---- > drivers/gpu/drm/i915/selftests/igt_spinner.c | 8 +-- > 37 files changed, 226 insertions(+), 159 deletions(-) > > -- > 2.31.1 >