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: Casey Leedom <leedom@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Casey Leedom 2011-02-14 12:56:23 +00:00 committed by David S. Miller
parent bb14a1af86
commit 843635e034

View file

@ -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)
*/ */
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,
/* /*
* 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,
*/ */
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)
/* /*
* 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)
/* 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;
} }