Commit cdb66bea authored by Alexander Aring's avatar Alexander Aring Committed by Marcel Holtmann

mac802154: tx: fix error handling while xmit

In case of an error we should call kfree_skb instead of consume_skb which
is called by ieee802154_xmit_complete function.
Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent 18d60a0d
...@@ -51,11 +51,15 @@ static void mac802154_xmit_worker(struct work_struct *work) ...@@ -51,11 +51,15 @@ static void mac802154_xmit_worker(struct work_struct *work)
int res; int res;
res = local->ops->xmit(&local->hw, skb); res = local->ops->xmit(&local->hw, skb);
if (res) if (res) {
pr_debug("transmission failed\n"); pr_debug("transmission failed\n");
/* Restart the netif queue on each sub_if_data object. */
/* Restart the netif queue on each sub_if_data object. */ ieee802154_wake_queue(&local->hw);
ieee802154_xmit_complete(&local->hw, skb); kfree_skb(skb);
} else {
/* Restart the netif queue on each sub_if_data object. */
ieee802154_xmit_complete(&local->hw, skb);
}
} }
static netdev_tx_t static netdev_tx_t
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment