diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2023-05-20 10:30:17 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-05-30 12:38:39 +0100 |
commit | 5876673a9993186e257a5cbeaccd2dd7428a419a (patch) | |
tree | 4a0710859ea307ff3cc3930421f7d22cb41bfde3 | |
parent | 5326b73f649359cbadae220bf12724924a6b4307 (diff) | |
download | linux-stable-5876673a9993186e257a5cbeaccd2dd7428a419a.tar.gz linux-stable-5876673a9993186e257a5cbeaccd2dd7428a419a.tar.bz2 linux-stable-5876673a9993186e257a5cbeaccd2dd7428a419a.zip |
forcedeth: Fix an error handling path in nv_probe()
commit 5b17a4971d3b2a073f4078dd65331efbe35baa2d upstream.
If an error occures after calling nv_mgmt_acquire_sema(), it should be
undone with a corresponding nv_mgmt_release_sema() call.
Add it in the error handling path of the probe as already done in the
remove function.
Fixes: cac1c52c3621 ("forcedeth: mgmt unit interface")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Acked-by: Zhu Yanjun <zyjzyj2000@gmail.com>
Link: https://lore.kernel.org/r/355e9a7d351b32ad897251b6f81b5886fcdc6766.1684571393.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/net/ethernet/nvidia/forcedeth.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/nvidia/forcedeth.c b/drivers/net/ethernet/nvidia/forcedeth.c index 994a83a1f0a5..3e8477e697c5 100644 --- a/drivers/net/ethernet/nvidia/forcedeth.c +++ b/drivers/net/ethernet/nvidia/forcedeth.c @@ -6020,6 +6020,7 @@ static int nv_probe(struct pci_dev *pci_dev, const struct pci_device_id *id) return 0; out_error: + nv_mgmt_release_sema(dev); if (phystate_orig) writel(phystate|NVREG_ADAPTCTL_RUNNING, base + NvRegAdapterControl); out_freering: |