有什么方法可以检查初始化tasklet的tasklet_init函数是否失败了?
最佳答案
如果您查看源代码(在 kernel/softirq.c
中),您会看到:
void tasklet_init(struct tasklet_struct *t,
void (*func)(unsigned long), unsigned long data)
{
t->next = NULL;
t->state = 0;
atomic_set(&t->count, 0);
t->func = func;
t->data = data;
}
该函数所做的只是设置一些结构成员,因此 tasklet_init
不可能失败。
一般来说,如果内核函数返回void
,那么您不需要检查它是否成功。当然,Linux 内核的好处在于您始终可以引用源代码并查看是否有任何可能导致故障的方法。
关于linux - 如何检查 tasklet_init 调用是否失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7681607/