Tag Archives: Kernel

Atualizações precipitadas

Sábado passado, sem nada para fazer, resolvi configurar a rede wireless do meu notebook. Ela já estava funcionando com um driver padrão, mas não alcançava a velocidade total e de vez em quando simplesmente parava de funcionar.

Só que, para configurar ela direito a única opção que eu achei na hora foi recompilar o Kernel do Linux, pois o ndiswrapper ainda teimava que o módulo bcm43xx ainda estava lá, mesmo depois dele ser removido, excluído, exorcizado, etc…..

Comecei a me precipitar quando pensei comigo – “Se eu vou ter que recompilar o Kernel, porque não atualizar para a versão estável mais nova?”. Até aqui, nada fora do normal, é meu computador pessoal mesmo, não é nenhum sistema 24/7 de controle de alguma usina nuclear.

Então procurei por algum pacote já montado para o Slackware 11 (opção mais sensata). Não encontrando nada, apelei para o source oficial. Baixei a versão estável mais nova disponível (2.6.20.1) e depois de fazer o download do tar.bz2 de 41.4 MB descompactei o monstrinho no /usr/src e comecei a brincadeira.

Durante a configuração eu procurei otimizar o novo Kernel atendendo aos seguintes quesitos:

1º – compilar mais rápido, tirando opções que eu nunca irei utilizar, como um módulo para uma torradeira de café scsi, e outros módulos similares;

2º – deixar o boot mais rápido, marcando as opções que eu sabia que meu notebook utilizava como Y, ou seja, engordando o Kernel.

Depois de mais ou menos uns 30 minutos “passeando” pelas páginas no menuconfig, sempre verificando o lspci e lembrando de outras configurações que eu já havia feito, chegou a hora de compilar o monstrinho.

Deixei a maquina trabalhando e fui tomar café. Depois de um bom tempo o novo Kernel estava compilado e sem nenhuma mensagem de erro. Bastava eu instalar o novo vmlinuz no lugar certo e reiniciar a máquina. E assim eu o fiz.

Máquina reiniciada, tudo funcionando (verifiquei tudo, principalmente o acpi), chegou a hora de instalar o ndiswrapper com o driver (do Windows XP) da placa wireless.

Quando tentei compilar o ndiswrapper ocorreu um erro. Uma macro do Kernel que supostamente receberia 3 parâmetros agora recebe somente 2. E agora ?! Fui pesquisar… não demorou muito achei o problema. Algum desenvolvedor (maluco) que trabalhou nas últimas versões mudou a macro INIT_WORK, e o patch vai sair em breve.

Não pensei duas vezes, peguei o cd 2 do Slackware 11, reinstalei os pacotes do Kernel 2.6 estável que tem no cd, utilizei o arquivo de configuração atual para não perder tanto tempo reconfigurando tudo de novo e mandei compilar tudo outra vez.

Ai fui pensar no que eu tinha deixado passar. Não tinha lido os changelogs das últimas versões do Kernel. E se eu tivesse lido!? Não ia adiantar nada, pois como eu saberia que o ndiswrapper utilizava a macro que foi alterada.

Share Button