我正在尝试调试内核代码,因为“原子调度”使我的系统崩溃。在实际内核模块的某个点上,我添加了一行来调用另一个内核模块中定义的函数(这个是我制作的)。电话是:
mycallback(svc, skb);
并且mycallback()
函数返回int
。所以我有两个问题:
在内核内部调用非 void 函数而不将其结果分配给变量是否安全?
如果
mycallback()
调用的代码是 spin_locked 或类似的,它会安全吗?它会是 spin_locked/atomic 还是我可能会睡觉并危及内核?