Proxmox VE clobbered fglrx

imrazor

Member
Nov 3, 2015
40
0
6
Fresh install of Debian Jessie (see here: http://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Jessie ) with a Radeon HD 5750 as the GPU. Apparently development of the open source driver for this old graphics card has been abandoned, however there is a legacy proprietary driver (fglrx) still available for the card. After installing the necessary Proxmox packages thru apt-get and rebooting, the Cinammon desktop environment wouldn't load. Fortunately, I had LXDE installed as a backup and was able to get to a graphical desktop.

lsmod revealed that fglrx wasn't loaded. I did find that Proxmox had blacklisted a driver called nvidiafb, but saw no sign that fglrx had been blacklisted. If I try to forcibly load the fglrx.ko module with "modprobe -r" I get a FATAL error that indicates that the file doesn't exist, even though I specified the full path to the kernel module.

Is there any way to get 2D/3D acceleration with my hardware and Proxmox installed? If not, I may have to fall back to using Virtualbox or some other type 2 hypervisor.
 
OK, if I go to the advanced GRUB menu and boot with kernel 3.16 I get accelerated graphics. Is this expected behavior? Can I change the default kernel back to 3.16? What do I lose by reverting to an older kernel?
 
How exactly did you install this driver/module? Kernel modules always need to be built for the specific kernel you are running, so you are probably trying to load a module compiled for an older kernel, which will not work. You can install the kernel headers (pve-headers-XXX) and recompile the module, then you should be able to load and use it. No guarantees though, since it's a proprietary module :P

Also, when encountering errors please include stuff like version numbers ("pveversion -v" and any extra packages which are relevant), relevant logs (system and X.Org in your case) and complete error messages.
 
Actually, I didn't compile anything. I used the fglrx driver/module from the Debian non-free repository, installed thusly:
# apt-get install fglrx-driver
In a situation like this, I would normally prefer to use the open source driver. However, according to this:
https://wiki.debian.org/AtiHowTo
the open source driver only supports Radeon HD 7000 series and newer video cards. And indeed, when I first installed Debian Jessie, X Windows was using software rendering. So I installed the proprietary driver (Catalyst 14.9, see here: https://wiki.debian.org/ATIProprietary ) from the Debian non-free repo, which oddly enough supported my old video card (ATI Radeon HD 5750.)

So to summarize, it seems if I want graphics acceleration and kernel 4.2 I need to download the legacy driver from AMD and compile it against Kernel 4.2. Does that seem accurate?

Proxmox appears to be working without kernel 4.2, so is it mandatory? So far the only thing I'm noticing with kernel version 3.16 is that KSM does not appear to be working. This will not be a production server, so bullet-proof reliability is not necessary.

Requested logs attached...
 

Attachments

Last edited:
Installing fglrx-driver should also pull in fglrx-modules-dkms , which in turn tries to automatically compile and install the kernel module (this gets triggered on every kernel update afterwards as well). This only works if you have the kernel headers package for the kernel installed though, otherwise you will get a message like:

Module build for the currently running kernel was skipped since the
kernel source for this kernel does not seem to be installed.

To install the headers for your currently running kernel and trigger the module build you can do

Code:
 apt-get install --reinstall pve-headers-`uname -r` fglrx-modules-dkms

DKMS can be very finicky, so you need to watch your apt output when installing/upgrading for error messages. Whenever there is a kernel update, you need to install the associated headers package before or at the same time and check that the fglrx module was built successfully, otherwise you won't have graphics on the next reboot.

Note: not using the uptodate PVE kernel is a setup that is not supported by us, so I would not recommend it.
 
  • Like
Reactions: imrazor
Thanks so much, the apt-get command worked perfectly. I now have graphics acceleration with kernel 4.2. Am I reading your comments correctly that DKMS should now be automatically recompiled every time there is a PVE kernel update? Or do I need to do this manually the next time Proxmox pushes out a new kernel?

EDIT: Read your post a little more carefully, and it seems like I need to manually download the headers every time there is a kernel update. Is there any way to automate that? I suppose the best thing to do would be to put your apt-get command in a script, and run it from console if I suddenly find myself with no graphics acceleration or no GUI at all.
 
Last edited:
Since we are not using DKMS, you will have to pay attention here yourself (DKMS is pretty verbose, so when you install an update to pve-kernel-XX and either see no DKMS output or DKMS output with a warning or error, something probably has gone wrong ;)). Triggering a DKMS rebuild (and if necessary, installation of missing kernel headers) should be easily scriptable though.