diff options
Diffstat (limited to 'drivers/net/wan/dlci.c')
-rw-r--r-- | drivers/net/wan/dlci.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/net/wan/dlci.c b/drivers/net/wan/dlci.c index 8526b6d1ee4..69d269d32b5 100644 --- a/drivers/net/wan/dlci.c +++ b/drivers/net/wan/dlci.c | |||
@@ -186,12 +186,11 @@ static void dlci_receive(struct sk_buff *skb, struct net_device *dev) | |||
186 | dev_kfree_skb(skb); | 186 | dev_kfree_skb(skb); |
187 | } | 187 | } |
188 | 188 | ||
189 | static int dlci_transmit(struct sk_buff *skb, struct net_device *dev) | 189 | static netdev_tx_t dlci_transmit(struct sk_buff *skb, |
190 | struct net_device *dev) | ||
190 | { | 191 | { |
191 | struct dlci_local *dlp; | 192 | struct dlci_local *dlp; |
192 | int ret; | 193 | netdev_tx_t ret; |
193 | |||
194 | ret = 0; | ||
195 | 194 | ||
196 | if (!skb || !dev) | 195 | if (!skb || !dev) |
197 | return NETDEV_TX_OK; | 196 | return NETDEV_TX_OK; |
@@ -200,6 +199,8 @@ static int dlci_transmit(struct sk_buff *skb, struct net_device *dev) | |||
200 | 199 | ||
201 | netif_stop_queue(dev); | 200 | netif_stop_queue(dev); |
202 | 201 | ||
202 | /* This is hackish, overloads driver specific return values | ||
203 | on top of normal transmit return! */ | ||
203 | ret = dlp->slave->netdev_ops->ndo_start_xmit(skb, dlp->slave); | 204 | ret = dlp->slave->netdev_ops->ndo_start_xmit(skb, dlp->slave); |
204 | switch (ret) | 205 | switch (ret) |
205 | { | 206 | { |
@@ -207,11 +208,11 @@ static int dlci_transmit(struct sk_buff *skb, struct net_device *dev) | |||
207 | dev->stats.tx_packets++; | 208 | dev->stats.tx_packets++; |
208 | ret = NETDEV_TX_OK; | 209 | ret = NETDEV_TX_OK; |
209 | break; | 210 | break; |
210 | case DLCI_RET_ERR: | 211 | case DLCI_RET_ERR: |
211 | dev->stats.tx_errors++; | 212 | dev->stats.tx_errors++; |
212 | ret = NETDEV_TX_OK; | 213 | ret = NETDEV_TX_OK; |
213 | break; | 214 | break; |
214 | case DLCI_RET_DROP: | 215 | case DLCI_RET_DROP: |
215 | dev->stats.tx_dropped++; | 216 | dev->stats.tx_dropped++; |
216 | ret = NETDEV_TX_BUSY; | 217 | ret = NETDEV_TX_BUSY; |
217 | break; | 218 | break; |