> -----Original Message-----
> From: Jiri Pirko [mailto:jpi...@redhat.com]
> Sent: Thursday, July 21, 2011 6:23 AM
> To: net...@vger.kernel.org
> Cc: da...@davemloft.net; shemmin...@linux-foundation.org;
> eric.duma...@gmail.com; gree...@candelatech.com; mir...@gmail.com;
> Kirsher, Jeffrey T; Brandeburg, Jesse; Waskiewicz Jr, Peter P; Allan,
> Bruce W; Wyborny, Carolyn; Skidmore, Donald C; Rose, Gregory V; Duyck,
> Alexander H; Ronciak, John; e1000-devel@lists.sourceforge.net;
> je...@nicira.com
> Subject: [patch net-next-2.6 18/47 V2] igbvf: do vlan cleanup
> 
> - unify vlan and nonvlan rx path
> - kill adapter->vlgrp and igbvf_vlan_rx_register
> 
> Signed-off-by: Jiri Pirko <jpi...@redhat.com>
> ---
>  drivers/net/igbvf/igbvf.h  |    4 +-
>  drivers/net/igbvf/netdev.c |   55 +++++++++++++++++++--------------------
> ----
>  2 files changed, 26 insertions(+), 33 deletions(-)
> 
> diff --git a/drivers/net/igbvf/igbvf.h b/drivers/net/igbvf/igbvf.h
> index d5dad5d..fd4a7b7 100644
> --- a/drivers/net/igbvf/igbvf.h
> +++ b/drivers/net/igbvf/igbvf.h
> @@ -34,7 +34,7 @@
>  #include <linux/timer.h>
>  #include <linux/io.h>
>  #include <linux/netdevice.h>
> -
> +#include <linux/if_vlan.h>
> 
>  #include "vf.h"
> 
> @@ -173,7 +173,7 @@ struct igbvf_adapter {
> 
>       const struct igbvf_info *ei;
> 
> -     struct vlan_group *vlgrp;
> +     unsigned long active_vlans[BITS_TO_LONGS(VLAN_N_VID)];
>       u32 bd_number;
>       u32 rx_buffer_len;
>       u32 polling_interval;
> diff --git a/drivers/net/igbvf/netdev.c b/drivers/net/igbvf/netdev.c
> index 64b47bf..d924b09 100644
> --- a/drivers/net/igbvf/netdev.c
> +++ b/drivers/net/igbvf/netdev.c
> @@ -100,12 +100,12 @@ static void igbvf_receive_skb(struct igbvf_adapter
> *adapter,
>                                struct sk_buff *skb,
>                                u32 status, u16 vlan)
>  {
> -     if (adapter->vlgrp && (status & E1000_RXD_STAT_VP))
> -             vlan_hwaccel_receive_skb(skb, adapter->vlgrp,
> -                                      le16_to_cpu(vlan) &
> -                                      E1000_RXD_SPC_VLAN_MASK);
> -     else
> -             netif_receive_skb(skb);
> +     if (status & E1000_RXD_STAT_VP) {
> +             u16 vid = le16_to_cpu(vlan) & E1000_RXD_SPC_VLAN_MASK;
> +
> +             __vlan_hwaccel_put_tag(skb, vid);
> +     }
> +     netif_receive_skb(skb);
>  }
> 
>  static inline void igbvf_rx_checksum_adv(struct igbvf_adapter *adapter,
> @@ -1167,22 +1167,29 @@ static int igbvf_poll(struct napi_struct *napi,
> int budget)
>   */
>  static void igbvf_set_rlpml(struct igbvf_adapter *adapter)
>  {
> -     int max_frame_size = adapter->max_frame_size;
> +     int max_frame_size;
>       struct e1000_hw *hw = &adapter->hw;
> 
> -     if (adapter->vlgrp)
> -             max_frame_size += VLAN_TAG_SIZE;
> -
> +     max_frame_size = adapter->max_frame_size + VLAN_TAG_SIZE;
>       e1000_rlpml_set_vf(hw, max_frame_size);
>  }
> 
> -static void igbvf_vlan_rx_add_vid(struct net_device *netdev, u16 vid)
> +static bool __igbvf_vlan_rx_add_vid(struct igbvf_adapter *adapter, u16
> vid)
>  {
> -     struct igbvf_adapter *adapter = netdev_priv(netdev);
>       struct e1000_hw *hw = &adapter->hw;
> 
>       if (hw->mac.ops.set_vfta(hw, vid, true))
>               dev_err(&adapter->pdev->dev, "Failed to add vlan id %d\n",
> vid);
> +             return false;
> +     return true;
> +}

I'm pretty sure you intended to put a curly brace after the if statement here.

Other than that it seems fine.

- Greg



------------------------------------------------------------------------------
5 Ways to Improve & Secure Unified Communications
Unified Communications promises greater efficiencies for business. UC can 
improve internal communications as well as offer faster, more efficient ways
to interact with customers and streamline customer service. Learn more!
http://www.accelacomm.com/jaw/sfnl/114/51426253/
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to