Premise:
I was trying to install the nvidia driver for my GeForce 610M (yes, it is a hybrid gpu with the Optimus technology).
So, at first I tried installing nvidia-driver-384.90 from the default repoes (pkg search shown many entries, I chose the one that supported my graphics card according to freebsd's online pages and nvidia's specification - in particular I should use the 384.98 driver which is the latest recommended), but had little luck the first time: Xorg showed a blank screen, so I ran nvidia-xconfig to fix it. It messed up Xorg more and it didn't even load.
OK, so I deleted the xorg.conf created by nvidia and replaced it with the one created by Xorg -configure (which showed failure messages about incorrect display numbers) but worked changing the gpu driver from nv to vesa (which sadly does not support my gpu).
Then, according to many threads in the freebsd forums, I added nvidia's and linux compatibility layers' modules to the /boot/loader.conf:
Code: Select all
# NVIDIA DRIVER
linux_enable="YES"
linux_load="YES"
nvidia_load="YES"
Rebooted, X shows a blank screen, but I can actually type and login showing something like a resetted XFCE environment (I have XFCE ; it showed with no panels and the default's XFCE background with the mouse).
kldstat showed the module was loaded.
Disheartened, I tried to reinstall the driver multiple times and trying different settings for the Xorg.conf (using xorg.conf.orig, xorg.nvidia-something.conf, nvidia-xconfig and such) with no luck.
So, I downloaded the 384.98 driver from the nvidia's website (by choosing freebsd x64 as OS and GeForce 610M as gpu) and extracted FreeBSD 11.1's kernel sources in /usr/src (yes, I have updated my GhostBSD to 11.1 today).
I started building and installing the driver with make install clean as described in some threads of the freebsd forums.
The build log says it has successfully installed the driver, but it also said it couldn't find pkg_info and also the /compat/linux/X11R6 directory.
It seemed to work until after reboot, I got a blank screen again. I realized I didn't uninstall the old drivers, so I did that and reinstalled the new ones.
After a second reboot, I still get the blank screen.
I found some useful info in the Xorg.0.log file, two lines saying something like ModeSet has been set to "NULL".
After some research, I realized I did not read fully the warnings in the README: according to the UPDATING file in the freebsd notes, the newest NVIDIA drivers starting from 385.09 also load a helper engine for the nvidia.ko called nvidia-modeset, which accordingly to the UPDATING, should be loaded instead of nvidia if I experience X hanging or the "NULL" ModeSet.
So I edited /boot/loader.conf replacing all instances of "nvidia" with "nvidia-modeset":
Code: Select all
nvidia_modeset_load="YES"
nvidia_modeset_name="nvidia-modeset"
Code: Select all
# Enable linux compatibility
linux_enable="YES"
# Load the following kernel modules
kld_list="geom_mirror geom_journal geom_eli linux fuse ext2fs cuse i915kms nvidia nvidia-modeset linsysfs linprocfs"
At this point I ran nvidia-xconfig again and it correctly configured (finally) the xorg.conf file.
The final xorg.conf works good and I am sure both the drivers are loaded because kldstat shows entries for nvidia.ko and nvidia-modeset.ko (also the linux modules are loaded), but I can read some weird lines when launching glxgears:
Code: Select all
Xlib: extension "GLX" missing on display "unix:0.0".
Error: couldn't get an RGB, Double-buffered visual
I tried to reboot thinking of a temporal issue, but...
Actual situation and issue:
I got these lines in my Xorg.0.log after a simple reboot:
Code: Select all
[ 20.856] (II) LoadModule: "nvidia-modeset"
[ 20.898] (WW) Warning, couldn't open module nvidia-modeset
[ 20.898] (II) UnloadModule: "nvidia-modeset"
[ 20.898] (II) Unloading nvidia-modeset
[ 20.898] (EE) Failed to load module "nvidia-modeset" (module does not exist, 0)
My question
I'd like to get GLX application to work with the proprietary drivers, but at this point I'm really unsure how to proceed.
I upload here my current configs and dmesg, maybe you can help me.
- kldstat https://ghostbin.com/paste/uktbe
loader.conf https://ghostbin.com/paste/5zj8e
rc.conf https://ghostbin.com/paste/2m7j7
xorg.conf https://ghostbin.com/paste/2bm82
Xorg.0.log https://ghostbin.com/paste/3prto
dmesg https://ghostbin.com/paste/abu7c
fstab https://ghostbin.com/paste/mdcnf
mount https://ghostbin.com/paste/nefv3