You are not logged in.

#1 2015-12-23 11:42:02

orost
Member
Registered: 2015-12-23
Posts: 3

Xorg segfaults on Optimus laptop

I've installed Arch on an Nvidia Optimus laptop (Intel 530 + Nvidia GTX 980M), dualbooting with Windows 8.1. For a desktop enviroment, I installed XFCE4. Unfortunately Xorg crashes on startup (with startxfce4). This is the log:

[    12.249] 
X.Org X Server 1.18.0
Release Date: 2015-11-09
[    12.249] X Protocol Version 11, Revision 0
[    12.249] Build Operating System: Linux 4.2.3-1-ARCH x86_64 
[    12.249] Current Operating System: Linux def 4.2.5-1-ARCH #1 SMP PREEMPT Tue Oct 27 08:13:28 CET 2015 x86_64
[    12.249] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=c2b7710c-60f3-4bc5-a322-748d93ebb0a8 rw quiet
[    12.249] Build Date: 18 November 2015  08:07:09AM
[    12.249]  
[    12.249] Current version of pixman: 0.32.8
[    12.249] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[    12.249] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    12.249] (==) Log file: "/var/log/Xorg.0.log", Time: Wed Dec 23 11:07:43 2015
[    12.250] (II) Loader magic: 0x819d40
[    12.250] (II) Module ABI versions:
[    12.250] 	X.Org ANSI C Emulation: 0.4
[    12.250] 	X.Org Video Driver: 20.0
[    12.250] 	X.Org XInput driver : 22.1
[    12.250] 	X.Org Server Extension : 9.0
[    12.251] (++) using VT number 2

[    12.251] (--) controlling tty is VT number 2, auto-enabling KeepTty
[    12.252] (II) systemd-logind: took control of session /org/freedesktop/login1/session/c2
[    12.252] (II) xfree86: Adding drm device (/dev/dri/card0)
[    12.252] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 8 paused 0
[    12.253] (--) PCI:*(0:0:2:0) 8086:191b:1558:6540 rev 6, Mem @ 0xdd000000/16777216, 0xa0000000/536870912, I/O @ 0x0000f000/64
[    12.253] (--) PCI: (0:1:0:0) 10de:13d7:1558:6540 rev 161, Mem @ 0xde000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/524288
[    12.253] (EE) 
[    12.253] (EE) Backtrace:
[    12.253] (EE) 0: /usr/lib/xorg-server/Xorg (OsLookupColor+0x139) [0x598529]
[    12.254] (EE) 1: /usr/lib/libc.so.6 (__restore_rt+0x0) [0x7efe79d8267f]
[    12.255] (EE) 2: /usr/lib/xorg-server/Xorg (xf86PlatformMatchDriver+0xa1) [0x497e31]
[    12.255] (EE) 3: /usr/lib/xorg-server/Xorg (config_fini+0x192d) [0x49c8ed]
[    12.255] (EE) 4: /usr/lib/xorg-server/Xorg (config_fini+0x1acc) [0x49cc3c]
[    12.255] (EE) 5: /usr/lib/xorg-server/Xorg (InitOutput+0x798) [0x47a868]
[    12.255] (EE) 6: /usr/lib/xorg-server/Xorg (remove_fs_handlers+0x264) [0x43a0d4]
[    12.255] (EE) 7: /usr/lib/libc.so.6 (__libc_start_main+0xf0) [0x7efe79d6f610]
[    12.255] (EE) 8: /usr/lib/xorg-server/Xorg (_start+0x29) [0x4245d9]
[    12.256] (EE) 9: ? (?+0x29) [0x29]
[    12.256] (EE) 
[    12.256] (EE) Segmentation fault at address 0x50
[    12.256] (EE) 
Fatal server error:
[    12.256] (EE) Caught signal 11 (Segmentation fault). Server aborting
[    12.256] (EE) 
[    12.256] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[    12.256] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    12.256] (EE) 

(Not a copy-paste error - it does cut off mid-line like this)

Both graphics cards are detected:

# lspci | grep "VGA"
00:02.0 VGA compatible controller: Intel Corporation Device 191b (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GM204M [GeForce GTX 980M] (rev a1)

And both drivers are loaded:

# lsmod | grep -E "i915|nvidia"
nvidia               8708096  0
i915                 1056768  0
drm_kms_helper        102400  1 i915
drm                   286720  4 i915,drm_kms_helper,nvidia
intel_gtt              20480  1 i915
i2c_algo_bit           16384  1 i915
video                  32768  1 i915
button                 16384  1 i915

This is with empty Xorg configuration. Trying to autogenerate a config gives me:

# Xorg -configure
X.Org X Server 1.18.0
Release Date: 2015-11-09
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.2.3-1-ARCH x86_64 
Current Operating System: Linux def 4.2.5-1-ARCH #1 SMP PREEMPT Tue Oct 27 08:13:28 CET 2015 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=c2b7710c-60f3-4bc5-a322-748d93ebb0a8 rw quiet
Build Date: 18 November 2015  08:07:09AM
 
Current version of pixman: 0.32.8
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Dec 23 11:30:32 2015
List of video drivers:
	intel
	nvidia
	modesetting
(++) Using config file: "/root/xorg.conf.new"
Number of created screens does not match number of detected devices.
  Configuration failed.
(EE) Server terminated with error (2). Closing log file.

I've seen some posts about Xorg segaults - but answers usually involve modification to the Xorg config, and I can't get a config to modify in the first place, so I'm lost on how to try them.

Edit: with Bumblebee running, launching Xorg (normally or with -configure) completely freezes the system

Last edited by orost (2015-12-23 11:53:36)

Offline

#2 2015-12-23 15:16:17

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,654

Re: Xorg segfaults on Optimus laptop

Welcome to the Arch Linux forums smile

Is this an Intel processor?  If so, I note that you have not enabled the microcode updates

[    12.249] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=c2b7710c-60f3-4bc5-a322-748d93ebb0a8 rw quiet

This may solve your problems.  It is a good place to start.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way

Offline

#3 2015-12-23 15:26:48

Chreutz
Member
Registered: 2014-05-14
Posts: 15

Re: Xorg segfaults on Optimus laptop

Be aware that the newest 358.x Nvidia driver breaks some compatibility with bumblebee. I don't yet know if this is relevant to your main problem, but I thought I'd mention it.

The new nvidia driver kit includes an  "nvidia_modeset" module, which the current bumblebee does not take into account. It then fails to turn the Nvidia GPU off after use.

GitHub user arafey has made some changes to bumblebee that fixes it.

https://github.com/arafey/Bumblebee

I can supply you a PKGBUILD file, if you want it. And help you install it, depending on how experienced in Arch you are.

Offline

#4 2015-12-23 15:45:03

Chreutz
Member
Registered: 2014-05-14
Posts: 15

Re: Xorg segfaults on Optimus laptop

Additionally, regarding your problem: I'm rather certain that the nvidia module is not supposed to load on startup. Bumblebee loads and unloads the nvidia modules when you run the optirun/primusrun commands. Could this be related to your problem?

Offline

#5 2015-12-23 17:39:01

orost
Member
Registered: 2015-12-23
Posts: 3

Re: Xorg segfaults on Optimus laptop

@ewaller There are currently no microcode updates for my CPU (i7-6700HQ), but thank you for pointing it out, I'm sure it will save me from some future problems.

@Chreutz Thank you, I'll let you know once I need to figure out Bumblebee (do I understand it correctly that I don't need it to just run Xorg, but only if I want to use the dedicated GPU?). I will eventually do that but for now I would be happy to see the desktop. (Running Bumblebee that I mentioned was a bit of a stab in the dark.)

Anyway I blacklisted the nvidia module and after a reboot Xorg didn't crash but said this instead:

[    38.153] 
X.Org X Server 1.18.0
Release Date: 2015-11-09
[    38.153] X Protocol Version 11, Revision 0
[    38.153] Build Operating System: Linux 4.2.3-1-ARCH x86_64 
[    38.154] Current Operating System: Linux def 4.2.5-1-ARCH #1 SMP PREEMPT Tue Oct 27 08:13:28 CET 2015 x86_64
[    38.154] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=c2b7710c-60f3-4bc5-a322-748d93ebb0a8 rw quiet
[    38.154] Build Date: 18 November 2015  08:07:09AM
[    38.154]  
[    38.154] Current version of pixman: 0.32.8
[    38.154] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[    38.154] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    38.154] (==) Log file: "/var/log/Xorg.0.log", Time: Wed Dec 23 17:21:39 2015
[    38.154] (II) Loader magic: 0x819d40
[    38.154] (II) Module ABI versions:
[    38.154] 	X.Org ANSI C Emulation: 0.4
[    38.154] 	X.Org Video Driver: 20.0
[    38.154] 	X.Org XInput driver : 22.1
[    38.154] 	X.Org Server Extension : 9.0
[    38.156] (--) using VT number 3

[    38.156] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[    38.158] (--) PCI:*(0:0:2:0) 8086:191b:1558:6540 rev 6, Mem @ 0xdd000000/16777216, 0xa0000000/536870912, I/O @ 0x0000f000/64
[    38.158] (--) PCI: (0:1:0:0) 10de:13d7:1558:6540 rev 161, Mem @ 0xde000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/524288
[    38.158] List of video drivers:
[    38.158] 	intel
[    38.158] 	nvidia
[    38.158] 	modesetting
[    38.158] (II) LoadModule: "intel"
[    38.158] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[    38.159] (II) Module intel: vendor="X.Org Foundation"
[    38.159] 	compiled for 1.18.0, module version = 2.99.917
[    38.159] 	Module class: X.Org Video Driver
[    38.159] 	ABI class: X.Org Video Driver, version 20.0
[    38.159] (II) LoadModule: "nvidia"
[    38.159] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[    38.164] (II) Module nvidia: vendor="NVIDIA Corporation"
[    38.164] 	compiled for 4.0.2, module version = 1.0.0
[    38.164] 	Module class: X.Org Video Driver
[    38.164] (II) LoadModule: "modesetting"
[    38.164] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[    38.164] (II) Module modesetting: vendor="X.Org Foundation"
[    38.164] 	compiled for 1.18.0, module version = 1.18.0
[    38.164] 	Module class: X.Org Video Driver
[    38.164] 	ABI class: X.Org Video Driver, version 20.0
[    38.164] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
	i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
	915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
	Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
	GM45, 4 Series, G45/G43, Q45/Q43, G41, B43
[    38.164] (II) intel: Driver for Intel(R) HD Graphics: 2000-6000
[    38.164] (II) intel: Driver for Intel(R) Iris(TM) Graphics: 5100, 6100
[    38.164] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics: 5200, 6200, P6300
[    38.164] (II) NVIDIA dlloader X Driver  358.16  Mon Nov 16 18:32:40 PST 2015
[    38.164] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[    38.164] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[    38.197] (++) Using config file: "/root/xorg.conf.new"
[    38.197] (==) ServerLayout "X.org Configured"
[    38.197] (**) |-->Screen "Screen0" (0)
[    38.197] (**) |   |-->Monitor "Monitor0"
[    38.198] (**) |   |-->Device "Card0"
[    38.198] (**) |-->Screen "Screen1" (1)
[    38.198] (**) |   |-->Monitor "Monitor1"
[    38.198] (**) |   |-->Device "Card1"
[    38.198] (**) |-->Input Device "Mouse0"
[    38.198] (**) |-->Input Device "Keyboard0"
[    38.198] (==) Automatically adding devices
[    38.198] (==) Automatically enabling devices
[    38.198] (==) Automatically adding GPU devices
[    38.198] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    38.198] (WW) The directory "/usr/share/fonts/Type1/" does not exist.
[    38.198] 	Entry deleted from font path.
[    38.198] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".
[    38.198] 	Entry deleted from font path.
[    38.198] 	(Run 'mkfontdir' on "/usr/share/fonts/100dpi/").
[    38.198] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".
[    38.198] 	Entry deleted from font path.
[    38.198] 	(Run 'mkfontdir' on "/usr/share/fonts/75dpi/").
[    38.198] (WW) The directory "/usr/share/fonts/Type1/" does not exist.
[    38.198] 	Entry deleted from font path.
[    38.198] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".
[    38.198] 	Entry deleted from font path.
[    38.198] 	(Run 'mkfontdir' on "/usr/share/fonts/100dpi/").
[    38.198] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".
[    38.198] 	Entry deleted from font path.
[    38.198] 	(Run 'mkfontdir' on "/usr/share/fonts/75dpi/").
[    38.198] (**) FontPath set to:
	/usr/share/fonts/misc/,
	/usr/share/fonts/TTF/,
	/usr/share/fonts/OTF/,
	/usr/share/fonts/misc/,
	/usr/share/fonts/TTF/,
	/usr/share/fonts/OTF/
[    38.198] (**) ModulePath set to "/usr/lib/xorg/modules"
[    38.198] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[    38.198] (WW) Disabling Mouse0
[    38.198] (WW) Disabling Keyboard0
[    38.204] (II) Loading sub module "fb"
[    38.204] (II) LoadModule: "fb"
[    38.204] (II) Loading /usr/lib/xorg/modules/libfb.so
[    38.205] (II) Module fb: vendor="X.Org Foundation"
[    38.205] 	compiled for 1.18.0, module version = 1.0.0
[    38.205] 	ABI class: X.Org ANSI C Emulation, version 0.4
[    38.205] (II) Loading sub module "wfb"
[    38.205] (II) LoadModule: "wfb"
[    38.205] (II) Loading /usr/lib/xorg/modules/libwfb.so
[    38.206] (II) Module wfb: vendor="X.Org Foundation"
[    38.206] 	compiled for 1.18.0, module version = 1.0.0
[    38.206] 	ABI class: X.Org ANSI C Emulation, version 0.4
[    38.206] (II) Loading sub module "ramdac"
[    38.206] (II) LoadModule: "ramdac"
[    38.206] (II) Module "ramdac" already built-in
[    38.275] Number of created screens does not match number of detected devices.
  Configuration failed.

So the same error as with Xorg -configure, but now there's no crash to prevent me from seeing it. However after another reboot it's gone back to segfaulting, so maybe unloading nvidia wasn't even related.

I see it detected two screens, which doesn't seem right? I only have one monitor, the laptop's built-in one.

Also, something I forgot to mention before: on boot, I ocassionally see this message:

[    1.914535] snd_hda_intel 0000:00:1f.3: failed to add i915 component master (-19)

Looks related.

Also, I found on the wiki that my integrated GPU might require a kernel parameter to work (i915.preliminary_hw_support=1) so I tried that, but it didn't make a difference.

----

Anyway: maybe it's just that Skylake, being bleeding-edge hardware, is just not supported properly and I should wait a few kernel releases before trying to get Linux going on this laptop?

Last edited by orost (2015-12-23 17:51:12)

Offline

#6 2015-12-30 03:30:00

orost
Member
Registered: 2015-12-23
Posts: 3

Re: Xorg segfaults on Optimus laptop

Update: I got the system running by disabling hybrid graphics in UEFI settings, leaving only the discrete GPU enabled. This is suboptimal as having the big graphics card on at all times destroys battery life (about 1h30min instead of 5-6h) but at least it works at all.

Offline

Board footer

Powered by FluxBB