我有一个 debian linux 机器(Debian Squeeze),如果我运行一个嗅探接口的 python 脚本,它每隔几个小时就会死锁......
堆栈跟踪附在这个问题的底部。本质上,我有一个 Broadcom 以太网接口(bnx2
驱动程序),当我开始嗅探会话时它似乎死了,然后它尝试从同一接口传输帧。
据我所知,内核看门狗定时器正在跳闸......
NETDEV WATCHDOG: eth3 (bnx2): transmit queue 0 timed out
Run Code Online (Sandbox Code Playgroud)
我认为有一种方法可以使用ioctl
(ref: EmbeddedFreak: How to use linux watchdog )来控制看门狗定时器。
如何找到哪个看门狗定时器正在控制 eth3?如果您能告诉我如何更改计时器甚至禁用看门狗,则可以获得奖励积分...
如何防止以太网看门狗定时器引起问题?
Apr 30 08:38:44 Hotcoffee kernel: [275460.837147] ------------[ cut here ]------------
Apr 30 08:38:44 Hotcoffee kernel: [275460.837166] WARNING: at /build/buildd-linux-2.6_2.6.32-41squeeze2-amd64-NDo8b7/linux-2.6-2.6.32/debian/build/source_amd64_none/net/sched/sch_generic.c:261 dev_watchdog+0xe2/0x194()
Apr 30 08:38:44 Hotcoffee kernel: [275460.837169] Hardware name: PowerEdge R710
Apr 30 08:38:44 Hotcoffee kernel: [275460.837171] NETDEV WATCHDOG: eth3 (bnx2): transmit queue …
Run Code Online (Sandbox Code Playgroud) 我正在 Ubuntu 14.04 上编译内核 4.19,因为我有一个添加系统调用的任务,但是当我尝试启动这个内核时出现错误:
Kernel panic - not syncing: System is deadlocked on memory
Run Code Online (Sandbox Code Playgroud)
出现此消息后没有任何反应
/dev/sda1
,我已经建立了一个交换区,一切都完成了。 我使用的命令:
sudo cp /boot/config-**** .config
sudo make menuconfig # I did not change anything here
sudo make -j4
sudo make modules_install
sudo make install
reboot
Run Code Online (Sandbox Code Playgroud)对于系统调用,我只是在以下文件中添加了一个非常简单的 helloworld sys.c
:
asmlinkage int sys_mysyscall(int arg){printk("hello %d\n",arg);return 0;}
Run Code Online (Sandbox Code Playgroud)
我已将其添加到syscalls.h
and 中syscall_64.tbl
。