net: skb: rename SKB_DROP_REASON_PTYPE_ABSENT
authorMenglong Dong <imagedong@tencent.com>
Thu, 7 Apr 2022 06:20:50 +0000 (14:20 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 11 Apr 2022 09:38:37 +0000 (10:38 +0100)
As David Ahern suggested, the reasons for skb drops should be more
general and not be code based.

Therefore, rename SKB_DROP_REASON_PTYPE_ABSENT to
SKB_DROP_REASON_UNHANDLED_PROTO, which is used for the cases of no
L3 protocol handler, no L4 protocol handler, version extensions, etc.

From previous discussion, now we have the aim to make these reasons
more abstract and users based, avoiding code based.

Signed-off-by: Menglong Dong <imagedong@tencent.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/skbuff.h
include/trace/events/skb.h
net/core/dev.c

index 2394441..173bc35 100644 (file)
@@ -408,11 +408,9 @@ enum skb_drop_reason {
                                         */
        SKB_DROP_REASON_XDP,            /* dropped by XDP in input path */
        SKB_DROP_REASON_TC_INGRESS,     /* dropped in TC ingress HOOK */
-       SKB_DROP_REASON_PTYPE_ABSENT,   /* not packet_type found to handle
-                                        * the skb. For an etner packet,
-                                        * this means that L3 protocol is
-                                        * not supported
-                                        */
+       SKB_DROP_REASON_UNHANDLED_PROTO,        /* protocol not implemented
+                                                * or not supported
+                                                */
        SKB_DROP_REASON_SKB_CSUM,       /* sk_buff checksum computation
                                         * error
                                         */
index e1670e1..85abd7c 100644 (file)
@@ -50,7 +50,7 @@
        EM(SKB_DROP_REASON_CPU_BACKLOG, CPU_BACKLOG)            \
        EM(SKB_DROP_REASON_XDP, XDP)                            \
        EM(SKB_DROP_REASON_TC_INGRESS, TC_INGRESS)              \
-       EM(SKB_DROP_REASON_PTYPE_ABSENT, PTYPE_ABSENT)          \
+       EM(SKB_DROP_REASON_UNHANDLED_PROTO, UNHANDLED_PROTO)    \
        EM(SKB_DROP_REASON_SKB_CSUM, SKB_CSUM)                  \
        EM(SKB_DROP_REASON_SKB_GSO_SEG, SKB_GSO_SEG)            \
        EM(SKB_DROP_REASON_SKB_UCOPY_FAULT, SKB_UCOPY_FAULT)    \
index e027410..ba853e8 100644 (file)
@@ -5375,13 +5375,11 @@ check_vlan_id:
                *ppt_prev = pt_prev;
        } else {
 drop:
-               if (!deliver_exact) {
+               if (!deliver_exact)
                        dev_core_stats_rx_dropped_inc(skb->dev);
-                       kfree_skb_reason(skb, SKB_DROP_REASON_PTYPE_ABSENT);
-               } else {
+               else
                        dev_core_stats_rx_nohandler_inc(skb->dev);
-                       kfree_skb(skb);
-               }
+               kfree_skb_reason(skb, SKB_DROP_REASON_UNHANDLED_PROTO);
                /* Jamal, now you will not able to escape explaining
                 * me how you were going to use this. :-)
                 */