my findings about nvidia propietary drivers

Ответить
andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

my findings about nvidia propietary drivers

Сообщение andreas » 23 окт 2017, 06:33

First of all, sorry for writing here in english, but I saw no R9 section in the english forum, and not many people frequent the italian mib.
Having a 4k monitor, the performance of the open source drivers is too poor to use Rosa conveniently, so I'm forced to use the proprietary drivers.
With version 375 I had no problem and thy even compiled fine with kernel 4.13.
Problems arose when drivers upgraded to version 384: I lost the hdmi audio and none of the suggested tricks I found on the net could recover the audio. Simply the HDMI outputs are reported as disconnected.
As I saw on the repo that the version of the nvidia current driver was higher than 384, I decided to give it a try to see if the problem was solved on that version.
At the end of the installation I saw a warning stating that XFdrake was not yet able to configure correctly that version. For this reason I uninstalled immediately the new drivers through the software management applet and reinstalled version 375.
At next boot the system stopped asking for an nvidia current missing DKMS configuration file and, accessing my system through the live system I could see that the dkms of nvidia current had not been correctly uninstalled. Deleting all the traces of the dkms I had been able to find, I could improve the situation up to being able to boot in safe mode.
Then after three or four hours of fight I decided to reinstall R9 from scratch.
In conclusion I'd suggest to not install nvidia current if there's a possibility to have then to uninstall it and I wonder if my problem with version 384 is Rosa specific or more general, because I have not been able to find on the web anybody with my same problem with version 384.
Ah, my card in a Quadro K5200.

Thak you in advance for your help.

euspectre
Сообщения: 1102
Зарегистрирован: 21 дек 2012, 15:24
Operating system: Linux в разных вариантах

Re: my findings about nvidia propietary drivers

Сообщение euspectre » 30 окт 2017, 10:55

It is usually OK to install nvidia-current if nvidiaXYZ is not working well for you. We do not recommend it for most of the users because nvidia-current may provide beta version of the drivers in some cases. NVidia may also drop support for some GPUs from these drivers from time to time. The preferred way is to use what XFdrake suggests, hence that warning.

Still, it is fine to try nvidia-current if other drivers do not work well.

Also, nvidia-current does not support Optimus out-of-the box but that can be set up manually in most cases.

To uninstall nvidia-current completely, it is usually enough to switch to nouveau first using XFdrake. Then you can try to install the drivers of your choice again.

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 07 ноя 2017, 05:22

Thank you for your answer, but the problem looks a bit more complex than appeared at first.
To try to solve this problem I contacted the Nvidia support and they pointed me two problems which may be the cause of the missing HDMI audio.
The first was that the upgrade from version 375.66 to version 384.90 left traces of the 375 driver. This was pointed out by a bug report generated with the nvidia-bug-report.sh script.
I bypassed this problem following the same procedure that you suggested to remove nvidia current, but HDMI audio was still missing.
At this point another problem arose: the nouveau driver is loaded together with the 384 driver and interferes with it.
I tried to prevent the loading of the nouveau driver, even if I saw that in /etc/modprobe.d there was already a file called blacklist-nouveau.conf, with no s uccess.
The tentatives I did were:
- create a file blacklist.conf in /etc/modprobe.d and write inside at first "blacklist nouveau" and then "alias nouveau off"
- in grub, at the kernel line insert "nouveau.modeset=0"

In addition to that I noticed that even the command "modprobe -r nouveau" is not able to unload the nouveau driver.

Is something changed in the drivers loading mechanism?

Ah, I'm using kernel 4.13.

Thank you for your help

AndreaS

euspectre
Сообщения: 1102
Зарегистрирован: 21 дек 2012, 15:24
Operating system: Linux в разных вариантах

Re: my findings about nvidia propietary drivers

Сообщение euspectre » 07 ноя 2017, 11:21

andreas писал(а):Is something changed in the drivers loading mechanism?
At least, nothing changed on our side. Cannot say anything about the binaries from NVidia though.

Normally, our installation process makes sure nouveau should not load when the proprietary drivers are installed, I cannot say right now why it failed this time.
More details are needed to see what is going on.

Could you please try the following.

0. Backup /etc/modprobe.d/blacklist.conf somewhere and remove it from /etc/modprobe.d/.
Remove nouveau.modeset=0 and other blacklisting options (if any) if you have added them to /etc/default/grub.

1. Remove the proprietary drivers again by choosing nouveau in XFdrake. After it has finished, check if any driver-related packages are present:

Код: Выделить всё

rpm -qa | grep nvidia
. If it shows something like x11-driver-video-nvidia* or dkms-nvidia*, please remove these packages too.

2. Reboot the system and then upload the system info and the logs to us using hw-probe (https://linux-hardware.org/index.php?view=howto, you can use any string as PC_NAME). hw-probe will show you the URL of the uploaded data - please post it here. Collect the output of lsinitrd (as root) and attach it here as well.

Alternatively, you can send these data to me via a private message if you like.

3. Install the proprietary drivers v384.90 using XFdrake. Wait till it finishes and asks if you want to reboot the system. Agree to reboot.

4. After reboot, please check if the graphics and HDMI audio work OK. If either of these does not work, collect and upload the same data as in (2): hw-probe and lsinitrd.
Please also run nvidia-bug-report.sh and send me what it has collected. It is needed to take a closer look, because hw-probe and nvidia-bug-report.sh gather different things.

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 08 ноя 2017, 04:05

Thanks, I will do that probably tomorrow. In the mean time I can anticipate you that I will not have my HDMI audio back because I already installed the 384.90 driver following the same procedure (except for the hwprobe data collecting part, of course).

euspectre
Сообщения: 1102
Зарегистрирован: 21 дек 2012, 15:24
Operating system: Linux в разных вариантах

Re: my findings about nvidia propietary drivers

Сообщение euspectre » 08 ноя 2017, 12:34

andreas писал(а):Thanks, I will do that probably tomorrow. In the mean time I can anticipate you that I will not have my HDMI audio back because I already installed the 384.90 driver following the same procedure (except for the hwprobe data collecting part, of course).
Yes, most likely HDMI won't work this time. The current goal is to collect the system info and logs, perhaps something there could give a clue.

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 09 ноя 2017, 13:45

The only trace left by XFdrake was nvidia-settings that should have no effect, and that I removed just to stay on the safe side.
Nouveau Driver hw-probe:
https://linux-hardware.org/index.php?pr ... 9cf9185e56

lsinitrd:
lsinitrd_Nouveau.txt
lsinitrd file generated with the nouveau driver
(389.79 КБ) 458 скачиваний
Последний раз редактировалось andreas 09 ноя 2017, 14:58, всего редактировалось 1 раз.

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 09 ноя 2017, 14:56

With nvidia384,
Useless to say, no HDMI audio

hw-probe: https://linux-hardware.org/index.php?pr ... 05db2d8a24


lsinitrd_nvidia384.txt
lsinitrd made with nvidia 384
(389.79 КБ) 447 скачиваний
Вложения
nvidia-bug-report.log.gz
Nvidia384 generated bug report
(275.06 КБ) 423 скачивания

euspectre
Сообщения: 1102
Зарегистрирован: 21 дек 2012, 15:24
Operating system: Linux в разных вариантах

Re: my findings about nvidia propietary drivers

Сообщение euspectre » 12 ноя 2017, 17:32

I can see nothing obviously bad in the logs. nouveau gets loaded but that is fine as long as its usage count is 0 (and it is 0 in your system).

As downgrading to v375.x did not end well, there are at least 2 more ways to go, I think. Here I assume you already have version 384.x installed.

1. Perhaps, trying nvidia-current might be worth it in this case. You can install version 387.22 (it is being tested now) as follows:

Код: Выделить всё

urpmi http://abf-downloads.rosalinux.ru/rosa2016.1/container/2907231/x86_64/non-free/release/x11-driver-video-nvidia-current-387.22-1-rosa2016.1.x86_64.rpm
urpmi will complain that nvidia-current conflicts with nvidia384 and will ask if you want to remove the packages with nvidia384. You can agree to remove them. Ignore the warning about XFdrake.

After the installation is complete, run 'sync' just in case and reboot the system.

2. If (1) does not help, you can try nvidia340. It should support your Quadro K5200 too.

Код: Выделить всё

urpmi x11-driver-video-nvidia340
urpmi will complain about the conflicts with nvidia-current or nvidia384 again - as above, agree to remove these packages. Wait till the installation ends, run 'sync', then reboot.

If any of these drivers does not work at all and the graphics fails, you can either run XFdrake from command line and selects nouveau or nvidia384 there. Or you can do it manually: remove the nvidia-related packages, delete /etc/X11/xorg.conf if present and remove "nomodeset" from the boot options. This should allow to boot the system with nouveau and then set up the drivers again.

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 13 ноя 2017, 05:11

Thank you for your response.
Before going back to Nvidia support I think that it is better to point out a couple of things:

1)
It is the nvidia-bug-report generated with 384 that complaints about the presence of the nouveau driver. Its output is:

Код: Выделить всё

Nov 03 05:59:45 andrea-desktop kernel: NVRM: The NVIDIA probe routine was not called for 1 device(s).
Nov 03 05:59:45 andrea-desktop kernel: 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).
Nov 03 05:59:45 andrea-desktop kernel: 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.
Nov 03 05:59:45 andrea-desktop kernel: NVRM: No NVIDIA graphics adapter probed!

So it looks like that Nouveau overrides the Nvidia driver. This does not happen with 375, or at least is not reported by the bug report generated with Nvidia 375.
Nvidia support asked me to remove completely Nouveau before going back to them. So for them the presence of the Nouveau driver is something that interferes with the proprietary driver (may be just the newer ones) and should be removed.

2)
I can downgrade to 375 easily via the graphical interface or via URPMI if I first uninstall verrsion 384 and then install version 375. To remain with 375, of course, I have to blacklist version 384.

3)
If I try to upgrade from 375 to 384 through the graphical packet manager, I am forced to first manually uninstall version 375 and then I can install version 384. In this case, however, as pointed out from nvidia-bug-report, in the system remain traces of the 375 dkms. This does not happen if I upgrade with XFdrake.

4)
I never tried version 387: I just intalled and immediately removed it when I saw the warning about the unability of XFdrake to correctly configure that version. Unfortunately the removal of the driver made through the graphical packet manager left traces of the 387 dkms that prevented my system from booting. If you think that it can be safe I can try to install the 387 drivers, test them and then uninstall them with XFdrake, passing through Nouveau, eventually generating the log files you may suggest me.

5)
Unfortunately staying with nouveau is not an option as at 4k his performance is very poor, making the use of Rosa a nightmare, even if the HDMI audio works fine.

Summarizing my questions are:
- if it is possible to avoid loading Nouveau when Nvidia drivers are present, in order to comply with the requests from Nvidia support.
- If you think it is reasonably safe to downgrade from nvidia-current through XFdrake and, if yes, if you would like to receive some logs

If I can say my opinion, I think that something is changing in the way the proprietary drivers interact with the system, and that this aspect should be deepened to stay updated with the future evolutions.

Of course I am available to make any other test you may think is useful.

Thank you again for your help

AndreaS

euspectre
Сообщения: 1102
Зарегистрирован: 21 дек 2012, 15:24
Operating system: Linux в разных вариантах

Re: my findings about nvidia propietary drivers

Сообщение euspectre » 13 ноя 2017, 11:50

andreas писал(а):if it is possible to avoid loading Nouveau when Nvidia drivers are present, in order to comply with the requests from Nvidia support.
I guess, nouveau is loaded at initrd stage when nvidia drivers are not yet available. Still, it should not capture the video device if "nomodeset" kernel option is set. I see no complaints like "NVRM: The NVIDIA probe routine was not called for 1 device(s)" in the logs from https://linux-hardware.org/index.php?probe=27e7bda60a.
nvidia driver loaded normally and the usage count for nouveau driver is 0 as it should be.

Try collecting the data with nvidia-bugreport again, when you have nvidia384 installed. The data collected before and attached here seem to be almost blank.
And when you collect these data again, please let me take a look. Let us see, if the driver still complains about anything now.
andreas писал(а):If you think it is reasonably safe to downgrade from nvidia-current through XFdrake and, if yes, if you would like to receive some logs
Yes, most of the time it is safe to downgrade from nvidia-current to nvidiaXYZ with XFdrake. Actually, I do it each time when I check the newly built packages with nvidia-current.

The most common pitfall in such downgrade found so far is with PLASMA5 DE: after switching from nvidiaXYZ to nouveau or from nvidia-current to some other driver or vice versa, the graphical "Reboot the system" applet may fail to run until the system is rebooted. ;-) If that happens, one may to reboot the system from the command line (run "reboot" or "/sbin/shutdown -r now").

If, for any reason, the graphics does not start after reboot (unlikely, but possible in some cases), one can always switch back to nouveau first using the command line, as I described earlier. Then - run XFdrake again to set up things properly.
andreas писал(а):If I can say my opinion, I think that something is changing in the way the proprietary drivers interact with the system, and that this aspect should be deepened to stay updated with the future evolutions.
Yes, perhaps, they did change something related to that in the drivers.

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 14 ноя 2017, 06:00

Thanks, I see from nvidia-bug-report that now, even though I don't understand why (an update, may be?), the nouveau driver does not more conflict with Nvidia. Of course still no HDMI Audio. Tomorrow I will come back to Nvidia Support and, as soon as I have some time available, I will try Nvidia Current too.
I will report you.
in the mean time, thank you for your help.

AndreaS

andreas
Сообщения: 25
Зарегистрирован: 09 дек 2015, 05:40
Operating system: Rosa Fresh R6 x64

Re: my findings about nvidia propietary drivers

Сообщение andreas » 24 ноя 2017, 06:48

Problem Solved: installing nvidia-current my HDMI audio went back. Few hours after my test I received an indirect confirmation from Nvidia Support that asked me to try version 387, as version 384 had a bug in HDMI audio with some GPUs area that was specifically solved in version 387.

Thank you again for your support.

AndreaS

P.S. Can I suggest to adopt version 387 of the driver and eliminate the buggy 384?

euspectre
Сообщения: 1102
Зарегистрирован: 21 дек 2012, 15:24
Operating system: Linux в разных вариантах

Re: my findings about nvidia propietary drivers

Сообщение euspectre » 24 ноя 2017, 18:23

andreas писал(а):Problem Solved: installing nvidia-current my HDMI audio went back. Few hours after my test I received an indirect confirmation from Nvidia Support that asked me to try version 387, as version 384 had a bug in HDMI audio with some GPUs area that was specifically solved in version 387.
Good.
Thanks for reporting the issue to NVidia, by the way!
andreas писал(а):P.S. Can I suggest to adopt version 387 of the driver and eliminate the buggy 384?
As soon as NVidia makes appropriate fixes to its "long-lived" drivers or makes v387.x long-lived (see http://www.nvidia.com/object/unix.html).

Our current policy is to package NVidia's long-lived drivers as nvidiaXYZ, beta and "short-lived" drivers as nvidia-current. This is because the beta and "short-lived" drivers may be less stable in some cases. Their updates may also drop support for some GPUs, which would be a nasty surprise for many users. nvidia-current may provide needed fixes though, like it is in this case, or add support for newer GPUs, so we maintain it for that reason.

Ответить