net/mlx5e: kTLS, Destroy key object after destroying the TIS
authorTariq Toukan <tariqt@mellanox.com>
Mon, 27 Apr 2020 13:56:59 +0000 (16:56 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Jun 2020 06:21:03 +0000 (08:21 +0200)
[ Upstream commit 16736e11f43b80a38f98f6add54fab3b8c297df3 ]

The TLS TIS object contains the dek/key ID.
By destroying the key first, the TIS would contain an invalid
non-existing key ID.
Reverse the destroy order, this also acheives the desired assymetry
between the destroy and the create flows.

Fixes: d2ead1f360e8 ("net/mlx5e: Add kTLS TX HW offload support")
Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
Reviewed-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls.c

index 46725cd..7d1985f 100644 (file)
@@ -69,8 +69,8 @@ static void mlx5e_ktls_del(struct net_device *netdev,
        struct mlx5e_ktls_offload_context_tx *tx_priv =
                mlx5e_get_ktls_tx_priv_ctx(tls_ctx);
 
-       mlx5_ktls_destroy_key(priv->mdev, tx_priv->key_id);
        mlx5e_destroy_tis(priv->mdev, tx_priv->tisn);
+       mlx5_ktls_destroy_key(priv->mdev, tx_priv->key_id);
        kvfree(tx_priv);
 }