User avatar
ikey
Project Founder
Posts: 1581
Joined: Sun Jul 27, 2014 10:42 pm
Location: Ireland
Contact: Website

Optimus Support Is Now Here

Mon Mar 06, 2017 12:25 am

Thought this one deserved a topic here

Optimus users!

If you have any custom funky configs - nuke them all please! Do a *full* upgrade on unstable (this will be synced tomorrow probably, or sooner) - and then just install your normal NVIDIA package (i.e. "nvidia-glx-driver")

Then just reboot.

Note this is "always on" behaviour right now, so yes, it will suck on the power a bit. You can just remove the driver and reboot to go back to nouveau. I will be working on an on-demand solution in the near future. Also note this method *is* upgrade proof!
Image

User avatar
ikey
Project Founder
Posts: 1581
Joined: Sun Jul 27, 2014 10:42 pm
Location: Ireland
Contact: Website

Re: Optimus Support Is Now Here

Mon Mar 06, 2017 12:55 am

Update: This is now in stable :)
Image

revrww
Posts: 2
Joined: Mon Mar 06, 2017 1:25 am

Re: Optimus Support Is Now Here

Mon Mar 06, 2017 4:48 am

I've got to say that you guys rock. I finally had Arch running Steam fairly well on my Dell Inspiron 7559, but I had never been about to get past the login screen on Solus. I managed to get logged into a tty and switched to the Unstable repo and upgraded. After I installed the Nvidia drivers, this computer has never run Tomb Raider 2013 as well as it is now. It is getting about twice the frame rate that Windows 10 was giving me before I kicked it to the curb. Thank you so much. I love Arch, but I feel like Solus is going to be my daily driver in the future. Keep up the good work.

Rickenbacker
Posts: 3
Joined: Sun Mar 05, 2017 10:33 am

Re: Optimus Support Is Now Here

Mon Mar 06, 2017 7:54 am

This is wonderful. Will try it on my Asus ROG when I get home!

User avatar
GumbyDamnIt!
Posts: 143
Joined: Wed Jan 11, 2017 5:59 pm
Location: Republic of Texas

Re: Optimus Support Is Now Here

Mon Mar 06, 2017 10:40 am

ikey wrote:
Mon Mar 06, 2017 12:25 am
Optimus users!

I will be working on an on-demand solution in the near future.
This is a huge step in the right direction! :D

Cheers!!!

okokok
Posts: 2
Joined: Tue Mar 07, 2017 10:37 am

Re: Optimus Support Is Now Here

Tue Mar 07, 2017 11:20 am

Hi! Thanks for the added support for Optimus. I have an Asus U36SD. For reference here is my lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 520M] (rev a1)
I just did a fresh install of the latest Solus. Immediately after install, i did "eopackage upgrade" and rebooted. I then did "eopackage install nvidia-glx-driver". Installs without errors. Rebooted. After that, the display keeps blinking for maybe 3-4 seconds, and the only thing I see displayed on the screen is the background picture. I thien Ctrl-alt-F1 and change init state to 3, uninstall "nvidia-glx-driver" and change init state to 5, and it works again.

Here is some info from "dmesg".
WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 746.890423] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 747.857515] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 747.873703] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 763.651458] gnome-session-f[2951]: segfault at 0 ip 00007fd9d2c8cb81 sp 00007fffd528bcc0 error 4 in libgtk-3.so.0.2200.9[7fd9d29a7000+6d7000]
[ 763.876750] gnome-session-f[2957]: segfault at 0 ip 00007fd01b7bdb81 sp 00007ffd0f023410 error 4 in libgtk-3.so.0.2200.9[7fd01b4d8000+6d7000]
[ 773.845918] gnome-session-f[3012]: segfault at 0 ip 00007f7545a61b81 sp 00007ffc681498f0 error 4 in libgtk-3.so.0.2200.9[7f754577c000+6d7000]
[ 774.067551] gnome-session-f[3018]: segfault at 0 ip 00007ff17204ab81 sp 00007ffca9007650 error 4 in libgtk-3.so.0.2200.9[7ff171d65000+6d7000]
[ 783.440146] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 1140.906561] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 1187.834986] nvidia-modeset: Freed GPU:0 (GPU-ae20248d-1af3-5c19-d849-e6cc52603a09) @ PCI:0000:01:00.0
[ 1187.872052] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 1187.900256] gnome-session-f[3086]: segfault at 0 ip 00007f536fa5fb81 sp 00007ffc194df3f0 error 4 in libgtk-3.so.0.2200.9[7f536f77a000+6d7000]
Tried tinker a bit further, and I got this in dmesg
[ 130.119083] nvidia: loading out-of-tree module taints kernel.
[ 130.119088] nvidia: module license 'NVIDIA' taints kernel.
[ 130.119089] Disabling lock debugging due to kernel taint
[ 130.126452] nvidia-nvlink: Nvlink Core is being initialized, major device number 247
[ 130.126469] NVRM: The NVIDIA probe routine was not called for 1 device(s).
[ 130.126470] NVRM: This can occur when a driver such as:
NVRM: nouveau, rivafb, nvidiafb or rivatv
NVRM: was loaded and obtained ownership of the NVIDIA device(s).
[ 130.126471] NVRM: Try unloading the conflicting kernel module (and/or
NVRM: reconfigure your kernel without the conflicting
NVRM: driver(s)), then try loading the NVIDIA kernel module
NVRM: again.
[ 130.126472] NVRM: No NVIDIA graphics adapter probed!
[ 130.126473] nvidia-nvlink: Unregistered the Nvlink Core, major device number 247
[ 171.622140] wlp3s0: deauthenticating from 00:21:96:42:95:d8 by local choice (Reason: 3=DEAUTH_LEAVING)
[ 171.753888] gnome-session-f[1393]: segfault at 0 ip 00007f1cce6d8b81 sp 00007fff43103b90 error 4 in libgtk-3.so.0.2200.9[7f1cce3f3000+6d7000]
[ 171.759811] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[ 241.365413] lightdm[1714]: segfault at 0 ip 00007fdb838f5e26 sp 00007ffe5b198358 error 4 in libc-2.24.so[7fdb83869000+1bc000]
[ 267.286662] lightdm[1826]: segfault at 0 ip 00007f1c260d5e26 sp 00007ffed9f1c068 error 4 in libc-2.24.so[7f1c26049000+1bc000]
[ 325.974355] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
Further tinkering
Kernel Module 375.39 Tue Jan 31 20:47:00 PST 2017
[ 35.332222] (using threaded interrupts)

[ 35.343805] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 375.39 Tue Jan 31 19:41:48 PST 2017
[ 35.347384] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[ 35.440142] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 35.440146] Bluetooth: BNEP socket layer initialized
[ 35.737294] psmouse serio4: synaptics: queried max coordinates: x [..5884], y [..4658]
[ 35.787372] psmouse serio4: synaptics: Touchpad model: 1, fw: 7.4, id: 0x1c0b1, caps: 0xd04733/0xa40000/0xa0400/0x0, board id: 0, fw id: 678311
[ 35.819422] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio4/input/input13
[ 35.902171] Console: switching to colour frame buffer device 170x48
[ 35.925381] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ 36.467073] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.467148] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.467285] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.467352] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.467414] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.467578] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.467650] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.496612] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.910650] nvidia-modeset: Allocated GPU:0 (GPU-ae20248d-1af3-5c19-d849-e6cc52603a09) @ PCI:0000:01:00.0
[ 36.913290] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.913501] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.913640] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.913770] ACPI Warning: \_SB.PCI0.PEG0.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20160831/nsarguments-95)
[ 36.935324] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 37.754232] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 38.371990] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[ 38.589654] fuse init (API version 7.26)
[ 39.397017] Bluetooth: RFCOMM TTY layer initialized
[ 39.397023] Bluetooth: RFCOMM socket layer initialized
[ 39.397040] Bluetooth: RFCOMM ver 1.11
[ 39.450115] wlp3s0: authenticate with 00:21:96:42:95:d8
[ 39.469270] wlp3s0: send auth to 00:21:96:42:95:d8 (try 1/3)
[ 39.471352] wlp3s0: authenticated
[ 39.471467] ath9k 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP
[ 39.471468] ath9k 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP
[ 39.472571] wlp3s0: associate with 00:21:96:42:95:d8 (try 1/3)
[ 39.474945] wlp3s0: RX AssocResp from 00:21:96:42:95:d8 (capab=0x411 status=0 aid=2)
[ 39.475118] wlp3s0: associated
[ 39.475304] IPv6: ADDRCONF(NETDEV_CHANGE): wlp3s0: link becomes ready
[ 39.904013] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 39.921388] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 40.970915] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
[ 40.987689] nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device VGA-0
Any help would be appreciated.

User avatar
kyrios
Posts: 1197
Joined: Thu Sep 22, 2016 4:20 pm

Re: Optimus Support Is Now Here

Tue Mar 07, 2017 5:20 pm

If you want to check which GPU is in use, open a terminal and type the following command:

Code: Select all

inxi -G

Or eventually:

Code: Select all

glxinfo | grep OpenGL.*string:

If you're running the integrated GPU and you want to use the discrete GPU, you have to install the drivers for your graphic card and then reboot (= always ON).

If you're running the discrete GPU and you want to use the integrated GPU, you have to install the drivers for your graphic card and then reboot (always OFF).

okokok
Posts: 2
Joined: Tue Mar 07, 2017 10:37 am

Re: Optimus Support Is Now Here

Tue Mar 07, 2017 6:47 pm

If you're running the integrated GPU and you want to use the discrete GPU, you have to install the drivers for your graphic
That's what I did. Isn't "eopkg install nvidia-glx-driver", "nvidia-xconfig" and re-boot supposed to be sufficient?

User avatar
ikey
Project Founder
Posts: 1581
Joined: Sun Jul 27, 2014 10:42 pm
Location: Ireland
Contact: Website

Re: Optimus Support Is Now Here

Tue Mar 07, 2017 6:56 pm

If you're running "nvidia-xconfig" that's exactly why it isn't working.
You've overwritten the config file that LDM created. Reinstall the package, or:

Code: Select all

sudo linux-driver-management configure gpu
Image

mfwtopkek
Posts: 8
Joined: Thu Mar 02, 2017 8:07 pm

Re: Optimus Support Is Now Here

Tue Mar 07, 2017 10:10 pm

Can't describe in words how good Solus is compared to other distros.
Been using optimus (then bumblebee) since 2012 on various distros (mostly ubuntu, fedora and it's spins) with my Asus n56vz laptop. It's always been super buggy right from the install, but on Solus it just works. Thank you so much for this!

Return to “Announcements”