Meu medo é bloquear o módulo e zoar de vez o sistema de vídeo, já que é um sistema com chaveamento dinâmico. 
Tenho um notebook Dell Inspiron 5548. Esse notebook usa gráficos híbridos (possui duas GPU - unidades de processamento gráfico - ao invés de apenas uma): uma das GPU é da Intel e fica embutida no processador i7, enquanto a outra GPU é um chip onboard da AMD, modelo Radeon Topaz XT, também denominada R7 M260/M265. Fiz upgrade do XUbuntu 14.04 para o 16.04 (ambos de 64 bits) e o mesmo problema ocorreu. Trata-se de um bug que eu inclusive reportei
lá no Launchpad.
Descrição do problema: os *Ubuntu (Ubuntu, XUbuntu, KUbuntu etc.) versão 16.04 vêm com kernel da série 4.4.X. Esse tipo de kernel do *Ubuntu não funciona com o módulo de kernel
fglrx (driver gráfico proprietário da AMD), e por isso os *Ubuntu 16.04 vêm com os módulos de kernel
amdgpu e
radeon pré-instalados: esses módulos são de código aberto e visam substituir o módulo proprietário
fglrx. O kernel 4.4.X (ou posterior) automaticamente seleciona inicializar ou o módulo/driver
amdgpu ou então o módulo/driver
radeon: isso dependerá do modelo da sua GPU AMD, modelo esse que o kernel identifica antes de decidir qual driver inicializar. Enfim: é automática a instalação e inicialização de um dos dois drivers de código aberto que vêm nos *Ubuntu 16.04...
...porém, os kernels 4.4.X têm um bug que faz com que o driver amdgpu/radeon seja inicializado no momento errado. Isso gera um erro de ponteiro inválido, o que por sua vez induz o kernel panic e o consequente travamento.Usar a função
nomodeset dentro do GRUB realmente contorna o problema, porém isso faz com que o desempenho de ambas as GPU (tanto Intel quanto AMD) torne-se baixo, lento, uma verdadeira porcaria. Os gráficos 3D ficam com um péssimo desempenho e as conexões HDMI param de funcionar. Enfim: não recomendo a ninguém usar nomodeset!

Eu executei um
reverse commit bisect (uma espécie de "caça ao bug" que a gente executa de trás para a frente, desde o primeiro kernel livre do bug até o primeiro kernel problemático) e descobri que
o bug está presente em todos os kernels versão 4.4.X e 4.5.X, portanto nem percam tempo testando esses kernels.
Conforme eu comentei no
relatório do bug, após o
reverse commit bisect o que eu descobri foi que a partir do primeiro kernel 4.6.X (que é o kernel versão
4.6-rc1 / compilação
4.6.0-040600rc1-generic) o bug não existe mais.
Portanto,
nem é necessário instalar o kernel 4.6-rc7: até mesmo o kernel 4.6-rc1 (o primeiro da série "rc") já elimina o bug.
Segue um passo-a-passo para instalar o kernel 4.6-rc1:
1) Acesse
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/2) Faça download dos três arquivos para a sua arquitetura de sistema. Vou presumir que você salvará os arquivos .DEB dentro de sua pasta pessoal de Download (
/home/seu-nome-de-usuário/Downloads).
2.1) Caso seu sistema seja de 64 bits, faça download destes arquivos (salve-os em sua pasta pessoal de Downloads):
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/linux-headers-4.6.0-040600rc1_4.6.0-040600rc1.201603261930_all.debhttp://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/linux-headers-4.6.0-040600rc1-generic_4.6.0-040600rc1.201603261930_amd64.debhttp://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/linux-image-4.6.0-040600rc1-generic_4.6.0-040600rc1.201603261930_amd64.deb2.2) Caso seu sistema seja de 32 bits, faça download destes arquivos (salve-os em sua pasta pessoal de Downloads):
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/linux-headers-4.6.0-040600rc1_4.6.0-040600rc1.201603261930_all.debhttp://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/linux-headers-4.6.0-040600rc1-generic_4.6.0-040600rc1.201603261930_i386.debhttp://kernel.ubuntu.com/~kernel-ppa/mainline/v4.6-rc1-wily/linux-image-4.6.0-040600rc1-generic_4.6.0-040600rc1.201603261930_i386.debNota: caso não saiba se seu Linux é de 32 ou de 64 bits, execute o comando
uname -i. Se o resultado do comando tiver
64, seu sistema é de 64 bits. Caso contrário, seu sistema é de 32 bits.
3) Abra o emulador do shell (terminal de comandos) e execute este comando de instalação (estou presumindo que você salvou os pacotes .DEB em sua pasta pessoal de downloads):
sudo dpkg -i ~/Downloads/linux-*deb
Nota: o caractere ~ (til) é um atalho para a sua pasta pessoal.
4) Execute este comando para poder atualizar novamente o GRUB e em seguida forçar a reinicialização do sistema:
sudo update-grub ; sudo telinit 6
5) Após reiniciar seu computador, execute o comando abaixo para verificar a versão do kernel que o seu sistema está de fato executando (se tudo deu certo, o resultado do comando começará com o texto
4.6):
uname -r
6) Uma vez que seu computador esteja executando o *Ubuntu Linux com kernel versão 4.6.X, volte ao emulador de terminal do shell e execute este comando:
DRI_PRIME=1 glxgears
Se as engrenagens apareceram, estão se movimentando e a sua tela não travou, o bug não está presente. Deixe as engrenagens rodando e execute outras tarefas, como p.ex. abrir seu navegador, executar um MP3, assistir a um vídeo no YouTube, jogar algum jogo que use gráficos 3D, executar alguma proteção de tela que seja 3D etc. Se mesmo assim nada travar, o upgrade do kernel deu certo.
PS: não adicione os drivers amdgpu e radeon à blacklist (lista negra). O problema é no kernel, não nos drivers! E não existe driver alternativo que funcione com GPU da AMD em sistemas *Ubuntu que usem kernel 4.4.X ou posterior!