| From 29ca3cdfe13b2792b8624e6f769777e8cb387f9c Mon Sep 17 00:00:00 2001 |
| From: Antoine Tenart <antoine.tenart@bootlin.com> |
| Date: Wed, 6 May 2020 15:58:30 +0200 |
| Subject: net: macsec: fix rtnl locking issue |
| |
| netdev_update_features() must be called with the rtnl lock taken. Not |
| doing so triggers a warning, as ASSERT_RTNL() is used in |
| __netdev_update_features(), the first function called by |
| netdev_update_features(). Fix this. |
| |
| Fixes: c850240b6c41 ("net: macsec: report real_dev features when HW offloading is enabled") |
| Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| --- |
| drivers/net/macsec.c | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/net/macsec.c b/drivers/net/macsec.c |
| index d4034025c87c1..d0d31cb991803 100644 |
| --- a/drivers/net/macsec.c |
| +++ b/drivers/net/macsec.c |
| @@ -2641,11 +2641,12 @@ static int macsec_upd_offload(struct sk_buff *skb, struct genl_info *info) |
| if (ret) |
| goto rollback; |
| |
| - rtnl_unlock(); |
| /* Force features update, since they are different for SW MACSec and |
| * HW offloading cases. |
| */ |
| netdev_update_features(dev); |
| + |
| + rtnl_unlock(); |
| return 0; |
| |
| rollback: |
| -- |
| cgit 1.2.3-1.el7 |
| |