[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210526095747.22446-1-tariqt@nvidia.com>
Date: Wed, 26 May 2021 12:57:41 +0300
From: Tariq Toukan <tariqt@...dia.com>
To: "David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>
CC: <netdev@...r.kernel.org>, Moshe Shemesh <moshe@...dia.com>,
Boris Pismenny <borisp@...dia.com>,
Saeed Mahameed <saeedm@...dia.com>,
Maxim Mikityanskiy <maximmi@...dia.com>,
Tariq Toukan <tariqt@...dia.com>
Subject: [RFC PATCH 0/6] BOND TLS flags fixes
Hi,
This RFC series suggests a solution for the following problem:
Bond interface and lower interface are both up with TLS RX/TX offloads on.
TX/RX csum offload is turned off for the upper, hence RX/TX TLS is turned off
for it as well.
Yet, although it indicates that feature is disabled, new connections are still
offloaded by the lower, as Bond has no way to impact that:
Return value of bond_sk_get_lower_dev() is agnostic to this change.
One way to solve this issue, is to bring back the Bond TLS operations callbacks,
i.e. provide implementation for struct tlsdev_ops in Bond.
This gives full control for the Bond over its features, making it aware of every
new TLS connection offload request.
This direction was proposed in the original Bond TLS implementation, but dropped
during ML review. Probably it's right to re-consider now.
Here I suggest another solution, which requires generic changes out of the bond
driver.
Fixes in patches 1 and 4 are needed anyway, independently to which solution
we choose. I'll probably submit them separately soon.
Regards,
Tariq
Tariq Toukan (6):
net: Fix features skip in for_each_netdev_feature()
net: Disable TX TLS device offload on lower devices if disabled on the
upper
net: Disable RX TLS device offload on lower devices if disabled on the
upper
net/bond: Enable RXCSUM feature for bond
net/bond: Allow explicit control of the TLS device offload features
net/bond: Do not turn on TLS features in bond_fix_features()
drivers/net/bonding/bond_main.c | 6 +++---
include/linux/netdev_features.h | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
--
2.21.0
Powered by blists - more mailing lists