mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
xen-netback: Non-functional follow-up patch for grant mapping series
Ian made some late comments about the grant mapping series, I incorporated the non-functional outcomes into this patch: - typo fixes in a comment of xenvif_free(), and add another one there as well - typo fix for comment of rx_drain_timeout_msecs - remove stale comment before calling xenvif_grant_handle_reset() Signed-off-by: Zoltan Kiss <zoltan.kiss@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
869b9b19b3
commit
0e59a4a553
2 changed files with 11 additions and 6 deletions
|
@ -574,15 +574,15 @@ void xenvif_disconnect(struct xenvif *vif)
|
|||
void xenvif_free(struct xenvif *vif)
|
||||
{
|
||||
int i, unmap_timeout = 0;
|
||||
/* Here we want to avoid timeout messages if an skb can be legitimatly
|
||||
* stucked somewhere else. Realisticly this could be an another vif's
|
||||
/* Here we want to avoid timeout messages if an skb can be legitimately
|
||||
* stuck somewhere else. Realistically this could be an another vif's
|
||||
* internal or QDisc queue. That another vif also has this
|
||||
* rx_drain_timeout_msecs timeout, but the timer only ditches the
|
||||
* internal queue. After that, the QDisc queue can put in worst case
|
||||
* XEN_NETIF_RX_RING_SIZE / MAX_SKB_FRAGS skbs into that another vif's
|
||||
* internal queue, so we need several rounds of such timeouts until we
|
||||
* can be sure that no another vif should have skb's from us. We are
|
||||
* not sending more skb's, so newly stucked packets are not interesting
|
||||
* not sending more skb's, so newly stuck packets are not interesting
|
||||
* for us here.
|
||||
*/
|
||||
unsigned int worst_case_skb_lifetime = (rx_drain_timeout_msecs/1000) *
|
||||
|
@ -597,6 +597,13 @@ void xenvif_free(struct xenvif *vif)
|
|||
netdev_err(vif->dev,
|
||||
"Page still granted! Index: %x\n",
|
||||
i);
|
||||
/* If there are still unmapped pages, reset the loop to
|
||||
* start checking again. We shouldn't exit here until
|
||||
* dealloc thread and NAPI instance release all the
|
||||
* pages. If a kernel bug causes the skbs to stall
|
||||
* somewhere, the interface cannot be brought down
|
||||
* properly.
|
||||
*/
|
||||
i = -1;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue