After upgrade to latest kernel 5.3.11 on Fedora 31, while browsing via chromium with hardware acceleration display corruption suddenly appeared. Resolving it requires a reboot. X.org logs show: "[ 18200.032] (EE) intel(0): Failed to submit rendering commands (Invalid argument), disabling acceleration." Kernel log is unremarkable. Switching to text terminal and back to X does not resolve the issue. /sys/kernel/debug/dri/0/i915_error_state is empty.
Created attachment 145965 [details] Screenshot of screen corruption
[ 2.799789] [drm] Incompatible option detected: enable_guc=3, GuC submission not supported! [ 2.800530] [drm] Switching to non-GuC submission mode! [ 2.801843] fb0: switching to inteldrmfb from EFI VGA [ 2.802750] i915 0000:00:02.0: vgaarb: deactivate vga console [ 2.804954] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [ 2.804955] [drm] Driver supports precise vblank timestamp query. [ 2.805703] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem [ 2.805986] [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4) [ 3.112744] [drm] HuC: Loaded firmware i915/kbl_huc_ver02_00_1810.bin (version 2.0) [ 3.123739] [drm] GuC: Loaded firmware i915/kbl_guc_32.0.3.bin (version 32.0) [ 3.123857] [drm] CT: enabled [ 3.134819] i915 0000:00:02.0: GuC firmware version 32.0 [ 3.134820] i915 0000:00:02.0: GuC submission disabled [ 3.134821] i915 0000:00:02.0: HuC enabled [ 3.136512] [drm] Initialized i915 1.6.0 20190619 for 0000:00:02.0 on minor 0 [ 3.196738] fbcon: i915drmfb (fb0) is primary device [ 3.201428] i915 0000:00:02.0: fb0: i915drmfb frame buffer device [ 7.384231] [drm:intel_dp_start_link_train [i915]] *ERROR* failed to enable link training
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 630 (Mobile) [8086:3e9b] (rev 02)
Xorg log, please?
Also can you please grab drm.debug=3 while provoking the error?
Created attachment 145966 [details] X.org.0.log
So the bug is reproducible dragging a file in Dolphin with drag-and-drop from one screen to another. Not reliably but it does trigger after several attempts. Xorg: [ 202.692] (EE) intel(0): Failed to submit rendering commands (Invalid argument), disabling acceleration. Kernel: [ 202.685093] [drm:vblank_disable_fn [drm]] disabling vblank on crtc 1 [ 202.685225] [drm:drm_ioctl [drm]] pid=2098, dev=0xe200, auth=1, DRM_IOCTL_MODE_CURSOR [ 202.685262] [drm:drm_mode_object_get [drm]] OBJ ID: 128 (1) [ 202.685296] [drm:drm_mode_object_get [drm]] OBJ ID: 128 (2) [ 202.685327] [drm:drm_mode_object_get [drm]] OBJ ID: 124 (1) [ 202.685356] [drm:drm_mode_object_get [drm]] OBJ ID: 130 (1) [ 202.685385] [drm:drm_mode_object_get [drm]] OBJ ID: 128 (3) [ 202.685413] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 128 (4) [ 202.685452] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 124 (2) [ 202.685480] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 130 (2) [ 202.685508] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 128 (3) [ 202.685535] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 128 (2) [ 202.692449] [drm:drm_ioctl [drm]] pid=2098, dev=0xe200, auth=1, DRM_IOCTL_MODE_CURSOR [ 202.692486] [drm:drm_mode_object_get [drm]] OBJ ID: 128 (1) [ 202.692519] [drm:drm_mode_object_get [drm]] OBJ ID: 128 (2) [ 202.692549] [drm:drm_mode_object_get [drm]] OBJ ID: 124 (1) [ 202.692578] [drm:drm_mode_object_get [drm]] OBJ ID: 130 (1) [ 202.692606] [drm:drm_mode_object_get [drm]] OBJ ID: 128 (3) [ 202.692634] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 128 (4) [ 202.692673] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 124 (2) [ 202.692702] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 130 (2) [ 202.692730] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 128 (3) [ 202.692758] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 128 (2) [ 202.696359] [drm:vblank_disable_fn [drm]] disabling vblank on crtc 2
Created attachment 145967 [details] DRM kernel logs
[ 202.675263] [drm:drm_ioctl [drm]] pid=2011, dev=0xe200, auth=1, I915_GEM_EXEC BUFFER2_WR [ 202.675510] [drm:intel_engine_cmd_parser [i915]] CMD: Command length exceeds batch length: 0x54F00808 length=10 batchlen=4 [ 202.675547] [drm:drm_ioctl [drm]] pid=2011, ret = -22
Fwiw, it is at least the kernel pointing out a bug in userspace. I'm disappointed that the gfx were not able to recover, but we can now find the root cause in sna. Would it be possible for you to compile xf86-video-intel with --enable-debug=full, xz/lzma the last 10,000 lines of the log file (it will be huge) and attach? Otherwise, I'm looking for which XY_SRC_COPY miscomputed the remaining space in the batch.
I'm travelling and not back in my multi-monitor setup until Tuesday. I should be able to do it then.
Spotted an issue related to XY_SRC_COPY box overflow, commit e628d22673dfa494230e6f79ceff7d178137c71a (HEAD -> master, upstream/master) Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Sun Nov 17 15:10:56 2019 +0000 sna: Fix overflow calculation for number of boxes that fit We detect when the number of boxes we wished to emit into the batch would overflow, but then miscalculated the number that would actually fit. References: https://bugs.freedesktop.org/show_bug.cgi?id=112296 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> so fingers crossed.
(In reply to Chris Wilson from comment #12) > Spotted an issue related to XY_SRC_COPY box overflow, > > commit e628d22673dfa494230e6f79ceff7d178137c71a (HEAD -> master, > upstream/master) Nice! Is this drm-tip I should be testing? I can't find this commit anywhere. I frankly would rather apply this patch to my current Fedora kernel directly.
(In reply to Arcadiy Ivanov from comment #13) > (In reply to Chris Wilson from comment #12) > > Spotted an issue related to XY_SRC_COPY box overflow, > > > > commit e628d22673dfa494230e6f79ceff7d178137c71a (HEAD -> master, > > upstream/master) > > Nice! Is this drm-tip I should be testing? I can't find this commit > anywhere. I frankly would rather apply this patch to my current Fedora > kernel directly. That was for x86-video-intel.
(In reply to Chris Wilson from comment #14) > That was for x86-video-intel. I'm happy to report that with x86-video-intel HEAD (e628d22673dfa494230e6f79ceff7d178137c71a) I'm no longer able to reproduce the problem.
Panic over kernel regression eases slightly. Thanks. Hopefully, we caught them all.
Oh crap, it just happened again. There were many drags-and-drops until finally it was triggere instead of a reliable one. Sorry. [ 65107.906] (II) intel(0): switch to mode 1920x1080@60.0 on eDP1 using pipe 0, position (2986, 2160), rotation normal, reflection none [ 65107.958] (II) intel(0): switch to mode 3840x2160@60.0 on DP2 using pipe 1, position (2986, 0), rotation normal, reflection none [ 65109.173] (II) intel(0): switch to mode 3840x2160@60.0 on DP1-1 using pipe 2, position (0, 0), rotation right, reflection none [ 68717.739] (II) intel(0): switch to mode 1920x1080@60.0 on eDP1 using pipe 0, position (0, 0), rotation normal, reflection none [ 68717.773] (II) intel(0): resizing framebuffer to 1920x1080 [ 68720.841] (II) intel(0): resizing framebuffer to 6826x3840 [ 68720.876] (II) intel(0): switch to mode 1920x1080@60.0 on eDP1 using pipe 0, position (2986, 2160), rotation normal, reflection none [ 68720.928] (II) intel(0): switch to mode 3840x2160@60.0 on DP2 using pipe 1, position (2986, 0), rotation normal, reflection none [ 68722.164] (II) intel(0): switch to mode 3840x2160@60.0 on DP1-1 using pipe 2, position (0, 0), rotation right, reflection none [ 81820.521] (EE) intel(0): Failed to submit rendering commands (Invalid argument), disabling acceleration.
Nevermind, I'm a moron, the built drivers went into the wrong prefix. So far so good, I'll reopen if the bug pops up again. 12.086] (II) Loading /usr/lib64/xorg/modules/drivers/intel_drv.so [ 12.088] (II) Module intel: vendor="X.Org Foundation" [ 12.089] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets: [ 12.089] (II) intel: Driver for Intel(R) HD Graphics [ 12.089] (II) intel: Driver for Intel(R) Iris(TM) Graphics [ 12.089] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics [ 12.090] (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20190619 [ 12.090] (II) intel(0): SNA compiled from 2.99.917-896-ge628d226 [ 12.092] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD Graphics [ 12.092] (--) intel(0): CPU: x86-64, sse2, sse3, ssse3, sse4.1, sse4.2, avx, avx2; using a maximum of 8 threads [ 12.092] (II) intel(0): Creating default Display subsection in Screen section [ 12.092] (==) intel(0): Depth 24, (--) framebuffer bpp 32 [ 12.092] (==) intel(0): RGB weight 888 [ 12.092] (==) intel(0): Default visual is TrueColor [ 12.092] (II) Applying OutputClass "intel" options to /dev/dri/card0 [ 12.092] (II) Applying OutputClass "intel" options to /dev/dri/card0 [ 12.092] (**) intel(0): Option "AccelMethod" "sna" [ 12.092] (**) intel(0): Option "DRI" "3" [ 12.092] (**) intel(0): Option "TearFree" "true" [ 12.093] (II) intel(0): Output eDP1 has no monitor section [ 12.093] (**) intel(0): Found backlight control interface intel_backlight (type 'raw') for output eDP1 [ 12.093] (II) intel(0): Enabled output eDP1 [ 12.093] (II) intel(0): Output DP1 has no monitor section [ 12.093] (II) intel(0): Enabled output DP1 [ 12.093] (II) intel(0): Output DP2 has no monitor section [ 12.093] (II) intel(0): Enabled output DP2 [ 12.093] (II) intel(0): Output DP3 has no monitor section [ 12.093] (II) intel(0): Enabled output DP3 [ 12.093] (II) intel(0): Output DP1-1 has no monitor section [ 12.093] (II) intel(0): Enabled output DP1-1 [ 12.093] (II) intel(0): Output DP1-2 has no monitor section [ 12.093] (II) intel(0): Enabled output DP1-2 [ 12.093] (II) intel(0): Output DP1-3 has no monitor section [ 12.093] (II) intel(0): Enabled output DP1-3 [ 12.093] (--) intel(0): Using a maximum size of 256x256 for hardware cursors [ 12.093] (II) intel(0): Output VIRTUAL1 has no monitor section [ 12.093] (II) intel(0): Enabled output VIRTUAL1 [ 12.093] (--) intel(0): Output eDP1 using initial mode 1920x1080 on pipe 0 [ 12.093] (--) intel(0): Output DP2 using initial mode 1920x1080 on pipe 1 [ 12.093] (--) intel(0): Output DP1-1 using initial mode 1920x1080 on pipe 2 [ 12.094] (**) intel(0): TearFree enabled [ 12.094] (==) intel(0): Using gamma correction (1.0, 1.0, 1.0) [ 12.094] (==) intel(0): DPI set to (96, 96) [ 12.096] (II) intel(0): SNA initialized with Coffeelake (gen9) backend [ 12.096] (==) intel(0): Backing store enabled [ 12.096] (==) intel(0): Silken mouse enabled [ 12.096] (II) intel(0): HW Cursor enabled [ 12.097] (==) intel(0): DPMS enabled [ 12.097] (==) intel(0): Display hotplug detection enabled [ 12.097] (II) intel(0): [DRI2] Setup complete [ 12.097] (II) intel(0): [DRI2] DRI driver: i965 [ 12.097] (II) intel(0): [DRI2] VDPAU driver: va_gl [ 12.097] (II) intel(0): direct rendering: DRI2 DRI3 enabled [ 12.097] (II) intel(0): hardware support for Present enabled [ 12.119] (II) intel(0): switch to mode 1920x1080@60.0 on eDP1 using pipe 0, position (0, 0), rotation normal, reflection none [ 12.122] (II) intel(0): switch to mode 1920x1080@60.0 on DP2 using pipe 1, position (0, 0), rotation normal, reflection none [ 12.133] (II) intel(0): switch to mode 1920x1080@60.0 on DP1-1 using pipe 2, position (0, 0), rotation normal, reflection none [ 12.142] (II) intel(0): Setting screen physical size to 508 x 285 [ 14.099] (II) intel(0): EDID vendor "SHP", prod id 5306 [ 14.099] (II) intel(0): Printing DDC gathered Modelines: [ 14.099] (II) intel(0): Modeline "1920x1080"x0.0 142.52 1920 1968 2000 2080 1080 1083 1088 1142 -hsync -vsync (68.5 kHz eP) [ 329.172] (II) intel(0): resizing framebuffer to 6826x3840 [ 329.248] (II) intel(0): switch to mode 1920x1080@60.0 on eDP1 using pipe 0, position (2986, 2160), rotation normal, reflection none [ 329.307] (II) intel(0): switch to mode 3840x2160@60.0 on DP1-1 using pipe 2, position (0, 0), rotation right, reflection none [ 331.817] (II) intel(0): switch to mode 3840x2160@60.0 on DP2 using pipe 1, position (2986, 0), rotation normal, reflection none
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.