[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240223191252.3856-1-kuniyu@amazon.com>
Date: Fri, 23 Feb 2024 11:12:52 -0800
From: Kuniyuki Iwashima <kuniyu@...zon.com>
To: <kerneljasonxing@...il.com>
CC: <davem@...emloft.net>, <dsahern@...nel.org>, <edumazet@...gle.com>,
<kernelxing@...cent.com>, <kuba@...nel.org>, <kuniyu@...zon.com>,
<netdev@...r.kernel.org>, <pabeni@...hat.com>
Subject: Re: [PATCH net-next v9 01/10] tcp: add a dropreason definitions and prepare for cookie check
From: Jason Xing <kerneljasonxing@...il.com>
Date: Fri, 23 Feb 2024 18:28:42 +0800
> From: Jason Xing <kernelxing@...cent.com>
>
> Adding one drop reason to detect the condition of skb dropped
> because of hook points in cookie check and extending NO_SOCKET
> to consider another two cases can be used later.
>
> Signed-off-by: Jason Xing <kernelxing@...cent.com>
> Reviewed-by: Eric Dumazet <edumazet@...gle.com>
> Reviewed-by: David Ahern <dsahern@...nel.org>
Reviewed-by: Kuniyuki Iwashima <kuniyu@...zon.com>
> --
> v9
> Link: https://lore.kernel.org/netdev/c5640fc4-16dc-4058-97c6-bd84bae4fda1@kernel.org/
> 1. add reviewed-by tag (David)
>
> v8
> Link: https://lore.kernel.org/netdev/CANn89iJ3gLMn5psbzfVCOo2=v4nMn4m41wpr6svxyAmO4R1m6g@mail.gmail.com/
> 1. add reviewed-by tag (Eric)
>
> v7
> Link: https://lore.kernel.org/all/20240219040630.94637-1-kuniyu@amazon.com/
> 1. nit: change "invalid" to "valid" (Kuniyuki)
> 2. add more description.
>
> v6
> Link: https://lore.kernel.org/netdev/20240215210922.19969-1-kuniyu@amazon.com/
> 1. Modify the description NO_SOCKET to extend other two kinds of invalid
> socket cases.
> What I think about it is we can use it as a general indicator for three kinds of
> sockets which are invalid/NULL, like what we did to TCP_FLAGS.
> Any better ideas/suggestions are welcome :)
>
> v5
> Link: https://lore.kernel.org/netdev/CANn89i+iELpsoea6+C-08m6+=JkneEEM=nAj-28eNtcOCkwQjw@mail.gmail.com/
> Link: https://lore.kernel.org/netdev/632c6fd4-e060-4b8e-a80e-5d545a6c6b6c@kernel.org/
> 1. Use SKB_DROP_REASON_IP_OUTNOROUTES instead of introducing a new one (Eric, David)
> 2. Reuse SKB_DROP_REASON_NOMEM to handle failure of request socket allocation (Eric)
> 3. Reuse NO_SOCKET instead of introducing COOKIE_NOCHILD
> 4. Reuse IP_OUTNOROUTES instead of INVALID_DST (Eric)
> 5. adjust the title and description.
>
> v4
> Link: https://lore.kernel.org/netdev/20240212172302.3f95e454@kernel.org/
> 1. fix misspelled name in kdoc as Jakub said
> ---
> include/net/dropreason-core.h | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/include/net/dropreason-core.h b/include/net/dropreason-core.h
> index 6d3a20163260..a871f061558d 100644
> --- a/include/net/dropreason-core.h
> +++ b/include/net/dropreason-core.h
> @@ -54,6 +54,7 @@
> FN(NEIGH_QUEUEFULL) \
> FN(NEIGH_DEAD) \
> FN(TC_EGRESS) \
> + FN(SECURITY_HOOK) \
> FN(QDISC_DROP) \
> FN(CPU_BACKLOG) \
> FN(XDP) \
> @@ -105,7 +106,13 @@ enum skb_drop_reason {
> SKB_CONSUMED,
> /** @SKB_DROP_REASON_NOT_SPECIFIED: drop reason is not specified */
> SKB_DROP_REASON_NOT_SPECIFIED,
> - /** @SKB_DROP_REASON_NO_SOCKET: socket not found */
> + /**
> + * @SKB_DROP_REASON_NO_SOCKET: no valid socket that can be used.
> + * Reason could be one of three cases:
> + * 1) no established/listening socket found during lookup process
> + * 2) no valid request socket during 3WHS process
> + * 3) no valid child socket during 3WHS process
> + */
> SKB_DROP_REASON_NO_SOCKET,
> /** @SKB_DROP_REASON_PKT_TOO_SMALL: packet size is too small */
> SKB_DROP_REASON_PKT_TOO_SMALL,
> @@ -271,6 +278,8 @@ enum skb_drop_reason {
> SKB_DROP_REASON_NEIGH_DEAD,
> /** @SKB_DROP_REASON_TC_EGRESS: dropped in TC egress HOOK */
> SKB_DROP_REASON_TC_EGRESS,
> + /** @SKB_DROP_REASON_SECURITY_HOOK: dropped due to security HOOK */
> + SKB_DROP_REASON_SECURITY_HOOK,
> /**
> * @SKB_DROP_REASON_QDISC_DROP: dropped by qdisc when packet outputting (
> * failed to enqueue to current qdisc)
> --
> 2.37.3
Powered by blists - more mailing lists