[Intel-xe] ✓ CI.checkpatch: success for Another attempt to fix two bind races

Patchwork patchwork at emeril.freedesktop.org
Sun Jul 2 22:19:51 UTC 2023


== Series Details ==

Series: Another attempt to fix two bind races
URL   : https://patchwork.freedesktop.org/series/120121/
State : success

== Summary ==

+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
c7d32770e3cd31d9fc134ce41f329b10aa33ee15
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 3c5c9b5d2a325f1177c6db1b6a2079fc99619b7f
Author: Matthew Brost <matthew.brost at intel.com>
Date:   Sun Jul 2 15:17:10 2023 -0700

    drm/xe: Make bind engines safe
    
    We currently have a race between bind engines which can result in
    corrupted page tables leading to faults.
    
    A simple example:
    bind A 0x0000-0x1000, engine A, has unsatisfied in-fence
    bind B 0x1000-0x2000, engine B, no in-fences
    exec A uses 0x1000-0x2000
    
    Bind B will pass bind A and exec A will fault. This occurs as bind A
    programs the root of the page table in a bind job which is held up by an
    in-fence. Bind B in this case just programs a leaf entry of the
    structure.
    
    To fix this introduce a per VM maple tree to track cross engine
    conflicts. In the above example bind A would insert an dependency in the
    maple tree with a key of 0x0-0x7fffffffff, bind B would find that
    dependency and its bind job would scheduled behind the unsatisfied
    in-fence and bind A's job.
    
    Cc: Thomas Hellström <thomas.hellstrom at linux.intel.com>
    Signed-off-by: Matthew Brost <matthew.brost at intel.com>
+ /mt/dim checkpatch 53bd6056f6ec9a4f6c341d4f24122ede47a43de9 drm-intel
a10aebd21 drm/xe: Make page-table updates using the default engine
3c5c9b5d2 drm/xe: Make bind engines safe




More information about the Intel-xe mailing list