From: Zhang Shengju <zhangshen...@cmss.chinamobile.com>
Date: Tue,  1 Mar 2016 07:24:42 +0000

> Currently, arp_rcv() always return zero on a packet delivery upcall.
> 
> To make its behavior more compliant with the way this API should be
> used, this patch changes this to let it return NET_RX_SUCCESS when the
> packet is proper handled, and NET_RX_DROP otherwise.
> 
> Signed-off-by: Zhang Shengju <zhangshen...@cmss.chinamobile.com>

This change is bogus.

> @@ -880,7 +880,7 @@ out:
>       consume_skb(skb);
>  out_free_dst:
>       dst_release(reply_dst);
> -     return 0;
> +     return NET_RX_SUCCESS;

Most of the paths to out: are dropping the request for one reason or
another.

If you want to do this right you need to split these two exit paths,
convert consume_skb() to kfree_skb() in the drop path, and then you
can return accurate NET_* codes.

Reply via email to