Samuel Thibault
2008-Mar-25 17:08 UTC
[Xen-devel] [PATCH] mini-os: free dropped lwip packets
mini-os: free dropped lwip packets When lwIP can not accept a packet, it is up to us to free it. Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com> diff -r be3025f6af2e extras/mini-os/lwip-net.c --- a/extras/mini-os/lwip-net.c Mon Mar 24 18:24:03 2008 +0000 +++ b/extras/mini-os/lwip-net.c Tue Mar 25 17:05:53 2008 +0000 @@ -206,13 +206,16 @@ netfront_input(struct netif *netif, unsi /* skip Ethernet header */ pbuf_header(p, -(s16)sizeof(struct eth_hdr)); /* pass to network layer */ - tcpip_input(p, netif); + if (tcpip_input(p, netif) == ERR_MEM) + /* Could not store it, drop */ + pbuf_free(p); break; case ETHTYPE_ARP: /* pass p to ARP module */ etharp_arp_input(netif, (struct eth_addr *) netif->hwaddr, p); break; + default: pbuf_free(p); p = NULL; _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel