Message ID | 20200717061854.7765-1-wanghai38@huawei.com |
---|---|
State | Superseded |
Delegated to: | David Miller |
Headers | show |
Series | net: cxgb3: add missed destroy_workqueue in nci_register_device | expand |
subject msg was wrong. "net: cxgb3:" should be "nfc: nci:". v2 patch has been sent. ("[PATCH v2] nfc: nci: add missed destroy_workqueue in nci_register_device") 在 2020/7/17 14:18, Wang Hai 写道: > When nfc_register_device fails in nci_register_device, > destroy_workqueue() shouled be called to destroy ndev->tx_wq. > > Fixes: 3c1c0f5dc80b ("NFC: NCI: Fix nci_register_device init sequence") > Reported-by: Hulk Robot <hulkci@huawei.com> > Signed-off-by: Wang Hai <wanghai38@huawei.com> > --- > net/nfc/nci/core.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/net/nfc/nci/core.c b/net/nfc/nci/core.c > index 7cd524884304..78ea8c94dcba 100644 > --- a/net/nfc/nci/core.c > +++ b/net/nfc/nci/core.c > @@ -1228,10 +1228,13 @@ int nci_register_device(struct nci_dev *ndev) > > rc = nfc_register_device(ndev->nfc_dev); > if (rc) > - goto destroy_rx_wq_exit; > + goto destroy_tx_wq_exit; > > goto exit; > > +destroy_tx_wq_exit: > + destroy_workqueue(ndev->tx_wq); > + > destroy_rx_wq_exit: > destroy_workqueue(ndev->rx_wq); >
diff --git a/net/nfc/nci/core.c b/net/nfc/nci/core.c index 7cd524884304..78ea8c94dcba 100644 --- a/net/nfc/nci/core.c +++ b/net/nfc/nci/core.c @@ -1228,10 +1228,13 @@ int nci_register_device(struct nci_dev *ndev) rc = nfc_register_device(ndev->nfc_dev); if (rc) - goto destroy_rx_wq_exit; + goto destroy_tx_wq_exit; goto exit; +destroy_tx_wq_exit: + destroy_workqueue(ndev->tx_wq); + destroy_rx_wq_exit: destroy_workqueue(ndev->rx_wq);
When nfc_register_device fails in nci_register_device, destroy_workqueue() shouled be called to destroy ndev->tx_wq. Fixes: 3c1c0f5dc80b ("NFC: NCI: Fix nci_register_device init sequence") Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Wang Hai <wanghai38@huawei.com> --- net/nfc/nci/core.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)