Como consertar o driver ATI fglrx após o upgrade do kernel

1

Eu fiz o upgrade para a pilha picante de 12.04.4 de 12.04.3:

sudo apt-get install --install-recommends linux-generic-lts-saucy xserver-xorg-lts-saucy libgl1-mesa-glx-lts-saucy

Isso instalou o kernel 3.11 para ir com o 3.8 que eu tinha anteriormente. No entanto, ao fazer o login, vejo que estou no modo de fallback, e o fglrx está longe de ser visto, a partir do Xorg.0.log:

Loading extension GLX
FATAL: Module fglrx not found.
(WW) fglrx: No matching Device section for instance (BusID PCI:0@0:1:1) found
FATAL: Module fglrx not found.
Loading extension FGLRXEXTENSION

Não consigo carregá-lo diretamente:

 > sudo modprobe fglrx
FATAL: Module fglrx not found.

Se eu inicializar com o velho kernel 3.8, tudo será hunkey-dorey. Nenhum problema em tudo.

Acho que isso pode ser algum tipo de problema de dkms. Em / lib / modules eu tenho:

drwxr-xr-x 4 root root 4096 Feb 10 20:43 3.8.0-35-generic
drwxr-xr-x 4 root root 4096 Feb 24 20:36 3.11.0-17-generic

No entanto:

 > ls -l /var/lib/dkms/fglrx/13.251/
total 8
drwxr-xr-x 3 root root 4096 Feb  5 22:05 3.8.0-35-generic
drwxr-xr-x 4 root root 4096 Feb 24 20:36 build
lrwxrwxrwx 1 root root   21 Dec 27 17:06 source -> /usr/src/fglrx-13.251

Não deveria haver uma entrada do kernel 3.11 lá? Como eu atualizo o dkms para ver o novo kernel que acabou de ser instalado? Ou esse não é o problema?

    
por fig 27.02.2014 / 22:20

3 respostas

2

Entendi! : -)

sudo gedit /usr/src/fglrx-13.251/kcl_acpi.c

Exclua estas últimas 3 linhas no arquivo:

     ((acpi_table_handler)handler)(hdr);
     return KCL_ACPI_OK;
}

substitua-os por:

#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,1)
    ((acpi_tbl_table_handler)handler)(hdr);
#else
    ((acpi_table_handler)handler)(hdr);
#endif
    return KCL_ACPI_OK;
}

Em seguida, execute:

sudo dkms install -m fglrx -v 13.251 -k 3.11.0-17-generic

Em seguida, reinicie. Trabalhei para mim - trabalhando o kernel 3.11 e fglrx agora!

(Eu trabalhei isso a partir desta página: link )

    
por fig 03.03.2014 / 16:28
1

Não é possível comentar. então, aqui está uma coisa de "resposta" -ishish ...

Atualizações de kernel pararam de regenerar os módulos fglrx em 12.04 um tempo atrás (> 1 ano). Após a reinicialização (para ativar o novo kernel), o lightdm permitirá o login, mas você receberá rapidamente um erro relacionado ao tamanho da tela virtual e será enviado de volta à tela de login. Monitor primário tem resolução muito baixa. Monitor secundário mostra preto.

Minha solução foi limpar o fglrx e reinstalar os pacotes fglrx deb.

  • Ctrl + Alt + F1
  • Fazer login.
  • dpkg -l | grep fglrx
  • sudo apt-get purge <packages output from previous command>
  • cd /path/to/generated/fglrx*.deb
  • sudo dpkg -i fglrx*.deb

Essa "solução" exige que você a repita toda vez que você instalar um novo kernel, o que é uma droga.

@fig Você precisa reeditar o 'kcl_acpi.c' toda vez que houver um novo kernel? Toda vez que há um novo fglrx?

    
por d-man97 02.07.2015 / 02:41
0

me salvou também Erro que recebi e encontrei apenas respostas enganosas em askubuntu.com

Problema:

   tilo@t-ubuntu:~$ fglrxinfo
  X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  155 (ATIFGLEXTENSION)
  Minor opcode of failed request:  66 ()
  Serial number of failed request:  13
  Current serial number in output stream:  13

Usar sua descrição me trouxe 12.04.4 com stack 3.11 saucy de volta.

Depois de editar o final do arquivo 'kcl_acpi.c' eu corri

sudo dkms install -m fglrx -v 13.251 -k 3.11.0-19-generic 

Saída como ref

tilo@t-ubuntu:~$ sudo dkms install -m fglrx -v 13.251 -k 3.11.0-19-generic 

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area....
cd /var/lib/dkms/fglrx/13.251/build; sh make.sh --nohints --uname_r=3.11.0-19-generic --norootcheck.....
cleaning build area....

DKMS: build completed.

fglrx.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/3.11.0-19-generic/updates/dkms/

depmod.....

DKMS: install completed.
tilo@t-ubuntu:~$ 

Agora fglrxinfo

tilo@t-ubuntu:~$ fglrxinfo
display: :0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Mobility Radeon HD 5800 Series
OpenGL version string: 4.3.12618 Compatibility Profile Context 13.251

btw before 'Contexto do perfil de compatibilidade 9.012', mas também tentei reinstalar a partir do site da ATI.

    
por TiloBunt 08.04.2014 / 08:01