suse-prime with kernel 4.5 on leap 42.1, how to?

Hello,

How can I install suse-prime runninng kernel 4.5?

I have an Asus laptop with optimus graphics (intel + nvidia). Due to unrecognised touchpad with the actual kernel I installed kernel 4.5 from the stable repo. I don’t know how to proceed to get suse prime running with the new kernel… (I have it running perfectly with the kernel from the default leap install).

I installed the new kernel with Yast, and after reboot

But running “prime-select nvidia”

gives me:

modprobe: ERROR: could not find module by name='nvidia' 
modprobe: ERROR: could not insert 'nvidia': Function not implemented 
modprobe: FATAL: Module nvidia_uvm not found. 
mknod: missing operand after '0' 
Try 'mknod --help' for more information. 
ERROR: Unable to query GPU information 
Running ldconfig 

Anybody knows what I have to do/how can I proceed to successfully use suse-prime with the new kernel?
Thanks for your help!

Daniel

You would need to inst NVIDIA driver the hard way for the new kernel. The default drivers are for the kernels that are shipped so you must install the hard way. Assuming that the driver even is supported for the newest kernel

You can use suse-prime-alt to get the newer drivers.

Similar installation method, you just need the packages from home:Bumblebee-Project. Ensure that you cleaned
up all the rpm packages from nvidia.

https://build.opensuse.org/package/show/home:bosim:suse-prime/suse-prime-alt

Bo

@bosim:

thanks for the reply. Can you lead me a bit in “clean up all the rpm packages from nvidia”? Last time I removed all I found with searching for “nvidia” using yast I ended up with an un-bootable system…

And after that:

  • just install x11-video-nvidia from bamblee
  • add /repositories/home:/bosim:/suse-prime/openSUSE_Tumbleweed to my repositories
  • and install suse-prime-alt-0.1-5.1.noarch.rpm
    ?

Did you ensure to run prime-select intel before uninstall?

By cleanup I just meant removing all rpm packages containing rpm.

Bo

I get

prime-select nvidia
modprobe: FATAL: Module nvidia not found.

ERROR: Unable to query GPU information

Running ldconfig


should I use the leap-repo instead the tumbleweed repo for bumblbee (I am on leap, but with kernel 4.5)?

You moving in unknown waters. AFAIK tumbleweed requires the hard way install for installer form NVIDIA site. Is there a tumbleweed bumblebee repo? If you use prime you don’t need or want bumblebee and you use the normal NVIDIA driver which AFAIK is not in tumbleweed and must be gotten from NVIDIA directly… You will have to reinstall NVIDIA driver with any kernel change if you don’t use the standard kernel.

Please use Bumblebee-Project for LEAP and not tumbleweed.

Could you please paste zypper pa --installed-only|grep -i nvidia

Bo

I sold my optimus laptop but when I had I was able to get nvidia-prime for optimus working and then I did the suse-prime-alt package.

Bo

You moving in unknown waters. AFAIK tumbleweed requires the hard way install for installer form NVIDIA site.

Yes it’s all unknown to me. But first of all I don’t know what is “the hard way”. Second, as this is an optimus system, installing the nvifia drivers them selves does not help. Suse-prime is needed (or bumblebee, but I prefer suse-prime).

I don’t have a tumbleweed but a leap system, just with a newer kernel, that is needed for making the touchpad working.

I followed bosim’s advice because he’s the suse-prime author, I added the bumblebee-nvidia repo because that’s what the suse-prime-alt page says, and I decided for the tumbleweed repo because suse-prime-alt is for tumbleweed, but that might be wrong, as I am really in unknown waters…

So something did not work and I hope we can find a solution, better said: I hope somebody can point me to the solution :slight_smile:

This is zypper output of the current, not working, install:

zypper pa --installed-only|grep -i nvidia
i | openSUSE_Tumbleweed       | dkms-nvidia                                | 352.79-119.16                 | x86_64
v | openSUSE_Tumbleweed       | dkms-nvidia                                | 352.79-119.16                 | i586  
i | openSUSE_Tumbleweed       | nvidia-compute                             | 352.79-121.1                  | x86_64
v | openSUSE_Tumbleweed       | nvidia-compute                             | 352.79-121.1                  | i586  
i | openSUSE_Tumbleweed       | x11-video-nvidia                           | 352.79-121.1                  | x86_64
v | openSUSE_Tumbleweed       | x11-video-nvidia                           | 352.79-121.1                  | i586  
i | openSUSE_Tumbleweed       | x11-video-nvidia-devel                     | 352.79-121.1                  | x86_64
v | openSUSE_Tumbleweed       | x11-video-nvidia-devel                     | 352.79-121.1                  | i586  

I’ll de-install the nvidia rpms and suse-prime-alt right now, change the bumblebee repo to leap repo, install again and then report…

just did re un- and reinstall with the leap-bumblebee repo and have the same error

the zypper output now looks like this:

zypper pa --installed-only|grep -i nvidia
i | openSUSE_Tumbleweed       | dkms-nvidia                                | 352.79-119.1                  | x86_64
v | openSUSE_Tumbleweed       | dkms-nvidia                                | 352.79-119.1                  | i586  
i | openSUSE_Tumbleweed       | nvidia-compute                             | 352.79-121.1                  | x86_64
v | openSUSE_Tumbleweed       | nvidia-compute                             | 352.79-121.1                  | i586  
i | openSUSE_Tumbleweed       | x11-video-nvidia                           | 352.79-121.1                  | x86_64
v | openSUSE_Tumbleweed       | x11-video-nvidia                           | 352.79-121.1                  | i586  
i | openSUSE_Tumbleweed       | x11-video-nvidia-devel                     | 352.79-121.1                  | x86_64
v | openSUSE_Tumbleweed       | x11-video-nvidia-devel                     | 352.79-121.1                  | i586  

The only difference I see is the dkms-nvidia number…

Do not use bumblebee and prime. it is either or not both.

Since you use a non standard kernel (ie one not from the standard repo) you need to compile the driver to make it work with the 4.5 kernel. This is done by getting the driver from NVIDIA (not a repo) and installing the gcc compiler and kernel development for your version the kernel and running the NVIDIA installer. This is known as the hard way but is not that difficult instructions are on the NVIDIA site. Down side of this install method is any change in the kernel and you must reinstall the driver it does not happen by magic like a driver from the repos

First question:

If I download and compile a driver from nvidia, will suse-prime work with that? Or will it not be necessary anymore for the optimus system (that does not boot to X when a standard nvidia driver from the nvidia repo, using the standard 4.1 leap kernel, is installed)? It is important to me that I can switch between intel and nvidia because of battery life, only use nvidia when necessary…

IF it will work, then:

which of the drivers must I select? I saw that my graphics card (geforce GTX 960M) is not listed in the legacy list, but what does “Long lived branch version” or “short lived…” mean?

I wouldn’t recommend that, as it will break your system even more than the standard driver from the repo I believe.

Stick with the packages from the bumblebee repo, they do nothing else than downloading the .run installer from nvidia, compile the kernel module and install it (but in a way that it doesn’t conflict with the intel driver and Xorg/Mesa).

The 352.79 driver (that is in that repo at the moment) supports your card, although I cannot tell whether it will work with kernel 4.5.
Your error messages say that the nvidia kernel module cannot be loaded.
So apparently something went wrong when compiling it (which happens when you install the package).
Do you have the kernel devel packages for 4.5 (i.e. the same version as your kernel) installed? If not it cannot work.

rpm -qa kernel*

IF it will work, then:

which of the drivers must I select? I saw that my graphics card (geforce GTX 960M) is not listed in the legacy list,

It is not supported by the legacy drivers, only the latest versions.

but what does “Long lived branch version” or “short lived…” mean?

The long lived branch will get updates longer, the short-lived branch will get new features earlier.

Thank youwolfi323 for the clear information.

kernel devel packages were indeed for 4.1 kernel. I de-installed them and installed the 4.5 versions. Then again I deinstalled the nvidia-things and suse-prime-alt, and again installed x11-video-nvidia from bumblebee and then suse-prime-alt.

There is no change. Same error message. But I have the feeling that there was no compiling when installing x11-video-nvidia, it just downloaded the files (or even took them from cache? it went so fast…) and I have not seen anything that could look like a compiling message…

output of rpm now:

rpm -qa kernel*
kernel-macros-4.5.0-4.1.gece3ff2.noarch
kernel-syms-4.5.0-4.1.gece3ff2.x86_64
kernel-default-4.5.0-3.1.g8ec3d36.x86_64
kernel-default-4.1.15-8.1.x86_64
kernel-devel-4.5.0-4.1.gece3ff2.noarch
kernel-firmware-20150925git-1.1.noarch
kernel-default-devel-4.5.0-4.1.gece3ff2.x86_64

Yes, the downloaded driver is cached in /usr/src/NVIDIA-Linux…run, delete that to force a re-download.
But I think it should recompile the module anyway even if the driver has been downloaded before. Though I actually think you need to (re)install dkms-nvidia to (re)build the kernel module.

Use zypper instead of YaST to be able to see/read the exact messages…

sudo zypper in -f dkms-nvidia

output of rpm now:

rpm -qa kernel*
kernel-macros-4.5.0-4.1.gece3ff2.noarch
kernel-syms-4.5.0-4.1.gece3ff2.x86_64
kernel-default-4.5.0-3.1.g8ec3d36.x86_64
kernel-default-4.1.15-8.1.x86_64
kernel-devel-4.5.0-4.1.gece3ff2.noarch
kernel-firmware-20150925git-1.1.noarch
kernel-default-devel-4.5.0-4.1.gece3ff2.x86_64

You have the devel packages 4.5.0-4.1 now, but the kernel-default is 4.5.0-3.1. Not sure if that’s a problem, but it could be.
So try updating the kernel as well, and boot it.

Hu, there seem to be sharks or piranhas in these unknown waters :slight_smile:

I installed the new kernel version 4.5.0-4.1 and rebooted.
As expected it only booted to console mode.
I started yast and deleted the nvidia things (according to the list that rpm -qa nvidia gave me)
It downloaded the files, I think it compiled something (time passed…), and then it stayed after the line “Installing x11-video-nvidia-devel”. I waited some 10 minutes. I could not abort Yast (alt-r or f9). I did a reset…

After booting (console mode) I looked again what was there with rpm -qa nvidia, and uninstalled that again using yast.
Then I quit yast and typed “zypper in -f x11-video-nvidia”.
Again it downloaded, compiled, and now stays again at the same line.

Last output is:
(4/4) Installing: x11-video-nvidia-devel-352.79-121.1
Additional rpm output:
check sums and md5 sums are ok

And there it stays. Nothing happens anymore…

The laptops ventilator is running heavy, but nothing happens.
I took a photo of almost the complete output: 404 Not Found

:frowning:

don’t know if this is helpful info…

To get the blacked out screen back I hit Enter and got the message

nouveau pci: failed to adjust lnkctl speed

I switched to console 2 and looked at top: a process lspci uses 100% of CPU…

My understanding is the suse-prime takes care of the incompatibilities of the regular driver. Probably by switching files. You may use the nvidia-bumblebee driver maybe. But it is semi crippled (non-NVIDIA mesa file) and since the purpose of premise to do a full switch NVIDIA and Intel using the normal drive will give better performance according to the threads on the subject