Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
> IOW:
> Either we must demand that CPU 2 uses irq-safe spinlocks in order to
> protect against sk->write_space(), or we must demand that CPU 1 should drop
> 'lock1' before being allowed to call dev_kfree_skb_any().
Or dev_kfree_skb_any() should consider disabled local interrupts as
'in_irq()' and call dev_kfree_skb_irq() in this case, or the driver
could call dev_kfree_irq() if it really wants to free while holding an
irq spinlock.
But that's a known problem:
http://groups.google.com/groups?q=dev_kfree_skb_any&hl=en&rnum=1&selm=linux.net.20010905.184245.94554736.davem%40redhat.com
--
Manfred
Hello!
> should consider disabled local interrupts as
> 'in_irq()'
How to do this?
Alexey
[email protected] wrote:
>
> Hello!
>
> > should consider disabled local interrupts as
> > 'in_irq()'
>
> How to do this?
>
Arch specific, like __global_cli() in arch/i386/kernel/irq.c.
What about a rate-limited warning if dev_kfree_skb_any is called with
disabled interrupts?
--
Manfred