Re: [PATCH net-next v3 2/4] net: tap: track dropped skb via kfree_skb_reason()
From: Dongli Zhang <hidden>
Date: 2022-02-26 08:53:37
Also in:
bpf, lkml
On 2/21/22 8:31 PM, Dongli Zhang wrote:
Hi David, On 2/21/22 7:24 PM, David Ahern wrote:quoted
On 2/20/22 10:34 PM, Dongli Zhang wrote:quoted
The TAP can be used as vhost-net backend. E.g., the tap_handle_frame() is the interface to forward the skb from TAP to vhost-net/virtio-net. However, there are many "goto drop" in the TAP driver. Therefore, the kfree_skb_reason() is involved at each "goto drop" to help userspace ftrace/ebpf to track the reason for the loss of packets. The below reasons are introduced: - SKB_DROP_REASON_SKB_CSUM - SKB_DROP_REASON_SKB_COPY_DATA - SKB_DROP_REASON_SKB_GSO_SEG - SKB_DROP_REASON_DEV_HDR - SKB_DROP_REASON_FULL_RING Cc: Joao Martins <redacted> Cc: Joe Jin <redacted> Signed-off-by: Dongli Zhang <redacted> --- Changed since v1: - revise the reason name Changed since v2: - declare drop_reason as type "enum skb_drop_reason" - handle the drop in skb_list_walk_safe() case drivers/net/tap.c | 35 +++++++++++++++++++++++++---------- include/linux/skbuff.h | 9 +++++++++ include/trace/events/skb.h | 5 +++++ 3 files changed, 39 insertions(+), 10 deletions(-)couple of places where the new reason should be in reverse xmas order; logic wise: Reviewed-by: David Ahern <dsahern@kernel.org>I will re-order the reasons in the same patch and re-send with your Reviewed-by in the next version.
I have sent out v4 and I finally decide to not re-order reasons for this patch as this may makes trouble for backport. I will not follow the reverse xmas order here, as all existing variables are not declared in reverse xmas order. Thank you very much! Dongli Zhang