The title is pretty much the question...

I am writing some code that uses a spinlock to help in list management. The documentation on spinlocks are pretty clear about not making a call to anything that would sleep. I know there are ways to allocate memory that are "atomic", but I haven't seen anything about kfree or freeing the memory.

Intuition tells me it shouldn't ever sleep, but I haven't found were that is explicit.

有帮助吗?

解决方案

No, it never sleeps. It's safe to call kfree from arbitrary context. The only exception is the NMI oopser and similar arch code.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top