Commit 843635e0 authored by Casey Leedom's avatar Casey Leedom Committed by David S. Miller

cxgb4vf: Behave properly when CONFIG_DEBUG_FS isn't defined ...

When CONFIG_DEBUG_FS we get "ERR_PTR()"s back from the debugfs routines
instead of NULL.  Use the right predicates to check for this.
Signed-off-by: default avatarCasey Leedom <leedom@chelsio.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent bb14a1af
...@@ -2040,7 +2040,7 @@ static int __devinit setup_debugfs(struct adapter *adapter) ...@@ -2040,7 +2040,7 @@ static int __devinit setup_debugfs(struct adapter *adapter)
{ {
int i; int i;
BUG_ON(adapter->debugfs_root == NULL); BUG_ON(IS_ERR_OR_NULL(adapter->debugfs_root));
/* /*
* Debugfs support is best effort. * Debugfs support is best effort.
...@@ -2061,7 +2061,7 @@ static int __devinit setup_debugfs(struct adapter *adapter) ...@@ -2061,7 +2061,7 @@ static int __devinit setup_debugfs(struct adapter *adapter)
*/ */
static void cleanup_debugfs(struct adapter *adapter) static void cleanup_debugfs(struct adapter *adapter)
{ {
BUG_ON(adapter->debugfs_root == NULL); BUG_ON(IS_ERR_OR_NULL(adapter->debugfs_root));
/* /*
* Unlike our sister routine cleanup_proc(), we don't need to remove * Unlike our sister routine cleanup_proc(), we don't need to remove
...@@ -2700,11 +2700,11 @@ static int __devinit cxgb4vf_pci_probe(struct pci_dev *pdev, ...@@ -2700,11 +2700,11 @@ static int __devinit cxgb4vf_pci_probe(struct pci_dev *pdev,
/* /*
* Set up our debugfs entries. * Set up our debugfs entries.
*/ */
if (cxgb4vf_debugfs_root) { if (!IS_ERR_OR_NULL(cxgb4vf_debugfs_root)) {
adapter->debugfs_root = adapter->debugfs_root =
debugfs_create_dir(pci_name(pdev), debugfs_create_dir(pci_name(pdev),
cxgb4vf_debugfs_root); cxgb4vf_debugfs_root);
if (adapter->debugfs_root == NULL) if (IS_ERR_OR_NULL(adapter->debugfs_root))
dev_warn(&pdev->dev, "could not create debugfs" dev_warn(&pdev->dev, "could not create debugfs"
" directory"); " directory");
else else
...@@ -2759,7 +2759,7 @@ static int __devinit cxgb4vf_pci_probe(struct pci_dev *pdev, ...@@ -2759,7 +2759,7 @@ static int __devinit cxgb4vf_pci_probe(struct pci_dev *pdev,
*/ */
err_free_debugfs: err_free_debugfs:
if (adapter->debugfs_root) { if (!IS_ERR_OR_NULL(adapter->debugfs_root)) {
cleanup_debugfs(adapter); cleanup_debugfs(adapter);
debugfs_remove_recursive(adapter->debugfs_root); debugfs_remove_recursive(adapter->debugfs_root);
} }
...@@ -2828,7 +2828,7 @@ static void __devexit cxgb4vf_pci_remove(struct pci_dev *pdev) ...@@ -2828,7 +2828,7 @@ static void __devexit cxgb4vf_pci_remove(struct pci_dev *pdev)
/* /*
* Tear down our debugfs entries. * Tear down our debugfs entries.
*/ */
if (adapter->debugfs_root) { if (!IS_ERR_OR_NULL(adapter->debugfs_root)) {
cleanup_debugfs(adapter); cleanup_debugfs(adapter);
debugfs_remove_recursive(adapter->debugfs_root); debugfs_remove_recursive(adapter->debugfs_root);
} }
...@@ -2916,12 +2916,12 @@ static int __init cxgb4vf_module_init(void) ...@@ -2916,12 +2916,12 @@ static int __init cxgb4vf_module_init(void)
/* Debugfs support is optional, just warn if this fails */ /* Debugfs support is optional, just warn if this fails */
cxgb4vf_debugfs_root = debugfs_create_dir(KBUILD_MODNAME, NULL); cxgb4vf_debugfs_root = debugfs_create_dir(KBUILD_MODNAME, NULL);
if (!cxgb4vf_debugfs_root) if (IS_ERR_OR_NULL(cxgb4vf_debugfs_root))
printk(KERN_WARNING KBUILD_MODNAME ": could not create" printk(KERN_WARNING KBUILD_MODNAME ": could not create"
" debugfs entry, continuing\n"); " debugfs entry, continuing\n");
ret = pci_register_driver(&cxgb4vf_driver); ret = pci_register_driver(&cxgb4vf_driver);
if (ret < 0) if (ret < 0 && !IS_ERR_OR_NULL(cxgb4vf_debugfs_root))
debugfs_remove(cxgb4vf_debugfs_root); debugfs_remove(cxgb4vf_debugfs_root);
return ret; return ret;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment