Como escrever um patch para o kernel do VyOS

0

Eu sou novo no desenvolvimento do VyOS. Eu escrevi um patch que vai buscar informações do módulo do kernel VyOS e escrevê-lo em um soquete netlink. Mas o problema é que eu não tenho certeza se devo editar o código do módulo do kernel diretamente para chamar minha função definida ou devo escrever o patch. Se eu tiver que fazer um arquivo de patch para ele, então onde eu o coloco no código-fonte do kernel? Eu já fiz um patch usando o comando diff.

    
por Mazhar 14.11.2015 / 13:19

1 resposta

0

Após uma longa pesquisa, resolvi o problema que estava enfrentando. Aqui estão as conclusões, caso algum de vocês fique preso no mesmo problema.

  1. Sim, você pode editar o código do módulo do kernel no VyOS Development. Mas esse método não é muito apreciado.

  2. Sim, você pode escrever patch para módulos do kernel também. e deve estar em formato GIT, conforme descrito em Como escrever o patch VyOS . Em breve vou atualizar, onde colocar o arquivo .patch no código do kernel do VyOS.

Para verificar a saída de depuração usando dmesg , use a opção KERN_DEBUG . Como não tenho certeza sobre os outros.

printk(KERN_DEBUG "%s: Debuging info \n", __FUNCTION__);

Além disso, para verificar a modificação no kernel do VyOS, você não precisa criar um arquivo ISO completo o tempo todo. Você só precisa executar os seguintes comandos.

* Observe que cada caminho é descrito toda vez a partir do diretório principal do edifício iso para evitar problemas de caminho.

cd build-iso/
sudo make clean-linux-image
sudo make linux-image

Então

cd buil-iso/pkgs/

Aqui você encontrará estes pacotes debian.

buil-iso/pkgs/linux-image-3.13.11-1-amd64-vyos_999.dev_amd64.deb
buil-iso/pkgs/linux-libc-dev_999.dev_amd64.deb
buil-iso/pkgs/linux-vyatta-kbuild_999.dev_amd64.deb

Copie esses arquivos para um sistema VyOS já instalado e instale-os lá.

dpkg -i linux-image-3.13.11-1-amd64-vyos_999.dev_amd64.deb
dpkg -i linux-libc-dev_999.dev_amd64.deb
dpkg -i linux-vyatta-kbuild_999.dev_amd64.deb

reboot do sistema e verifique as modificações usando dmesg .

    
por 15.12.2015 / 18:25