Fix debugfs_create_*'s error checking method for wireless/rt2x00/
debugfs_create_*() returns NULL if an error occurs, returns -ENODEV when debugfs is not enabled in the kernel. Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
9b24001db1
commit
cfa3fa405a
1 changed files with 12 additions and 9 deletions
|
@ -587,29 +587,29 @@ void rt2x00debug_register(struct rt2x00_dev *rt2x00dev)
|
|||
intf->driver_folder =
|
||||
debugfs_create_dir(intf->rt2x00dev->ops->name,
|
||||
rt2x00dev->hw->wiphy->debugfsdir);
|
||||
if (IS_ERR(intf->driver_folder))
|
||||
if (IS_ERR(intf->driver_folder) || !intf->driver_folder)
|
||||
goto exit;
|
||||
|
||||
intf->driver_entry =
|
||||
rt2x00debug_create_file_driver("driver", intf, &intf->driver_blob);
|
||||
if (IS_ERR(intf->driver_entry))
|
||||
if (IS_ERR(intf->driver_entry) || !intf->driver_entry)
|
||||
goto exit;
|
||||
|
||||
intf->chipset_entry =
|
||||
rt2x00debug_create_file_chipset("chipset",
|
||||
intf, &intf->chipset_blob);
|
||||
if (IS_ERR(intf->chipset_entry))
|
||||
if (IS_ERR(intf->chipset_entry) || !intf->chipset_entry)
|
||||
goto exit;
|
||||
|
||||
intf->dev_flags = debugfs_create_file("dev_flags", S_IRUSR,
|
||||
intf->driver_folder, intf,
|
||||
&rt2x00debug_fop_dev_flags);
|
||||
if (IS_ERR(intf->dev_flags))
|
||||
if (IS_ERR(intf->dev_flags) || !intf->dev_flags)
|
||||
goto exit;
|
||||
|
||||
intf->register_folder =
|
||||
debugfs_create_dir("register", intf->driver_folder);
|
||||
if (IS_ERR(intf->register_folder))
|
||||
if (IS_ERR(intf->register_folder) || !intf->register_folder)
|
||||
goto exit;
|
||||
|
||||
#define RT2X00DEBUGFS_CREATE_REGISTER_ENTRY(__intf, __name) \
|
||||
|
@ -619,7 +619,8 @@ void rt2x00debug_register(struct rt2x00_dev *rt2x00dev)
|
|||
S_IRUSR | S_IWUSR, \
|
||||
(__intf)->register_folder, \
|
||||
&(__intf)->offset_##__name); \
|
||||
if (IS_ERR((__intf)->__name##_off_entry)) \
|
||||
if (IS_ERR((__intf)->__name##_off_entry) \
|
||||
|| !(__intf)->__name##_off_entry) \
|
||||
goto exit; \
|
||||
\
|
||||
(__intf)->__name##_val_entry = \
|
||||
|
@ -627,7 +628,8 @@ void rt2x00debug_register(struct rt2x00_dev *rt2x00dev)
|
|||
S_IRUSR | S_IWUSR, \
|
||||
(__intf)->register_folder, \
|
||||
(__intf), &rt2x00debug_fop_##__name);\
|
||||
if (IS_ERR((__intf)->__name##_val_entry)) \
|
||||
if (IS_ERR((__intf)->__name##_val_entry) \
|
||||
|| !(__intf)->__name##_val_entry) \
|
||||
goto exit; \
|
||||
})
|
||||
|
||||
|
@ -640,13 +642,14 @@ void rt2x00debug_register(struct rt2x00_dev *rt2x00dev)
|
|||
|
||||
intf->queue_folder =
|
||||
debugfs_create_dir("queue", intf->driver_folder);
|
||||
if (IS_ERR(intf->queue_folder))
|
||||
if (IS_ERR(intf->queue_folder) || !intf->queue_folder)
|
||||
goto exit;
|
||||
|
||||
intf->queue_frame_dump_entry =
|
||||
debugfs_create_file("dump", S_IRUSR, intf->queue_folder,
|
||||
intf, &rt2x00debug_fop_queue_dump);
|
||||
if (IS_ERR(intf->queue_frame_dump_entry))
|
||||
if (IS_ERR(intf->queue_frame_dump_entry)
|
||||
|| !intf->queue_frame_dump_entry)
|
||||
goto exit;
|
||||
|
||||
skb_queue_head_init(&intf->frame_dump_skbqueue);
|
||||
|
|
Loading…
Reference in a new issue