diff options
author | Fariya Fatima <fariyaf@gmail.com> | 2014-04-01 23:59:50 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-04-09 13:55:53 -0400 |
commit | b25e77fdfa9510a7d47b35ecddc16f5ea583ca4e (patch) | |
tree | 40aaa8331d939eae636f966d4d534ac319c34b3b /drivers | |
parent | ce7613db2d8d4d5af2587ab5d7090055c4562201 (diff) |
rsi: Potential null pointer derefernce issue fixed.
Signed-off-by: Fariya Fatima <fariyaf@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/rsi/rsi_91x_debugfs.c | 35 |
1 files changed, 16 insertions, 19 deletions
diff --git a/drivers/net/wireless/rsi/rsi_91x_debugfs.c b/drivers/net/wireless/rsi/rsi_91x_debugfs.c index 7e4ef4554411..c466246a323f 100644 --- a/drivers/net/wireless/rsi/rsi_91x_debugfs.c +++ b/drivers/net/wireless/rsi/rsi_91x_debugfs.c | |||
@@ -289,32 +289,29 @@ int rsi_init_dbgfs(struct rsi_hw *adapter) | |||
289 | const struct rsi_dbg_files *files; | 289 | const struct rsi_dbg_files *files; |
290 | 290 | ||
291 | dev_dbgfs = kzalloc(sizeof(*dev_dbgfs), GFP_KERNEL); | 291 | dev_dbgfs = kzalloc(sizeof(*dev_dbgfs), GFP_KERNEL); |
292 | if (!dev_dbgfs) | ||
293 | return -ENOMEM; | ||
294 | |||
292 | adapter->dfsentry = dev_dbgfs; | 295 | adapter->dfsentry = dev_dbgfs; |
293 | 296 | ||
294 | snprintf(devdir, sizeof(devdir), "%s", | 297 | snprintf(devdir, sizeof(devdir), "%s", |
295 | wiphy_name(adapter->hw->wiphy)); | 298 | wiphy_name(adapter->hw->wiphy)); |
296 | dev_dbgfs->subdir = debugfs_create_dir(devdir, NULL); | ||
297 | 299 | ||
298 | if (IS_ERR(dev_dbgfs->subdir)) { | 300 | dev_dbgfs->subdir = debugfs_create_dir(devdir, NULL); |
299 | if (dev_dbgfs->subdir == ERR_PTR(-ENODEV)) | ||
300 | rsi_dbg(ERR_ZONE, | ||
301 | "%s:Debugfs has not been mounted\n", __func__); | ||
302 | else | ||
303 | rsi_dbg(ERR_ZONE, "debugfs:%s not created\n", devdir); | ||
304 | 301 | ||
305 | adapter->dfsentry = NULL; | 302 | if (!dev_dbgfs->subdir) { |
306 | kfree(dev_dbgfs); | 303 | kfree(dev_dbgfs); |
307 | return (int)PTR_ERR(dev_dbgfs->subdir); | 304 | return -ENOMEM; |
308 | } else { | 305 | } |
309 | for (ii = 0; ii < adapter->num_debugfs_entries; ii++) { | 306 | |
310 | files = &dev_debugfs_files[ii]; | 307 | for (ii = 0; ii < adapter->num_debugfs_entries; ii++) { |
311 | dev_dbgfs->rsi_files[ii] = | 308 | files = &dev_debugfs_files[ii]; |
312 | debugfs_create_file(files->name, | 309 | dev_dbgfs->rsi_files[ii] = |
313 | files->perms, | 310 | debugfs_create_file(files->name, |
314 | dev_dbgfs->subdir, | 311 | files->perms, |
315 | common, | 312 | dev_dbgfs->subdir, |
316 | &files->fops); | 313 | common, |
317 | } | 314 | &files->fops); |
318 | } | 315 | } |
319 | return 0; | 316 | return 0; |
320 | } | 317 | } |