Eu tenho uma instalação do Fedora 19 em um laptop, que tem placa gráfica integrada Intel & gráficos discretos da AMD. Eu tenho usado o driver radeon
, que funciona para a maioria das coisas - embora eu tenha tentado recentemente o driver fglrx
, e achei que ele seja um pouco mais rápido e tenha melhor gerenciamento de energia, embora alguns programas baseados em OpenGL não funcionar corretamente.
Então, como posso desativar o carregamento do driver fglrx
na inicialização, para que ele volte para o driver radeon
?
Eu tentei fazer isso editando o arquivo /etc/modprobe.d/blacklist-fglrx.conf
# Advanced Micro Devices, Inc.
# radeon conflicts with AMD Linux Graphics Driver
blacklist radeon
comentando a linha blacklist radeon
e adicionando 'blacklist fglrx_pci
'abaixo dele. Isso só resultou na tela de login da GUI não carregando, então eu tive que mudar para um TTY e editar de volta para o que era.
lspci -k
com fglrx
instalado (a única diferença com ele não instalada é Subsystem: Lenovo Radeon HD 6370M/7370M
não é mostrado, e radeon
é usado como o driver AMD * - quando apenas está na lista negra < em> eu acho que a única mudança é radeon
é usado) :
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
Subsystem: Lenovo Device 3975
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09)
Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
Subsystem: Lenovo Device 397a
Kernel driver in use: i915
00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
Subsystem: Lenovo Device 3975
Kernel driver in use: mei
00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
Subsystem: Lenovo Device 3975
Kernel driver in use: ehci-pci
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
Subsystem: Lenovo Device 3975
Kernel driver in use: snd_hda_intel
00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5)
Kernel driver in use: pcieport
00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5)
Kernel driver in use: pcieport
00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)
Subsystem: Lenovo Device 3975
Kernel driver in use: ehci-pci
00:1f.0 ISA bridge: Intel Corporation HM65 Express Chipset Family LPC Controller (rev 05)
Subsystem: Lenovo Device 3975
Kernel driver in use: lpc_ich
00:1f.2 IDE interface: Intel Corporation 6 Series/C200 Series Chipset Family 4 port SATA IDE Controller (rev 05)
Subsystem: Lenovo Device 3975
Kernel driver in use: ata_piix
00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05)
Subsystem: Lenovo Device 3975
00:1f.5 IDE interface: Intel Corporation 6 Series/C200 Series Chipset Family 2 port SATA IDE Controller (rev 05)
Subsystem: Lenovo Device 3975
Kernel driver in use: ata_piix
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Robson CE [Radeon HD 6370M/7370M]
Subsystem: Lenovo Radeon HD 6370M/7370M
Kernel driver in use: fglrx_pci
07:00.0 Ethernet controller: Qualcomm Atheros AR8152 v2.0 Fast Ethernet (rev c1)
Subsystem: Lenovo Device 3979
Kernel driver in use: atl1c
08:00.0 Network controller: Broadcom Corporation BCM4313 802.11bgn Wireless Network Adapter (rev 01)
Subsystem: Broadcom Corporation Device 051b
Kernel driver in use: bcma-pci-bridge
Aqui é o RPM feito pelo instalador (o instalador oferece instalar diretamente ou construir pacotes para o openSUSE ou RedHat, eu usei a última opção do RedHat 64a) , e aqui são os scripts de instalação / desinstalação do RPM extraídos dele.
Sei que tentei usar modprobe
para remover o módulo quando o sistema foi inicializado - isso não funciona, resultando em modprobe: FATAL: Module fglrx is in use
.
Na lista negra do driver (e removendo /etc/X11/xorg.conf
- é necessário criar uma após a instalação do fglrx
(parece this ), e o não precisa de nenhum ) trabalha em que o driver radeon é usado - o problema aqui é que algumas aplicações não funcionam e o Gnome Shell & GDM mostra isso:
Noentanto,desinstalarodriverereinicializarsemprefunciona.
Porexemplo,aplicandoestalistanegraem/etc/modprobe.d/blacklist-fglrx.conf
:
#AdvancedMicroDevices,Inc.#radeonconflictswithAMDLinuxGraphicsDriver#blacklistradeonblacklistfglrxblacklistamd_iommu_v2blacklistfglrx_pci
eremovendoxorg.conf
resultanoerroGDMacima.Eupossoentão(eter)mudadoparaumTTY,eusadosystemctl
paramudardoGDMparaoLightDMelogarnoXfce(queparecefuncionarnormalmente).Aplicativoscomocairo-dock
falhamcomfalhasdesegmentação.glxinfo
dá:
nameofdisplay::0.0XErroroffailedrequest:BadRequest(invalidrequestcodeornosuchoperation)Majoropcodeoffailedrequest:153(GLX)Minoropcodeoffailedrequest:19(X_GLXQueryServerString)Serialnumberoffailedrequest:12Currentserialnumberinoutputstream:12
systemctl
mostraissocomoostatusdoGDM(antesdeeumudarparaoLightDM+Xfce),mesmoquetenhafalhado:
gdm.service-GNOMEDisplayManagerLoaded:loaded(/usr/lib/systemd/system/gdm.service;enabled)Active:active(running)sinceMon2014-11-1017:15:27GMT;1min34sagoMainPID:471(gdm)CGroup:name=systemd:/system/gdm.service├─471/usr/sbin/gdm├─597/usr/libexec/gdm-simple-slave--display-id/org/gnome/DisplayManager/Displays/_0├─921/usr/bin/Xorg:0-backgroundnone-verbose-auth/run/gdm/auth-for-gdm-l88Ufh/database-seatseat0-nolistentcpvt1└─1102gdm-session-worker[pam/gdm-launch-environment]
elspci-k
sãoosseguintes:
00:00.0Hostbridge:IntelCorporation2ndGenerationCoreProcessorFamilyDRAMController(rev09)Subsystem:LenovoDevice397500:01.0PCIbridge:IntelCorporationXeonE3-1200/2ndGenerationCoreProcessorFamilyPCIExpressRootPort(rev09)Kerneldriverinuse:pcieport00:02.0VGAcompatiblecontroller:IntelCorporation2ndGenerationCoreProcessorFamilyIntegratedGraphicsController(rev09)Subsystem:LenovoDevice397aKerneldriverinuse:i91500:16.0Communicationcontroller:IntelCorporation6Series/C200SeriesChipsetFamilyMEIController#1(rev04)Subsystem:LenovoDevice3975Kerneldriverinuse:mei00:1a.0USBcontroller:IntelCorporation6Series/C200SeriesChipsetFamilyUSBEnhancedHostController#2(rev05)Subsystem:LenovoDevice3975Kerneldriverinuse:ehci-pci00:1b.0Audiodevice:IntelCorporation6Series/C200SeriesChipsetFamilyHighDefinitionAudioController(rev05)Subsystem:LenovoDevice3975Kerneldriverinuse:snd_hda_intel00:1c.0PCIbridge:IntelCorporation6Series/C200SeriesChipsetFamilyPCIExpressRootPort1(revb5)Kerneldriverinuse:pcieport00:1c.1PCIbridge:IntelCorporation6Series/C200SeriesChipsetFamilyPCIExpressRootPort2(revb5)Kerneldriverinuse:pcieport00:1d.0USBcontroller:IntelCorporation6Series/C200SeriesChipsetFamilyUSBEnhancedHostController#1(rev05)Subsystem:LenovoDevice3975Kerneldriverinuse:ehci-pci00:1f.0ISAbridge:IntelCorporationHM65ExpressChipsetFamilyLPCController(rev05)Subsystem:LenovoDevice3975Kerneldriverinuse:lpc_ich00:1f.2IDEinterface:IntelCorporation6Series/C200SeriesChipsetFamily4portSATAIDEController(rev05)Subsystem:LenovoDevice3975Kerneldriverinuse:ata_piix00:1f.3SMBus:IntelCorporation6Series/C200SeriesChipsetFamilySMBusController(rev05)Subsystem:LenovoDevice397500:1f.5IDEinterface:IntelCorporation6Series/C200SeriesChipsetFamily2portSATAIDEController(rev05)Subsystem:LenovoDevice3975Kerneldriverinuse:ata_piix01:00.0VGAcompatiblecontroller:AdvancedMicroDevices,Inc.[AMD/ATI]RobsonCE[RadeonHD6370M/7370M]Subsystem:LenovoRadeonHD6370M/7370MKerneldriverinuse:radeon07:00.0Ethernetcontroller:QualcommAtherosAR8152v2.0FastEthernet(revc1)Subsystem:LenovoDevice3979Kerneldriverinuse:atl1c08:00.0Networkcontroller:BroadcomCorporationBCM4313802.11bgnWirelessNetworkAdapter(rev01)Subsystem:BroadcomCorporationDevice051bKerneldriverinuse:bcma-pci-bridge
Aquitambémestãoosregistrosde /var/log/gdm/:0.log
, /var/log/Xorg.0.log
& /var/log/Xorg.0.log.old
- Eu verifiquei os timestamps de cada log, e acho que o GDM & os logs antigos do Xorg são os logs corretos - o último log do Xorg é o da sessão atual do Xfce e também deve ser relevante.
Eu acho que o problema é ou ainda há alguma configuração em algum lugar dizendo para usar o driver fglrx, ou há uma versão corrigida da libGL (ou algo semelhante) que fglrx instalado que precisa fglrx (caso em que isso pode ser insolúvel .......).