Bug 106524 - X Server Segfault after resizing framebuffer
Summary: X Server Segfault after resizing framebuffer
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Chris Wilson
QA Contact: Intel GFX Bugs mailing list
Depends on:
Reported: 2018-05-15 07:23 UTC by xplodgui
Modified: 2019-11-27 13:49 UTC (History)
0 users

See Also:
i915 platform:
i915 features:

Xorg crash log (61.01 KB, text/x-log)
2018-05-15 07:23 UTC, xplodgui
no flags Details
Xorg log with full debug of the Intel driver (367.88 KB, text/x-log)
2018-05-17 06:56 UTC, xplodgui
no flags Details

Description xplodgui 2018-05-15 07:23:22 UTC
Created attachment 139575 [details]
Xorg crash log

Hello there,

I have a Razer Blade 14" (2016), which has an integrated Intel graphics and a dedicated NVIDIA GTX 1060M GPU to which the HDMI port is physically routed.

I am using the Intel and Nouveau driver to drive 3 screens: the integrated 3200x1800 panel on eDP1, an AOC 25" 2560x1600 screen through a USB-C to HDMI adapter on DP1, and another AOC 25" 2560x1600 screen through the dedicated HDMI port on HDMI-1-2.

I manage to randomly get them to work: most of the time, as soon as I plug in the HDMI cable, the X server crashes in loop. I attached the log, I suspect the total resolution is bigger than what is accepted by the Intel GPU or something, even though in Ubuntu I forced the integrated panel resolution to 2560x1600 to get below 8192x8192, it tries to assign a total surface of 8320x1800.

Is there some way to force the integrated panel to a lower resolution? I am using my laptop primarily at work, and attached to external screens, so I couldn't care less if it was running at 3200x1800 or 2560x1600.

Regardless, there's a crash that needs to be fixed I guess :)

Here's my Xorg.conf (required so that xrandr lists the Nvidia adapter and detects the HDMI screen):

Section "ServerFlags"
    Option "IgnoreABI" "1"

Section "Device"
    Identifier "Nvidia card"
    Driver "nouveau"

I attached the Xorg.0.log of the crash.
Running Ubuntu 18.04 LTS. Here are the packages versions:

ii  xserver-xorg                                                     1:7.7+19ubuntu7                                          amd64        X.Org X server
ii  xserver-xorg-core                                                2:1.19.6-1ubuntu4                                        amd64        Xorg X server - core server
ii  xserver-xorg-input-all                                           1:7.7+19ubuntu7                                          amd64        X.Org X server -- input driver metapackage
ii  xserver-xorg-input-evdev                                         1:2.10.5-1ubuntu1                                        amd64        X.Org X server -- evdev input driver
ii  xserver-xorg-input-libinput                                      0.27.1-1                                                 amd64        X.Org X server -- libinput input driver
ii  xserver-xorg-input-synaptics                                     1.9.0-1ubuntu1                                           amd64        Synaptics TouchPad driver for X.Org server
ii  xserver-xorg-input-void                                          1:1.4.1-1build3                                          amd64        X.Org X server -- void input driver
ii  xserver-xorg-input-wacom                                         1:0.36.1-0ubuntu1                                        amd64        X.Org X server -- Wacom input driver
ii  xserver-xorg-legacy                                              2:1.19.6-1ubuntu4                                        amd64        setuid root Xorg server wrapper
ii  xserver-xorg-video-all                                           1:7.7+19ubuntu7                                          amd64        X.Org X server -- output driver metapackage
ii  xserver-xorg-video-amdgpu                                        18.0.1-1                                                 amd64        X.Org X server -- AMDGPU display driver
ii  xserver-xorg-video-ati                                           1:18.0.1-1                                               amd64        X.Org X server -- AMD/ATI display driver wrapper
ii  xserver-xorg-video-dummy                                         1:0.3.8-1build1                                          amd64        X.Org X server -- dummy display driver
ii  xserver-xorg-video-fbdev                                         1:0.4.4-1build6                                          amd64        X.Org X server -- fbdev display driver
ii  xserver-xorg-video-intel                                         2:2.99.917+git20171229-1                                 amd64        X.Org X server -- Intel i8xx, i9xx display driver
ii  xserver-xorg-video-nouveau                                       1:1.0.15-2                                               amd64        X.Org X server -- Nouveau display driver
ii  xserver-xorg-video-qxl                                           0.1.5-2build1                                            amd64        X.Org X server -- QXL display driver
ii  xserver-xorg-video-radeon                                        1:18.0.1-1                                               amd64        X.Org X server -- AMD/ATI Radeon display driver
ii  xserver-xorg-video-vesa                                          1:2.3.4-1build3                                          amd64        X.Org X server -- VESA display driver
ii  xserver-xorg-video-vmware                                        1:13.2.1-1build1                                         amd64        X.Org X server -- VMware display driver
Comment 1 Chris Wilson 2018-05-15 07:30:16 UTC
Hmm, that stack trace is very unhelpful (NULL pointer dereference from nowhere, so I presume a NULL function pointer). Could you compile https://cgit.freedesktop.org/xorg/driver/xf86-video-intel/ with --enable-debug=full and attach the rather verbose output? That should help pinpoint whereabouts it went into neverneverland.
Comment 2 xplodgui 2018-05-15 07:31:27 UTC
I did a few other quick tests: it seems to work a bit more reliably if I boot the machine with just the dedicated HDMI plugged in, then only plugging in the USB-C adapter once the machine is booted.

It however seems unrelated to the resolution change, as it crashed with a lower resolution as well:

[    35.946] (II) intel(0): Modeline "3200x1800"x0.0  248.90  3200 3248 3280 3360  1800 1803 1808 1852 -hsync -vsync (74.1 kHz e)
[    36.112] (II) intel(0): resizing framebuffer to 5760x1800
[    36.216] (EE) 
[    36.216] (EE) Backtrace:
[    36.216] (EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x4d) [0x5588839918ad]
[    36.216] (EE) 1: /usr/lib/xorg/Xorg (0x5588837d9000+0x1bc649) [0x558883995649]
[    36.216] (EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f5e78286000+0x12890) [0x7f5e78298890]
[    36.217] (EE) 
[    36.217] (EE) Segmentation fault at address 0x0

Comment 3 xplodgui 2018-05-15 07:32:02 UTC
Our comments crossed each other :) I'll build that and get back to you asap.
Comment 4 xplodgui 2018-05-17 06:56:39 UTC
Created attachment 139607 [details]
Xorg log with full debug of the Intel driver

Here's the log with the full debug on the Intel driver
Comment 5 Martin Peres 2019-11-27 13:49:44 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel/issues/155.

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.