diff --git a/drivers/net/wireless/libertas/rx.c b/drivers/net/wireless/libertas/rx.c index 5d70a7625150..88d9d2d787d5 100644 --- a/drivers/net/wireless/libertas/rx.c +++ b/drivers/net/wireless/libertas/rx.c @@ -141,10 +141,9 @@ void libertas_upload_rx_packet(wlan_private * priv, struct sk_buff *skb) lbs_deb_rx("skb->data %p\n", skb->data); if (priv->mesh_dev && IS_MESH_FRAME(skb)) - skb->dev = priv->mesh_dev; + skb->protocol = eth_type_trans(skb, priv->mesh_dev); else - skb->dev = priv->dev; - skb->protocol = eth_type_trans(skb, priv->dev); + skb->protocol = eth_type_trans(skb, priv->dev); skb->ip_summed = CHECKSUM_UNNECESSARY; netif_rx(skb);