我已经在Ubuntu上重新编译了Linux内核,现在升级到4.17.6。我需要修改 TCP/IP 堆栈部分,特别是其中一种拥塞控制算法(例如 Vegas)。成功重新编译到4.17.6后,我尝试修改代码并仅重新编译相关模块,但在.txt文件上看不到任何消息dmesg
。我按照以下步骤测试printk
和是否pr_debug
有效,但没有一个有效。
我#define DEBUG
在修改后的文件之上添加了内容,然后将以下几行添加到所需的函数中net/ipv4/ip_input.c
:net/ipv4/ip_output.c
printk(KERN_DEBUG "test:");
printk("test:");
pr_debug("test:");
我运行了以下命令:
sudo make -j8 net
sudo make -j8 M=net
sudo make -j8 modules SUBDIRS=net
sudo make -j8 modules_install SUBDIRS=net
sudo reboot
重新启动后,我修改printk
文件以通过执行显示所有消息级别echo 8 | sudo dd of=/proc/sys/kernel/printk
。然后尝试从虚拟机 ping 到虚拟机,并尝试打开网页。然后,尝试通过运行查看消息dmesg | grep test:
但没有任何消息显示,问题出在哪里?