Bug 106640

Summary: [CI][IGT] Hang with test sequence: gem_tiled_swapping@non-threaded drv_suspend@sysfs-reader
Product: DRI Reporter: Tomi Sarvela <tomi.p.sarvela>
Component: DRM/IntelAssignee: Intel GFX Bugs mailing list <intel-gfx-bugs>
Status: CLOSED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: normal    
Priority: medium CC: intel-gfx-bugs
Version: DRI git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: BDW, BSW/CHT, BXT, BYT, CFL, CNL, GLK, HSW, IVB, KBL, SKL, SNB i915 features: power/suspend-resume

Description Tomi Sarvela 2018-05-24 07:41:35 UTC
Intel gens newer than ILK (SNB+) seem to hang/reboot reliably with test sequence:

igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-wc
igt@gem_tiled_swapping@non-threaded
igt@drv_suspend@sysfs-reader

Example:
https://intel-gfx-ci.01.org/tree/drm-tip/drmtip_47/fi-kbl-guc/igt@drv_suspend@sysfs-reader.html

From Chris Wilson:
the race between i915 trying to swapin and scsi turning off is real
Comment 1 Chris Wilson 2018-05-24 08:27:37 UTC
One version of https://patchwork.freedesktop.org/series/43575/ will fix it.
Comment 2 Chris Wilson 2018-05-25 13:55:51 UTC
commit 73b66f8731573a5fa74799dfabb4cdfe513b9241
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri May 25 10:26:29 2018 +0100

    drm/i915: Prepare GEM for suspend earlier
    
    In order to prepare the GPU for sleeping, we may want to submit commands
    to it. This is a complicated process that may even require some swapping
    in from shmemfs, if the GPU was in the wrong state. As such, we need to
    do this preparation step synchronously before the rest of the system has
    started to turn off (e.g. swapin fails if scsi is suspended).
    Fortunately, we are provided with a such a hook, pm_ops.prepare().
    
    v2: Compile cleanup
    v3: Fewer asserts, fewer problems?
    
    v4: Ville pointed out that in some circumstances (such as switching off
    the overlay) the display code may issue a GPU request. This is
    unexpected, and will result in us going to sleep with us believing the
    GPU is still awake (though all user work has been saved). Add a comment
    to remind our future selves of what trouble brews.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106640
    Testcase: igt/drv_suspend after igt/gem_tiled_swapping
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Link: https://patchwork.freedesktop.org/patch/msgid/20180525092629.1456-1-chris@chris-wilson.co.uk
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Comment 3 Jani Saarinen 2018-06-19 14:25:52 UTC
Closing, thanks.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.