LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Laptop and Netbook
User Name
Password
Linux - Laptop and Netbook Having a problem installing or configuring Linux on your laptop? Need help running Linux on your netbook? This forum is for you. This forum is for any topics relating to Linux and either traditional laptops or netbooks (such as the Asus EEE PC, Everex CloudBook or MSI Wind).

Notices


Reply
  Search this Thread
Old 11-03-2019, 06:21 AM   #1
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: OpenBSD, Slackware
Posts: 27
Blog Entries: 1

Rep: Reputation: Disabled
Xorg black screen - Slackware 14.2 Nvidia Proprietary driver, HP OMEN 15 5012na, Geforce GTX 860M / Intel HD hybrid


It's first time I'm trying to set Slackware 14.2 (multilib enabled) up on this second hand HP OMEN 15 5012na. Installing of Nvidia binaries, either fails or makes Xorg to segfault afterwards.

However installing nvidia-driver via sboinstall goes smooth, it's just xorg.conf configuration which I think is the main issue because after installation sboinstall prompts something to not forget enabling nvidia in /etc/X11/xorg.conf. and I've found several suggestions on the internet but none of them worked. At best I was able to start xfce4 but it soon crashes after starting something like steam.

There was a similar thread here https://www.linuxquestions.org/quest...-a-4175596380/ but it was marked as solved by OP abandoning slackware and switching to arch, I wouldn't call that a solution.


Code:
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
bash-4.3# lspci | grep 3D 
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 860M] (rev a2)
bash-4.3# cat /etc/X11/xorg.conf
cat: /etc/X11/xorg.conf: No such file or directory
bash-4.3# lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 (rev d5)
00:1c.5 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #6 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM87 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 860M] (rev a2)
07:00.0 SATA controller: Samsung Electronics Co Ltd XP941 PCIe SSD (rev 01)
08:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5227 PCI Express Card Reader (rev 01)
09:00.0 Network controller: Intel Corporation Wireless 7260 (rev c3)

Now I'm starting it again over fresh slackware 14.2 (multilib)
so I have no /etc/X11/xorg.conf , but 'sboinstall nvidia-driver' gonna place a default conf to /usr/share/X11/xorg.conf.d/10-nvidia.conf

Code:
bash-4.3# sboinstall nvidia-driver

This is the kernel-module needed by the proprietary binary nvidia driver.
You also need the nvidia-driver package from SlackBuilds.org.

To build the package for a kernel different from the running one,
start the script setting the KERNEL variable as in
    KERNEL=4.6.3 ./nvidia-kernel.SlackBuild

A default config file is placed at /usr/share/X11/xorg.conf.d/10-nvidia.conf
to make sure that X loads the nvidia module.  If you need to make changes,
move that file to /etc/X11/xorg.conf.d/ and edit the copy.  You do not need
this file at all if you have a proper and complete xorg.conf.

The xf86-video-nouveau-blacklist package from /extra is required.


It looks like nvidia-kernel has options; would you like to set any when the slackbuild is run? [n] 

This is the kernel-module needed by the proprietary binary nvidia driver.
You also need the nvidia-driver package from SlackBuilds.org.

To build the package for a kernel different from the running one,
start the script setting the KERNEL variable as in
    KERNEL=4.6.3 ./nvidia-kernel.SlackBuild

A default config file is placed at /usr/share/X11/xorg.conf.d/10-nvidia.conf
to make sure that X loads the nvidia module.  If you need to make changes,
move that file to /etc/X11/xorg.conf.d/ and edit the copy.  You do not need
this file at all if you have a proper and complete xorg.conf.

The xf86-video-nouveau-blacklist package from /extra is required.

Proceed with nvidia-kernel? [y] 
nvidia-kernel added to install queue.

This is the proprietary binary video driver from NVidia for the X.Org
X-server. This package does not include the kernel-module - it is a part
of the nvidia-kernel package at SlackBuilds.org.

NOTE: 64-bit x86_64 support ONLY for Slackware64. For x86 32-bit support,
use nvidia-legacy390-{driver,kernel}

Installing the 32-bit compatibility libraries is available: if desired, do:
  COMPAT32="yes" ./nvidia-driver.SlackBuild

GLVND GLX client libraries are now the default. If these cause any
compatibility issues with older GLX sofware, either upgrade your software
or try:
  GLVND="no" ./nvidia-driver.SlackBuild

Several useful utilities are included: nvidia-xsettings, nvidia-smi, and
nvidia-settings.  Please refer to the Nvidia documentation and man pages
for details and usage.

For CUDA/OpenCL to work after reboot, and for utilites such as nvidia-smi,
you might need to include the following line in your /etc/rc.d/rc.local:
-------------8<---------------
# Create missing nvidia device nodes after reboot
/usr/bin/nvidia-modprobe -c 0 -u
------------->8---------------

Since this nvidia-driver conflicts with some files of xorg, it's a bit
complex to install/uninstall the driver.  However, installation of the
nvidia-driver package itself backs up the conflicting files and puts
the nvidia-specific files into place.

Included is a script called nvidia-switch, which is used to switch from
the xorg driver to the nvidia driver, but it will not edit xorg.conf
for you; you have to do that manually.  The nvidia-switch script is
installed to /usr/sbin. NOTE: Although nvidia-switch is aware of a
COMPAT32 environment, its use therein is not supported.

Usage of nvidia-switch:
  nvidia-switch --install  <--> install the nvidia files and save the
                                stock xorg files.
  nvidia-switch --remove   <--> remove the nvidia files and symlinks and
                                restore the stock xorg files.

You do NOT have to run nvidia-switch after installing the package.

Before uninstalling or upgrading this package, it is important that
you execute 'nvidia-switch --remove', which will switch back to the
stock xorg files and remove all links created by nvidia-switch during
installation. If you forget to do this, you might have to do the switch
manually, since 'nvidia-switch --install' may fail, resulting in xorg
not working. Here are the affected files:

  /usr/lib[64]/libGL.so.1.2
  /usr/lib[64]/libGL.la
  /usr/lib[64]/libGLESv1_CM.so.1.0.0
  /usr/lib[64]/libGLESv2.so.2.0.0
  /usr/lib[64]/libEGL.so.1.0.0
  /usr/lib[64]/xorg/modules/libwfb.so
  /usr/lib[64]/xorg/modules/extensions/libglx.so

Simply remove the dead nvidia symlinks and and reinstall the mesa and
xorg-server packages. See 'nvidia-switch --help'.


It looks like nvidia-driver has options; would you like to set any when the slackbuild is run? [n] 

This is the proprietary binary video driver from NVidia for the X.Org
X-server. This package does not include the kernel-module - it is a part
of the nvidia-kernel package at SlackBuilds.org.

NOTE: 64-bit x86_64 support ONLY for Slackware64. For x86 32-bit support,
use nvidia-legacy390-{driver,kernel}

Installing the 32-bit compatibility libraries is available: if desired, do:
  COMPAT32="yes" ./nvidia-driver.SlackBuild

GLVND GLX client libraries are now the default. If these cause any
compatibility issues with older GLX sofware, either upgrade your software
or try:
  GLVND="no" ./nvidia-driver.SlackBuild

Several useful utilities are included: nvidia-xsettings, nvidia-smi, and
nvidia-settings.  Please refer to the Nvidia documentation and man pages
for details and usage.

For CUDA/OpenCL to work after reboot, and for utilites such as nvidia-smi,
you might need to include the following line in your /etc/rc.d/rc.local:
-------------8<---------------
# Create missing nvidia device nodes after reboot
/usr/bin/nvidia-modprobe -c 0 -u
------------->8---------------

Since this nvidia-driver conflicts with some files of xorg, it's a bit
complex to install/uninstall the driver.  However, installation of the
nvidia-driver package itself backs up the conflicting files and puts
the nvidia-specific files into place.

Included is a script called nvidia-switch, which is used to switch from
the xorg driver to the nvidia driver, but it will not edit xorg.conf
for you; you have to do that manually.  The nvidia-switch script is
installed to /usr/sbin. NOTE: Although nvidia-switch is aware of a
COMPAT32 environment, its use therein is not supported.

Usage of nvidia-switch:
  nvidia-switch --install  <--> install the nvidia files and save the
                                stock xorg files.
  nvidia-switch --remove   <--> remove the nvidia files and symlinks and
                                restore the stock xorg files.

You do NOT have to run nvidia-switch after installing the package.

Before uninstalling or upgrading this package, it is important that
you execute 'nvidia-switch --remove', which will switch back to the
stock xorg files and remove all links created by nvidia-switch during
installation. If you forget to do this, you might have to do the switch
manually, since 'nvidia-switch --install' may fail, resulting in xorg
not working. Here are the affected files:

  /usr/lib[64]/libGL.so.1.2
  /usr/lib[64]/libGL.la
  /usr/lib[64]/libGLESv1_CM.so.1.0.0
  /usr/lib[64]/libGLESv2.so.2.0.0
  /usr/lib[64]/libEGL.so.1.0.0
  /usr/lib[64]/xorg/modules/libwfb.so
  /usr/lib[64]/xorg/modules/extensions/libglx.so

Simply remove the dead nvidia symlinks and and reinstall the mesa and
xorg-server packages. See 'nvidia-switch --help'.

Proceed with nvidia-driver? [y] 
nvidia-driver added to install queue.

Install queue: nvidia-kernel nvidia-driver

Are you sure you wish to continue? [y]
Code:
+==============================================================================
| Installing new package /tmp/nvidia-driver-430.50-x86_64-1_SBo.tgz
+==============================================================================

Verifying package nvidia-driver-430.50-x86_64-1_SBo.tgz.
Installing package nvidia-driver-430.50-x86_64-1_SBo.tgz:
PACKAGE DESCRIPTION:
# nvidia-driver (Proprietary Binary Nvidia Video Driver)
#
# This is the proprietary binary video driver from nvidia for
# the x.org X server. This package does not include the kernel
# module - it is included in the nvidia-kernel package.
#
# See /usr/doc/nvidia-driver-430.50/README.Slackware
# for more information.
#
Executing install script for nvidia-driver-430.50-x86_64-1_SBo.tgz.
Installing to nvidia-driver files!

Make sure the nvidia driver is ENABLED in /etc/X11/xorg.conf
and in /etc/X11/xorg.conf.d.
Otherwise, this may lead to improperly working drivers.
Package nvidia-driver-430.50-x86_64-1_SBo.tgz installed.
Then I manually disable noveau by adding
Code:
blacklist nouveau
options nouveau modeset=0
to /etc/modprobe.d/disable_noveau.conf

Now I'm going to reboot and save Xorg.0.log to edit into this thread.

EDIT: after reboot runnig startx at first shows kde loading graphical screen like everything is ok and then turns to black screen with white cursor on the top left corner of screen with keyboard irresponsive, so I used power button to shut down and boot again and the contents of /var/log/Xorg.0.log.old are here in dpaste
http://dpaste.com/1PV4Q3Q

I can get back into those pre black screen conditions, just tell me what information I should gather from runlevel 3. I'll stay with noveau till I get some responses.

Last edited by v32itas; 11-04-2019 at 12:44 PM.
 
Old 11-04-2019, 11:21 AM   #2
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: OpenBSD, Slackware
Posts: 27

Original Poster
Blog Entries: 1

Rep: Reputation: Disabled
I think I might have solved the issue. I've added this line
Code:
/usr/bin/nvidia-modprobe -c 0 -u
to /etc/rc.d/rc.local
as sboinstall prompt suggested
and I used Arch wiki suggested

Code:
/etc/X11/xorg.conf

Section "Module"
    Load "modesetting"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:<BusID for NVIDIA device here>"
    Option "AllowEmptyInitialConfiguration"
EndSection
and

Code:
~/.xinitrc

xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto
source https://wiki.archlinux.org/index.php/NVIDIA_Optimus

Now black screen issue itself is solved, not yet sure if I already should mark this as solved, I'll try to run a few games to see if its working.

So I'm just trying to set Slackware to use Nvidia gpu only. Later to consider bumblebee or alternatives.

Also when installing nvidia-driver via sboinstall to run steam afterwards, you
Code:
#COMPAT32="yes" sboinstall nvidia-driver
should run sboinstall like this to get x86 nvidia libraries that steam needs. otherwise you might end up with
https://steamcommunity.com/app/22141...2851360463413/
https://github.com/ValveSoftware/ste...ux/issues/5166

Last edited by v32itas; 11-04-2019 at 01:15 PM.
 
1 members found this post helpful.
Old 11-04-2019, 02:49 PM   #3
Jan K.
Member
 
Registered: Apr 2019
Location: Esbjerg
Distribution: Windows 7...
Posts: 762

Rep: Reputation: 487Reputation: 487Reputation: 487Reputation: 487Reputation: 487
I think latest nVidea LTS just has been released... https://www.linuxquestions.org/quest...ml#post6054028
 
1 members found this post helpful.
Old 11-05-2019, 08:24 AM   #4
ForestuX
LQ Newbie
 
Registered: Oct 2019
Location: /bin/bash
Distribution: slackware
Posts: 25

Rep: Reputation: Disabled
Hello, v32itas.
I'm sure this post is not solving your issue, but, do you really need privative drivers?
In my case, open GL Mesa works fine with a:
Code:
$ cat /etc/slackware-version && sudo /sbin/lspci | grep VGA
Slackware 14.0
Password:
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Cedar PRO [Radeon HD 5450]
It is true that I'm not a gamer,but Mesa driver works fine to me:

Code:
$ fglrxinfo 
display: :0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5450     
OpenGL version string: 4.2.12002 Compatibility Profile Context 9.012
Code:
alfonso@torre:~$ sudo /sbin/modinfo radeon
filename:       /lib/modules/3.2.29-smp/kernel/drivers/gpu/drm/radeon/radeon.ko
license:        GPL and additional rights
description:    ATI Radeon
author:         Gareth Hughes, Keith Whitwell, others.
alias:          pci:v00001002d00003150sv*sd*bc*sc*i*
depends:        drm,drm_kms_helper,ttm,i2c-core,hwmon,i2c-algo-bit
intree:         Y
vermagic:       3.2.29-smp SMP mod_unload PENTIUMIII 
parm:           no_wb:Disable AGP writeback for scratch registers (int)
parm:           modeset:Disable/Enable modesetting (int)
parm:           dynclks:Disable/Enable dynamic clocks (int)
parm:           r4xx_atom:Enable ATOMBIOS modesetting for R4xx (int)
parm:           vramlimit:Restrict VRAM for testing (int)
parm:           agpmode:AGP Mode (-1 == PCI) (int)
parm:           gartsize:Size of PCIE/IGP gart to setup in megabytes (32,64, etc)
 (int)
parm:           benchmark:Run benchmark (int)
parm:           test:Run tests (int)
parm:           connector_table:Force connector table (int)
parm:           tv:TV enable (0 = disable) (int)
parm:           audio:Audio enable (1 = enable) (int)
parm:           disp_priority:Display Priority (0 = auto, 1 = normal, 2 = high) (int)
parm:           hw_i2c:hw i2c engine enable (0 = disable) (int)
parm:           pcie_gen2:PCIE Gen2 mode (1 = enable) (int)
parm:           msi:MSI support (1 = enable, 0 = disable, -1 = auto) (int)
Code:
$ fglrxinfo 
display: :0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5450     
OpenGL version string: 4.2.12002 Compatibility Profile Context 9.012
I think, if it works well, don't do anything, KISS.
Greetings.

Last edited by ForestuX; 11-05-2019 at 08:25 AM.
 
Old 11-07-2019, 01:32 PM   #5
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: OpenBSD, Slackware
Posts: 27

Original Poster
Blog Entries: 1

Rep: Reputation: Disabled
Quote:
Originally Posted by ForestuX View Post
Hello, v32itas.
I'm sure this post is not solving your issue, but, do you really need privative drivers?
In my case, open GL Mesa works fine with a:
Code:
$ cat /etc/slackware-version && sudo /sbin/lspci | grep VGA
Slackware 14.0
Password:
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Cedar PRO [Radeon HD 5450]
It is true that I'm not a gamer,but Mesa driver works fine to me:

Code:
$ fglrxinfo 
display: :0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5450     
OpenGL version string: 4.2.12002 Compatibility Profile Context 9.012
Code:
alfonso@torre:~$ sudo /sbin/modinfo radeon
filename:       /lib/modules/3.2.29-smp/kernel/drivers/gpu/drm/radeon/radeon.ko
license:        GPL and additional rights
description:    ATI Radeon
author:         Gareth Hughes, Keith Whitwell, others.
alias:          pci:v00001002d00003150sv*sd*bc*sc*i*
depends:        drm,drm_kms_helper,ttm,i2c-core,hwmon,i2c-algo-bit
intree:         Y
vermagic:       3.2.29-smp SMP mod_unload PENTIUMIII 
parm:           no_wb:Disable AGP writeback for scratch registers (int)
parm:           modeset:Disable/Enable modesetting (int)
parm:           dynclks:Disable/Enable dynamic clocks (int)
parm:           r4xx_atom:Enable ATOMBIOS modesetting for R4xx (int)
parm:           vramlimit:Restrict VRAM for testing (int)
parm:           agpmode:AGP Mode (-1 == PCI) (int)
parm:           gartsize:Size of PCIE/IGP gart to setup in megabytes (32,64, etc)
 (int)
parm:           benchmark:Run benchmark (int)
parm:           test:Run tests (int)
parm:           connector_table:Force connector table (int)
parm:           tv:TV enable (0 = disable) (int)
parm:           audio:Audio enable (1 = enable) (int)
parm:           disp_priority:Display Priority (0 = auto, 1 = normal, 2 = high) (int)
parm:           hw_i2c:hw i2c engine enable (0 = disable) (int)
parm:           pcie_gen2:PCIE Gen2 mode (1 = enable) (int)
parm:           msi:MSI support (1 = enable, 0 = disable, -1 = auto) (int)
Code:
$ fglrxinfo 
display: :0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Radeon HD 5450     
OpenGL version string: 4.2.12002 Compatibility Profile Context 9.012
I think, if it works well, don't do anything, KISS.
Greetings.
You're lucky with AMD I've heard that AMD open source drivers are awesome. I have nVidia, I'm less lucky I need to work around. Nouveau produces 60 fps with glxgears, nvidia binary drivers produces 12182 FPS, that's not just a tiny difference.
 
Old 11-08-2019, 01:29 PM   #6
ForestuX
LQ Newbie
 
Registered: Oct 2019
Location: /bin/bash
Distribution: slackware
Posts: 25

Rep: Reputation: Disabled
Those FPS look amazing!!
Good luck, v32itas.
 
  


Reply

Tags
black screen, geforce, nvidia drivers, slackware 14.2, xorg


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
nVidia Framebuffer Support needed (NVIDIA GeForce GTX 760)? Olaus Slackware 6 02-09-2017 12:59 AM
LXer: Nvidia 367.27 Video Driver Finally Brings GeForce GTX 1080/1070 Support to Linux LXer Syndicated Linux News 0 06-13-2016 10:11 PM
NVIDIA 860M on Linux Mint grandmal Linux Mint 17 07-25-2014 09:39 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Laptop and Netbook

All times are GMT -5. The time now is 01:05 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration