diff options
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00usb.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00usb.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c index 2dd7c830c125..b73a7e0aeed4 100644 --- a/drivers/net/wireless/rt2x00/rt2x00usb.c +++ b/drivers/net/wireless/rt2x00/rt2x00usb.c | |||
@@ -168,11 +168,6 @@ static void rt2x00usb_interrupt_txdone(struct urb *urb) | |||
168 | return; | 168 | return; |
169 | 169 | ||
170 | /* | 170 | /* |
171 | * Remove the descriptor data from the buffer. | ||
172 | */ | ||
173 | skb_pull(entry->skb, entry->queue->desc_size); | ||
174 | |||
175 | /* | ||
176 | * Obtain the status about this packet. | 171 | * Obtain the status about this packet. |
177 | * Note that when the status is 0 it does not mean the | 172 | * Note that when the status is 0 it does not mean the |
178 | * frame was send out correctly. It only means the frame | 173 | * frame was send out correctly. It only means the frame |
@@ -224,6 +219,12 @@ int rt2x00usb_write_tx_data(struct queue_entry *entry) | |||
224 | entry->skb->data, length, | 219 | entry->skb->data, length, |
225 | rt2x00usb_interrupt_txdone, entry); | 220 | rt2x00usb_interrupt_txdone, entry); |
226 | 221 | ||
222 | /* | ||
223 | * Make sure the skb->data pointer points to the frame, not the | ||
224 | * descriptor. | ||
225 | */ | ||
226 | skb_pull(entry->skb, entry->queue->desc_size); | ||
227 | |||
227 | return 0; | 228 | return 0; |
228 | } | 229 | } |
229 | EXPORT_SYMBOL_GPL(rt2x00usb_write_tx_data); | 230 | EXPORT_SYMBOL_GPL(rt2x00usb_write_tx_data); |