[VLAN] spin lock question
Alex Zeffertt
ajz at cambridgebroadband.com
Tue Oct 10 01:18:45 PDT 2006
Stephen Hemminger wrote:
> On Mon, 9 Oct 2006 12:39:44 -0700
> Stephen Hemminger <shemminger at osdl.org> wrote:
>
>> On Fri, 06 Oct 2006 09:48:27 +0100
>> Alex Zeffertt <ajz at cambridgebroadband.com> wrote:
>>
>>> Hi list,
>>>
>>> I've been reading through the 8021q.o module source recently and
>>> I am confused by the choice of spin lock used in the following
>>> code:
>>>
>>>
>>> int vlan_skb_recv(struct sk_buff *skb, struct net_device *dev,
>>> struct packet_type* ptype)
>>> {
>>> ...
>>> spin_lock_bh(&vlan_group_lock);
>>> skb->dev = __find_vlan_dev(dev, vid);
>>> if (!skb->dev) {
>>> spin_unlock_bh(&vlan_group_lock);
>>> ...
>>>
>> That code should use RCU actually.
>
> That's what 2.6 already does.
>
>
Hi Stephen, thanks for your replies. I now think I understand, the key thing
being the implicit ref counting in spin_unlock_bh.
But, for the record, what is RCU?
Alex
More information about the Vlan
mailing list