aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-08-14 19:07:21 -0400
committerDavid S. Miller <davem@davemloft.net>2009-08-14 19:07:21 -0400
commitcf9911166113e471e1796eaf273982d8e43b138d (patch)
tree141ca87902690967620d6297c88746e2adb6dae5 /drivers
parentdeeb16dc24b68cbdca72dc717ae82178a6644801 (diff)
parent88512935a24305fea7aecc9ba4d675869e97fc2a (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/ixgbe/ixgbe_fcoe.c2
-rw-r--r--drivers/net/ixgbe/ixgbe_main.c4
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00.h6
3 files changed, 7 insertions, 5 deletions
diff --git a/drivers/net/ixgbe/ixgbe_fcoe.c b/drivers/net/ixgbe/ixgbe_fcoe.c
index fa9f24e23683..28cf104e36cc 100644
--- a/drivers/net/ixgbe/ixgbe_fcoe.c
+++ b/drivers/net/ixgbe/ixgbe_fcoe.c
@@ -336,7 +336,7 @@ int ixgbe_fcoe_ddp(struct ixgbe_adapter *adapter,
336 /* return 0 to bypass going to ULD for DDPed data */ 336 /* return 0 to bypass going to ULD for DDPed data */
337 if (fcstat == IXGBE_RXDADV_STAT_FCSTAT_DDP) 337 if (fcstat == IXGBE_RXDADV_STAT_FCSTAT_DDP)
338 rc = 0; 338 rc = 0;
339 else 339 else if (ddp->len)
340 rc = ddp->len; 340 rc = ddp->len;
341 } 341 }
342 342
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c
index 71df9ed9b534..8a8518dd6948 100644
--- a/drivers/net/ixgbe/ixgbe_main.c
+++ b/drivers/net/ixgbe/ixgbe_main.c
@@ -494,12 +494,12 @@ static void ixgbe_receive_skb(struct ixgbe_q_vector *q_vector,
494 494
495 skb_record_rx_queue(skb, ring->queue_index); 495 skb_record_rx_queue(skb, ring->queue_index);
496 if (!(adapter->flags & IXGBE_FLAG_IN_NETPOLL)) { 496 if (!(adapter->flags & IXGBE_FLAG_IN_NETPOLL)) {
497 if (adapter->vlgrp && is_vlan && (tag != 0)) 497 if (adapter->vlgrp && is_vlan && (tag & VLAN_VID_MASK))
498 vlan_gro_receive(napi, adapter->vlgrp, tag, skb); 498 vlan_gro_receive(napi, adapter->vlgrp, tag, skb);
499 else 499 else
500 napi_gro_receive(napi, skb); 500 napi_gro_receive(napi, skb);
501 } else { 501 } else {
502 if (adapter->vlgrp && is_vlan && (tag != 0)) 502 if (adapter->vlgrp && is_vlan && (tag & VLAN_VID_MASK))
503 vlan_hwaccel_rx(skb, adapter->vlgrp, tag); 503 vlan_hwaccel_rx(skb, adapter->vlgrp, tag);
504 else 504 else
505 netif_rx(skb); 505 netif_rx(skb);
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h
index 5bc100db28d4..99e89596cef6 100644
--- a/drivers/net/wireless/rt2x00/rt2x00.h
+++ b/drivers/net/wireless/rt2x00/rt2x00.h
@@ -851,13 +851,15 @@ struct rt2x00_dev {
851static inline void rt2x00_rf_read(struct rt2x00_dev *rt2x00dev, 851static inline void rt2x00_rf_read(struct rt2x00_dev *rt2x00dev,
852 const unsigned int word, u32 *data) 852 const unsigned int word, u32 *data)
853{ 853{
854 *data = rt2x00dev->rf[word]; 854 BUG_ON(word < 1 || word > rt2x00dev->ops->rf_size / sizeof(u32));
855 *data = rt2x00dev->rf[word - 1];
855} 856}
856 857
857static inline void rt2x00_rf_write(struct rt2x00_dev *rt2x00dev, 858static inline void rt2x00_rf_write(struct rt2x00_dev *rt2x00dev,
858 const unsigned int word, u32 data) 859 const unsigned int word, u32 data)
859{ 860{
860 rt2x00dev->rf[word] = data; 861 BUG_ON(word < 1 || word > rt2x00dev->ops->rf_size / sizeof(u32));
862 rt2x00dev->rf[word - 1] = data;
861} 863}
862 864
863/* 865/*