Messages in this thread | | | Date | Sat, 31 Jan 2009 06:55:08 +0100 | From | Andi Kleen <> | Subject | Re: PROBLEM: in_atomic() misuse all over the place |
| |
> There's a bit of a problem here. If someone accidentally uses > gfp_any() inside a spinlock, it will do a sleeping allocation on > non-preempt kernels and will do an atomic allocation on preemptible > kernels, so we won't get to see the warning which would allow us to fix > the bug.
Yes exporting the function to drivers is dangerous I agree because it's easy to abuse.
> Would using irq_count() work? If so, that would fix this up.
There's nothing that works reliably to detect spinlocks on non preempt kernels.
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
| |