[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201203082038.3dab8511@kicinski-fedora-pc1c0hjn.DHCP.thefacebook.com>
Date: Thu, 3 Dec 2020 08:20:38 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Thomas Karlsson <thomas.karlsson@...eda.se>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"davem@...emloft.net" <davem@...emloft.net>, <jiri@...nulli.us>,
<kaber@...sh.net>, <edumazet@...gle.com>, <vyasevic@...hat.com>,
<alexander.duyck@...il.com>
Subject: Re: [PATCH net-next v4] macvlan: Support for high multicast packet
rate
On Wed, 2 Dec 2020 19:49:58 +0100 Thomas Karlsson wrote:
> Background:
> Broadcast and multicast packages are enqueued for later processing.
> This queue was previously hardcoded to 1000.
>
> This proved insufficient for handling very high packet rates.
> This resulted in packet drops for multicast.
> While at the same time unicast worked fine.
>
> The change:
> This patch make the queue length adjustable to accommodate
> for environments with very high multicast packet rate.
> But still keeps the default value of 1000 unless specified.
>
> The queue length is specified as a request per macvlan
> using the IFLA_MACVLAN_BC_QUEUE_LEN parameter.
>
> The actual used queue length will then be the maximum of
> any macvlan connected to the same port. The actual used
> queue length for the port can be retrieved (read only)
> by the IFLA_MACVLAN_BC_QUEUE_LEN_USED parameter for verification.
>
> This will be followed up by a patch to iproute2
> in order to adjust the parameter from userspace.
>
> Signed-off-by: Thomas Karlsson <thomas.karlsson@...eda.se>
> @@ -1658,6 +1680,8 @@ static const struct nla_policy macvlan_policy[IFLA_MACVLAN_MAX + 1] = {
> [IFLA_MACVLAN_MACADDR] = { .type = NLA_BINARY, .len = MAX_ADDR_LEN },
> [IFLA_MACVLAN_MACADDR_DATA] = { .type = NLA_NESTED },
> [IFLA_MACVLAN_MACADDR_COUNT] = { .type = NLA_U32 },
> + [IFLA_MACVLAN_BC_QUEUE_LEN] = { .type = NLA_U32 },
I wonder whether we should require that the queue_len is > 0? Is there
a valid use case for the queue to be completely disabled? If you agree
please follow up with a simple patch which adds a NLA_POLICY_MIN() here.
Applied to net-next, thank you!
Powered by blists - more mailing lists