Hi Zhu Yi, This is a Smatch bug that has me a little puzzled. drivers/net/wireless/iwmc3200wifi/debugfs.c +447 iwm_debugfs_init(26) warn: 'iwm->dbg.devdir' dereferencing possible ERR_PTR() 440 iwm->dbg.devdir = debugfs_create_dir(devdir, iwm->dbg.rootdir); 441 result = PTR_ERR(iwm->dbg.devdir); 442 if (IS_ERR(iwm->dbg.devdir) && (result != -ENODEV)) { 443 IWM_ERR(iwm, "Couldn't create devdir: %d\n", result); 444 goto error; 445 } 446 447 iwm->dbg.dbgdir = debugfs_create_dir("debug", iwm->dbg.devdir); It looks like "iwm->dbg.devdir" could be ERR_PTR(-ENODEV) on line 447 and that would cause a problem inside debugfs_create_dir(). But at the same time -ENODEV was deliberately singled out as OK from other possible errors that debugfs_create_dir() can return. I'm confused. regards, dan carpenter -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html