Re: [PATCH net-next] net: drop_monitor: support drop reason

From: Jakub Kicinski
Date: Tue Jan 25 2022 - 22:38:35 EST


On Mon, 24 Jan 2022 15:59:55 +0800 menglong8.dong@xxxxxxxxx wrote:
> @@ -606,6 +608,7 @@ static int net_dm_packet_report_in_port_put(struct sk_buff *msg, int ifindex,
> static int net_dm_packet_report_fill(struct sk_buff *msg, struct sk_buff *skb,
> size_t payload_len)
> {
> + enum skb_drop_reason reason = NET_DM_SKB_CB(skb)->reason;
> u64 pc = (u64)(uintptr_t) NET_DM_SKB_CB(skb)->pc;

nit: maybe it's better to get a pointer to struct net_dm_skb_cb here
instead of local var for each field?

> char buf[NET_DM_MAX_SYMBOL_LEN];
> struct nlattr *attr;
> @@ -623,6 +626,9 @@ static int net_dm_packet_report_fill(struct sk_buff *msg, struct sk_buff *skb,
> if (nla_put_u64_64bit(msg, NET_DM_ATTR_PC, pc, NET_DM_ATTR_PAD))
> goto nla_put_failure;
>
> + if (nla_put_u32(msg, NET_DM_ATTR_REASON, reason))
> + goto nla_put_failure;