It is possible that the UNDI ISR may be triggered before netdev_tx() returns control to pxenv_undi_transmit(). This means that pxenv_undi_isr() may see a zero undi_tx_count, and so not check for TX completions. This is not a significant problem, since it will check for TX completions on the next call to pxenv_undi_isr() anyway; it just means that the NBP will see a spurious IRQ that was apparently caused by nothing. Fix by updating the undi_tx_count before calling netdev_tx(), so that pxenv_undi_isr() can decrement it and report the TX completion.tags/v0.9.8
|
|
||
316 |
|
316 |
|
317 |
|
317 |
|
318 |
|
318 |
|
|
319 |
|
|
|
320 |
|
|
|
321 |
|
|
|
322 |
|
|
|
323 |
|
|
|
324 |
|
|
319 |
|
325 |
|
320 |
|
|
|
|
326 |
|
|
321 |
|
327 |
|
322 |
|
328 |
|
323 |
|
329 |
|
|
330 |
|
|
324 |
|
331 |
|
325 |
|
332 |
|
326 |
|
333 |
|
327 |
|
334 |
|
328 |
|
|
|
329 |
|
|
|
330 |
|
|
|
331 |
|
335 |
|
332 |
|
336 |
|
333 |
|
337 |
|