spin_lock_irqsave和在rcu_read_lock中的alloc

时间:2014-03-17 17:00:18

标签: linux linux-kernel spinlock rcu

您好,

我有一个驱动程序代码,它应该对接口上收到的某些数据包起作用。驱动程序使用spin_lock_irqsave来管理并行的此类请求,然后再将其提供给硬件。

要处理数据包,它需要我正在编写的内核模块提供的一些上下文信息。可以使用受rcu保护的hlist管理多个上下文信息。现在,当数据包到达时,此模块应使用rcu_read_lock()内的数据包签名查找上下文信息,然后将数据包和找到的上下文提供给驱动程序。

现在,我已经读过内核线程/模块不应该在rcu_read_lock()中阻塞/睡眠,我应该如何管理它。

感谢任何帮助?

0 个答案:

没有答案