Ao tentar compilar a versão 2.6.31 do kernel linux (com suporte ao Xen) obtive a seguinte mensagem de erro:
kernel/cpu.c: In function 'disable_nonboot_cpus':
kernel/cpu.c:394: error: implicit declaration of function '_cpu_down'
make[1]: *** [kernel/cpu.o] Error 1
make: *** [kernel] Error 2
Uma rápida pesquisa no google me revelou que o problema se encontrava na falta do suporte a hot-pluggable cpu’s. Este recurso permite que CPU’s possam ser ligadas/desligadas durante a execução da máquina, possibilitando a economia de energia e a própria inclusão de novas CPU’s em sistemas multi-processados.
Esse recurso já vem habilitado por padrão caso você esteja configurando o kernel pela primeira vez, mas no meu caso, copiei o arquivo .config de outro kernel que não tinha esse suporte habilitado.
A solução é simples e envolve executar novamente o configurador do kernel para habilitar a opção pertinente ou editar diretamente o arquivo .config, sendo mais aconselhável executar o o configurador (make menuconfig).
A opção que precisa ser habilitada é CONFIG_HOTPLUG_CPU e pode ser encontrada em:
Processor type and features --->
[*] Support for hot-pluggable CPUs
Pronto, agora é só executar o make novamente e aguardar o fim da compilação.
Referências
Posts Relacionados:
Related posts brought to you by Yet Another Related Posts Plugin.
Tags: Gentoo,Kernel,Linux,XEN
Categories: Dicas
2 Comments »
2 Responses to “Erro ao compilar o kernel 2.6.31: implicit declaration of function ‘_cpu_down’”
Hi!
As a native French speaker, I was somehow able to understand most of the post — I ran into the same error and google wasn’t exactly helpful.
Thanks for the tip, much appreciated
Hi. Thanks for your visit!
It’s nice to known this post is useful to somebody.
Care to comment?