如何为 VyOS 内核编写补丁

如何为 VyOS 内核编写补丁

我是 VyOS 开发的新手。我编写了一个补丁,它将从 VyOS 内核模块获取信息并将其写入 netlink 套接字。但问题是我不确定是否应该直接编辑内核模块代码来调用我定义的函数,或者我应该编写补丁。如果我必须为其制作补丁文件,那么我应该将它放在内核源代码中的哪里?我已经使用 diff 命令制作了一个补丁文件。

答案1

经过长时间的搜索,我解决了我面临的问题。以下是结论,以防你们中的任何人陷入同样的​​问题。

  1. 是的,您可以在 VyOS Development 中编辑内核模块代码。但这种方法并没有受到太多重视。

  2. 是的,您也可以为内核模块编写补丁。它应该是 GIT 格式,如中所述如何编写VyOS补丁。很快我将更新.patch在 VyOS 内核代码中放置文件的位置。

要使用 检查调试输出dmesg,请使用KERN_DEBUG选项。因为我不确定其他人。

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

此外,要检查 VyOS 内核中的修改,您不需要始终制作完整的 ISO 文件。您只需要运行以下命令。

*请注意,每次都从主 iso 构建目录描述每个路径,以避免路径问题。

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

然后

cd buil-iso/pkgs/

在这里您将找到这些 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

将这些文件复制到已安装的 VyOS 系统并在那里安装它们。

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系统并使用 检查您的修改dmesg

相关内容