Re: [PATCH] deinline a few large functions in vlan code v2

From: Dave Dillow
Date: Mon Apr 10 2006 - 11:27:06 EST


On Mon, 2006-04-10 at 17:16 +0300, Denis Vlasenko wrote:
> On Monday 10 April 2006 08:45, David S. Miller wrote:
> > From: Denis Vlasenko <vda@xxxxxxxxxxxxx>
> > Date: Mon, 10 Apr 2006 08:28:20 +0300
> >
> > > IOW: shouldn't calls to these functions sit in
> > > #if defined(CONFIG_VLAN_8021Q) || defined (CONFIG_VLAN_8021Q_MODULE)
> > > block? For example, typhoon.c:
> > >
> > > spin_lock(&tp->state_lock);
> > > +#if defined(CONFIG_VLAN_8021Q) || defined (CONFIG_VLAN_8021Q_MODULE)
> > > if(tp->vlgrp != NULL && rx->rxStatus & TYPHOON_RX_VLAN)
> > > vlan_hwaccel_receive_skb(new_skb, tp->vlgrp,
> > > ntohl(rx->vlanTag) & 0xffff);
> > > else
> > > +#endif
> > > netif_receive_skb(new_skb);
> > > spin_unlock(&tp->state_lock);
> > >
> > > Same for s2io.c, chelsio/sge.c, etc...
> >
> > Very likely yes. tp->vlgrp will never be non-NULL in such situations
> > so it's not a correctness issue, but rather an optimization :-)
>
> Done. Please see attached.

I see this as a minor optimization, at the cost uglifying the body of a
function. Besides, if you're going to do this, you can get rid of the
spin_lock functions around it to, since they only protect tp->vlgrp in
this instance.

Please don't apply this to typhoon.c
--
Dave Dillow <dave@xxxxxxxxxxxxxx>

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