msm: rndis_ipa: flow control change
IPA driver processing of Tx-complete event is done
in a workqueue, that workqueue is responsible
for the bottom half processing of the Tx-complete interrupt.
In case this workqueue is blocked by some work, further
Tx-complete processing will be processed.
Tx-complete events are being transfer to the network
device interface, upon Tx-complete event it is possible
that the network stack Tx queue is started.
Using netif_wake_queue to start the queue causes Linux
network stack to start sending packets from the workqueue context,
doing so, blocks the workqueue, thus, no more Tx-complete events
can be received anymore.
netif_start_queue implementation make sure that the Network stack
won't start sending packets from the workqueue context.
Outstanding packets numbers were decreased in order
to allow IPA driver to free the memory of the Tx-complete buffers.
Change-Id: I16b493a7530afbe73d1b09988553e3a5aea777f7
Signed-off-by:
stalel <tatias@codeaurora.org>
Loading
Please register or sign in to comment