[Intel-gfx] [PATCH] drm/i915/userptr: Never allow userptr into the mappable GGTT

Sasha Levin sashal at kernel.org
Sat Sep 28 20:03:02 UTC 2019


Hi,

[This is an automated email]

This commit has been processed because it contains a -stable tag.
The stable tag indicates that it's relevant for the following trees: all

The bot has tested the following trees: v5.3.1, v5.2.17, v4.19.75, v4.14.146, v4.9.194, v4.4.194.

v5.3.1: Build OK!
v5.2.17: Failed to apply! Possible dependencies:
    09407579abf5 ("drm/i915: Store the default sseu setup on the engine")
    112ed2d31a46 ("drm/i915: Move GraphicsTechnology files under gt/")
    5e5d2e209e08 ("drm/i915: Split GEM object type definition to its own header")

v4.19.75: Failed to apply! Possible dependencies:
    41b4deeaa123 ("RDMA/umem: Make ib_umem_odp into a sub structure of ib_umem")
    484d9a844d0d ("drm/i915/userptr: Avoid struct_mutex recursion for mmu_invalidate_range_start")
    597ecc5a0954 ("RDMA/umem: Get rid of struct ib_umem.odp_data")
    5d6527a784f7 ("mm/mmu_notifier: use structure for invalidate_range_start/end callback")
    b5231b019d76 ("RDMA/umem: Use ib_umem_odp in all function signatures connected to ODP")
    c9990ab39b6e ("RDMA/umem: Move all the ODP related stuff out of ucontext and into per_mm")
    d4b4dd1b9706 ("RDMA/umem: Do not use current->tgid to track the mm_struct")

v4.14.146: Failed to apply! Possible dependencies:
    17533bf95719 ("drm/i915: Rename lvds_use_ssc modparam to panel_use_ssc")
    3dcf4f207e8e ("drm/i915: Extend private i915_param_named macro with description")
    484d9a844d0d ("drm/i915/userptr: Avoid struct_mutex recursion for mmu_invalidate_range_start")
    4f044a88a86a ("drm/i915: Rename global i915 to i915_modparams")
    5602452e4c99 ("drm/i915: Use __sg_alloc_table_from_pages for userptr allocations")
    6d2cb5aa383b ("drm/i915/execlists: Read the context-status buffer from the HWSP")
    88c880bbdebe ("drm/i915: Lift has-pinned-pages assert to caller of ____i915_gem_object_get_pages")
    a5c08166265a ("drm/i915: introduce page_size members")
    acd1c1e621fc ("drm/i915: Refactor unsettting obj->mm.pages")
    c95469324518 ("drm/i915: Introduce custom variant of module_param_named macro")
    f1fa4f442c82 ("drm/i915: Refactor testing obj->mm.pages")

v4.9.194: Failed to apply! Possible dependencies:
    03ac84f1830e ("drm/i915: Pass around sg_table to get_pages/put_pages backend")
    0e70447605f4 ("drm/i915: Move common code out of i915_gpu_error.c")
    1b36595ffb35 ("drm/i915: Show RING registers through debugfs")
    275f039db56f ("drm/i915: Move user fault tracking to a separate list")
    3594a3e21f1f ("drm/i915: Remove superfluous locking around userfault_list")
    3b3f1650b1ca ("drm/i915: Allocate intel_engine_cs structure only for the enabled engines")
    484d9a844d0d ("drm/i915/userptr: Avoid struct_mutex recursion for mmu_invalidate_range_start")
    548625ee8fde ("drm/i915: Improve lockdep tracking for obj->mm.lock")
    7c108fd8feac ("drm/i915: Move fence cancellation to runtime suspend")
    8baa1f04b9ed ("drm/i915: Update debugfs describe_obj() to show fault-mappable")
    96d776345277 ("drm/i915: Use a radixtree for random access to the object's backing storage")
    9c870d03674f ("drm/i915: Use RPM as the barrier for controlling user mmap access")
    a4f5ea64f0a8 ("drm/i915: Refactor object page API")
    d636951ec01b ("drm/i915: Cleanup instdone collection")
    f8a7fde45610 ("drm/i915: Defer active reference until required")

v4.4.194: Failed to apply! Possible dependencies:
    033908aed5a5 ("drm/i915: mark GEM object pages dirty when mapped & written by the CPU")
    03ac84f1830e ("drm/i915: Pass around sg_table to get_pages/put_pages backend")
    09cbfeaf1a5a ("mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros")
    0e749e54244e ("dax: increase granularity of dax_clear_blocks() operations")
    4420cfd3f51c ("staging: lustre: format properly all comment blocks for LNet core")
    484d9a844d0d ("drm/i915/userptr: Avoid struct_mutex recursion for mmu_invalidate_range_start")
    4c3523623dc0 ("net: add driver for Netronome NFP4000/NFP6000 NIC VFs")
    52db400fcd50 ("pmem, dax: clean up clear_pmem()")
    548625ee8fde ("drm/i915: Improve lockdep tracking for obj->mm.lock")
    5fd88337d209 ("staging: lustre: fix all conditional comparison to zero in LNet layer")
    85d1225ec066 ("drm/i915: Introduce & use new lightweight SGL iterators")
    a188222b6ed2 ("net: Rename NETIF_F_ALL_CSUM to NETIF_F_CSUM_MASK")
    b2e0d1625e19 ("dax: fix lifetime of in-kernel dax mappings with dax_map_atomic()")
    b9bcd14a2b91 ("drm/i915: Extract checking for backing struct pages to a helper")
    d1a5f2b4d8a1 ("block: use DAX for partition table reads")
    de4726649b6b ("drm/i915: Allow i915_gem_object_get_page() on userptr as well")
    e10624f8c097 ("pmem: fail io-requests to known bad blocks")


NOTE: The patch will not be queued to stable trees until it is upstream.

How should we proceed with this patch?

--
Thanks,
Sasha


More information about the Intel-gfx mailing list