Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 327674
b: refs/heads/master
c: dcf3396
h: refs/heads/master
v: v3
  • Loading branch information
Johannes Berg committed Aug 20, 2012
1 parent e71e4bc commit a4313a7
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 18 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: fe94fe05e9fb7c1bea482d1b0fd09029a711cce2
refs/heads/master: dcf33963c48e1959c83fda84e336dbb000eefa3f
23 changes: 6 additions & 17 deletions trunk/net/mac80211/tx.c
Original file line number Diff line number Diff line change
Expand Up @@ -1719,7 +1719,7 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
struct ieee80211_local *local = sdata->local;
struct ieee80211_tx_info *info;
int ret = NETDEV_TX_BUSY, head_need;
int head_need;
u16 ethertype, hdrlen, meshhdrlen = 0;
__le16 fc;
struct ieee80211_hdr hdr;
Expand All @@ -1735,10 +1735,8 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
u32 info_flags = 0;
u16 info_id = 0;

if (unlikely(skb->len < ETH_HLEN)) {
ret = NETDEV_TX_OK;
if (unlikely(skb->len < ETH_HLEN))
goto fail;
}

/* convert Ethernet header to proper 802.11 header (based on
* operation mode) */
Expand Down Expand Up @@ -1786,7 +1784,6 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
if (!sdata->u.mesh.mshcfg.dot11MeshTTL) {
/* Do not send frames with mesh_ttl == 0 */
sdata->u.mesh.mshstats.dropped_frames_ttl++;
ret = NETDEV_TX_OK;
goto fail;
}
rcu_read_lock();
Expand Down Expand Up @@ -1879,10 +1876,8 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,

if (tdls_direct) {
/* link during setup - throw out frames to peer */
if (!tdls_auth) {
ret = NETDEV_TX_OK;
if (!tdls_auth)
goto fail;
}

/* DA SA BSSID */
memcpy(hdr.addr1, skb->data, ETH_ALEN);
Expand Down Expand Up @@ -1916,7 +1911,6 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
hdrlen = 24;
break;
default:
ret = NETDEV_TX_OK;
goto fail;
}

Expand Down Expand Up @@ -1961,7 +1955,6 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,

I802_DEBUG_INC(local->tx_handlers_drop_unauth_port);

ret = NETDEV_TX_OK;
goto fail;
}

Expand Down Expand Up @@ -2016,10 +2009,8 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
skb = skb_clone(skb, GFP_ATOMIC);
kfree_skb(tmp_skb);

if (!skb) {
ret = NETDEV_TX_OK;
if (!skb)
goto fail;
}
}

hdr.frame_control = fc;
Expand Down Expand Up @@ -2122,10 +2113,8 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
return NETDEV_TX_OK;

fail:
if (ret == NETDEV_TX_OK)
dev_kfree_skb(skb);

return ret;
dev_kfree_skb(skb);
return NETDEV_TX_OK;
}


Expand Down

0 comments on commit a4313a7

Please sign in to comment.