diff options
author | Wei Yang <weiyang@linux.vnet.ibm.com> | 2013-09-15 21:53:00 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-09-15 22:28:58 -0400 |
commit | 73a695f8572e4c46a2aecdbb63f26f36a43e6873 (patch) | |
tree | 1a71cbd119674a5c561fb37879df4debadd26079 | |
parent | d6d6d1bc44362112e10a48d434e5b3c716152003 (diff) | |
download | op-kernel-dev-73a695f8572e4c46a2aecdbb63f26f36a43e6873.zip op-kernel-dev-73a695f8572e4c46a2aecdbb63f26f36a43e6873.tar.gz |
cxgb4: remove workqueue when driver registration fails
When driver registration fails, we need to clean up the resources allocated
before. cxgb4 missed to destroy the workqueue allocated at the very beginning.
This patch destroies the workqueue when registration fails.
Signed-off-by: Wei Yang <weiyang@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c index 0d0665c..c73cabd 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c @@ -6149,8 +6149,10 @@ static int __init cxgb4_init_module(void) pr_warn("could not create debugfs entry, continuing\n"); ret = pci_register_driver(&cxgb4_driver); - if (ret < 0) + if (ret < 0) { debugfs_remove(cxgb4_debugfs_root); + destroy_workqueue(workq); + } register_inet6addr_notifier(&cxgb4_inet6addr_notifier); |