Re: [PATCH] spinlock: rm duplicated preempt en/disable for bottomhalf

From: Eric Dumazet
Date: Tue Sep 27 2011 - 05:57:35 EST


Le mardi 27 septembre 2011 Ã 17:40 +0800, Bob Liu a Ãcrit :
> On Tue, Sep 27, 2011 at 5:13 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> > On Tue, 2011-09-27 at 15:56 +0800, Bob Liu wrote:
> >> local_bh_en/disable() has already deal with en/disable preempt, so rm the
> >> dumplicated one from spinlock_api_up/smp.h head file.
> >
> > I bet you haven't tried booting this.. you just broke stuff like:
> >
>
> I only tried it on blackfin arch and can boot successfully
> although it's a simple single-cpu ystem.
>
> > spin_lock_bh(&foo);
> > /* do crap */
> > spin_unlock(&foo);
> > /* do some other crap */
> > local_bh_enable();
> >
> >
> > And yes that does happen.
>
> Could you please give an example? I did a simple search but no result.
> I thought the user should use spin_lock_bh()/spin_unlock_bh() in pairs.
>

You probably can find such use in network stack.

net/ipv4/inet_hashtables.c function __inet_hash_connect()



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/