2022-03-31 05:00:23

by Stéphane Graber

[permalink] [raw]
Subject: [PATCH] openvswitch: Add recirc_id to recirc warning

When hitting the recirculation limit, the kernel would currently log
something like this:

[ 58.586597] openvswitch: ovs-system: deferred action limit reached, drop recirc action

Which isn't all that useful to debug as we only have the interface name
to go on but can't track it down to a specific flow.

With this change, we now instead get:

[ 58.586597] openvswitch: ovs-system: deferred action limit reached, drop recirc action (recirc_id=0x9e)

Which can now be correlated with the flow entries from OVS.

Suggested-by: Frode Nordahl <[email protected]>
Signed-off-by: Stéphane Graber <[email protected]>
Tested-by: Stephane Graber <[email protected]>
---
net/openvswitch/actions.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/openvswitch/actions.c b/net/openvswitch/actions.c
index 780d9e2246f3..7056cb1b8ba0 100644
--- a/net/openvswitch/actions.c
+++ b/net/openvswitch/actions.c
@@ -1539,8 +1539,8 @@ static int clone_execute(struct datapath *dp, struct sk_buff *skb,
pr_warn("%s: deferred action limit reached, drop sample action\n",
ovs_dp_name(dp));
} else { /* Recirc action */
- pr_warn("%s: deferred action limit reached, drop recirc action\n",
- ovs_dp_name(dp));
+ pr_warn("%s: deferred action limit reached, drop recirc action (recirc_id=%#x)\n",
+ ovs_dp_name(dp), recirc_id);
}
}
}
--
2.34.1


2022-03-31 14:12:26

by Eelco Chaudron

[permalink] [raw]
Subject: Re: [PATCH] openvswitch: Add recirc_id to recirc warning



On 30 Mar 2022, at 21:42, Stéphane Graber wrote:

> When hitting the recirculation limit, the kernel would currently log
> something like this:
>
> [ 58.586597] openvswitch: ovs-system: deferred action limit reached, drop recirc action
>
> Which isn't all that useful to debug as we only have the interface name
> to go on but can't track it down to a specific flow.
>
> With this change, we now instead get:
>
> [ 58.586597] openvswitch: ovs-system: deferred action limit reached, drop recirc action (recirc_id=0x9e)
>
> Which can now be correlated with the flow entries from OVS.
>
> Suggested-by: Frode Nordahl <[email protected]>
> Signed-off-by: Stéphane Graber <[email protected]>
> Tested-by: Stephane Graber <[email protected]>
> ---

This change looks good to me, and it makes debugging easier.

Acked-by: Eelco Chaudron <[email protected]>

> net/openvswitch/actions.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/openvswitch/actions.c b/net/openvswitch/actions.c
> index 780d9e2246f3..7056cb1b8ba0 100644
> --- a/net/openvswitch/actions.c
> +++ b/net/openvswitch/actions.c
> @@ -1539,8 +1539,8 @@ static int clone_execute(struct datapath *dp, struct sk_buff *skb,
> pr_warn("%s: deferred action limit reached, drop sample action\n",
> ovs_dp_name(dp));
> } else { /* Recirc action */
> - pr_warn("%s: deferred action limit reached, drop recirc action\n",
> - ovs_dp_name(dp));
> + pr_warn("%s: deferred action limit reached, drop recirc action (recirc_id=%#x)\n",
> + ovs_dp_name(dp), recirc_id);
> }
> }
> }
> --
> 2.34.1

2022-04-01 06:40:54

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH] openvswitch: Add recirc_id to recirc warning

Hello:

This patch was applied to netdev/net.git (master)
by Jakub Kicinski <[email protected]>:

On Wed, 30 Mar 2022 15:42:45 -0400 you wrote:
> When hitting the recirculation limit, the kernel would currently log
> something like this:
>
> [ 58.586597] openvswitch: ovs-system: deferred action limit reached, drop recirc action
>
> Which isn't all that useful to debug as we only have the interface name
> to go on but can't track it down to a specific flow.
>
> [...]

Here is the summary with links:
- openvswitch: Add recirc_id to recirc warning
https://git.kernel.org/netdev/net/c/ea07af2e71cd

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html