[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAEP_g=_0Ej09+KYbvEJz1+joYtms+S_67XSVVPMoG_hfJnmrBQ@mail.gmail.com>
Date: Wed, 20 Jul 2011 10:35:33 -0700
From: Jesse Gross <jesse@...ira.com>
To: Jiri Pirko <jpirko@...hat.com>
Cc: netdev@...r.kernel.org, davem@...emloft.net,
shemminger@...ux-foundation.org, eric.dumazet@...il.com,
greearb@...delatech.com, mirqus@...il.com,
jeffrey.t.kirsher@...el.com, jesse.brandeburg@...el.com,
peter.p.waskiewicz.jr@...el.com, bruce.w.allan@...el.com,
carolyn.wyborny@...el.com, donald.c.skidmore@...el.com,
gregory.v.rose@...el.com, alexander.h.duyck@...el.com,
john.ronciak@...el.com, e1000-devel@...ts.sourceforge.net
Subject: Re: [patch net-next-2.6 37/47] igb: do vlan cleanup
On Wed, Jul 20, 2011 at 7:54 AM, Jiri Pirko <jpirko@...hat.com> wrote:
> @@ -2943,7 +2944,7 @@ static void igb_rlpml_set(struct igb_adapter *adapter)
> struct e1000_hw *hw = &adapter->hw;
> u16 pf_id = adapter->vfs_allocated_count;
>
> - if (adapter->vlgrp)
> + if (igb_vlan_used(adapter))
> max_frame_size += VLAN_TAG_SIZE;
There are similar issues here as with the VF driver. I think you're
also confusing vlan acceleration with vlan filtering. If no vlan
filters are in use but the card is in promiscuous mode, the buffer
will be undersized and we lose tagged packets.
> +static void igb_vlan_mode(struct net_device *netdev, bool vlan_on)
> {
> struct igb_adapter *adapter = netdev_priv(netdev);
> struct e1000_hw *hw = &adapter->hw;
> u32 ctrl, rctl;
>
> igb_irq_disable(adapter);
> - adapter->vlgrp = grp;
>
> - if (grp) {
> + if (vlan_on) {
> /* enable VLAN tag insert/strip */
This should be controlled by ethtool, not by whether vlan filters are
enabled. Essentially, with this, you are recreating the logic of the
old vlan model in the new one.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists