]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
octeontx2-pf: Add missing mutex lock in otx2_get_pauseparam
authorSubbaraya Sundeep <sbhatta@marvell.com>
Wed, 29 Nov 2023 05:23:42 +0000 (10:53 +0530)
committerDavid S. Miller <davem@davemloft.net>
Fri, 1 Dec 2023 11:02:18 +0000 (11:02 +0000)
All the mailbox messages sent to AF needs to be guarded
by mutex lock. Add the missing lock in otx2_get_pauseparam
function.

Fixes: 75f36270990c ("octeontx2-pf: Support to enable/disable pause frames via ethtool")
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c

index 9efcec549834e800ff82465838ad59653f30115a..53f6258a973c287883a4fa63393115dcbfa63bb5 100644 (file)
@@ -334,9 +334,12 @@ static void otx2_get_pauseparam(struct net_device *netdev,
        if (is_otx2_lbkvf(pfvf->pdev))
                return;
 
+       mutex_lock(&pfvf->mbox.lock);
        req = otx2_mbox_alloc_msg_cgx_cfg_pause_frm(&pfvf->mbox);
-       if (!req)
+       if (!req) {
+               mutex_unlock(&pfvf->mbox.lock);
                return;
+       }
 
        if (!otx2_sync_mbox_msg(&pfvf->mbox)) {
                rsp = (struct cgx_pause_frm_cfg *)
@@ -344,6 +347,7 @@ static void otx2_get_pauseparam(struct net_device *netdev,
                pause->rx_pause = rsp->rx_pause;
                pause->tx_pause = rsp->tx_pause;
        }
+       mutex_unlock(&pfvf->mbox.lock);
 }
 
 static int otx2_set_pauseparam(struct net_device *netdev,