6lowpan: no need to check return value of debugfs_create functions
When calling debugfs functions, there is no need to ever check the return value. The function can work or not, but the code logic should never do something different based on this. Because we don't care if debugfs works or not, this trickles back a bit so we can clean things up by making some functions return void instead of an error value that is never going to fail. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Jukka Rissanen <jukka.rissanen@linux.intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
2faa3f15fa
commit
db50450d09
|
@ -18,24 +18,16 @@ extern const struct ndisc_ops lowpan_ndisc_ops;
|
||||||
int addrconf_ifid_802154_6lowpan(u8 *eui, struct net_device *dev);
|
int addrconf_ifid_802154_6lowpan(u8 *eui, struct net_device *dev);
|
||||||
|
|
||||||
#ifdef CONFIG_6LOWPAN_DEBUGFS
|
#ifdef CONFIG_6LOWPAN_DEBUGFS
|
||||||
int lowpan_dev_debugfs_init(struct net_device *dev);
|
void lowpan_dev_debugfs_init(struct net_device *dev);
|
||||||
void lowpan_dev_debugfs_exit(struct net_device *dev);
|
void lowpan_dev_debugfs_exit(struct net_device *dev);
|
||||||
|
|
||||||
int __init lowpan_debugfs_init(void);
|
void __init lowpan_debugfs_init(void);
|
||||||
void lowpan_debugfs_exit(void);
|
void lowpan_debugfs_exit(void);
|
||||||
#else
|
#else
|
||||||
static inline int lowpan_dev_debugfs_init(struct net_device *dev)
|
static inline void lowpan_dev_debugfs_init(struct net_device *dev) { }
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void lowpan_dev_debugfs_exit(struct net_device *dev) { }
|
static inline void lowpan_dev_debugfs_exit(struct net_device *dev) { }
|
||||||
|
|
||||||
static inline int __init lowpan_debugfs_init(void)
|
static inline void __init lowpan_debugfs_init(void) { }
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void lowpan_debugfs_exit(void) { }
|
static inline void lowpan_debugfs_exit(void) { }
|
||||||
#endif /* CONFIG_6LOWPAN_DEBUGFS */
|
#endif /* CONFIG_6LOWPAN_DEBUGFS */
|
||||||
|
|
||||||
|
|
|
@ -42,9 +42,7 @@ int lowpan_register_netdevice(struct net_device *dev,
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
ret = lowpan_dev_debugfs_init(dev);
|
lowpan_dev_debugfs_init(dev);
|
||||||
if (ret < 0)
|
|
||||||
unregister_netdevice(dev);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -152,9 +150,7 @@ static int __init lowpan_module_init(void)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
ret = lowpan_debugfs_init();
|
lowpan_debugfs_init();
|
||||||
if (ret < 0)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
ret = register_netdevice_notifier(&lowpan_notifier);
|
ret = register_netdevice_notifier(&lowpan_notifier);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
|
|
|
@ -163,11 +163,11 @@ static const struct file_operations lowpan_ctx_pfx_fops = {
|
||||||
.release = single_release,
|
.release = single_release,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int lowpan_dev_debugfs_ctx_init(struct net_device *dev,
|
static void lowpan_dev_debugfs_ctx_init(struct net_device *dev,
|
||||||
struct dentry *ctx, u8 id)
|
struct dentry *ctx, u8 id)
|
||||||
{
|
{
|
||||||
struct lowpan_dev *ldev = lowpan_dev(dev);
|
struct lowpan_dev *ldev = lowpan_dev(dev);
|
||||||
struct dentry *dentry, *root;
|
struct dentry *root;
|
||||||
char buf[32];
|
char buf[32];
|
||||||
|
|
||||||
WARN_ON_ONCE(id > LOWPAN_IPHC_CTX_TABLE_SIZE);
|
WARN_ON_ONCE(id > LOWPAN_IPHC_CTX_TABLE_SIZE);
|
||||||
|
@ -175,34 +175,18 @@ static int lowpan_dev_debugfs_ctx_init(struct net_device *dev,
|
||||||
sprintf(buf, "%d", id);
|
sprintf(buf, "%d", id);
|
||||||
|
|
||||||
root = debugfs_create_dir(buf, ctx);
|
root = debugfs_create_dir(buf, ctx);
|
||||||
if (!root)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
dentry = debugfs_create_file_unsafe("active", 0644, root,
|
debugfs_create_file("active", 0644, root, &ldev->ctx.table[id],
|
||||||
&ldev->ctx.table[id],
|
|
||||||
&lowpan_ctx_flag_active_fops);
|
&lowpan_ctx_flag_active_fops);
|
||||||
if (!dentry)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
dentry = debugfs_create_file_unsafe("compression", 0644, root,
|
debugfs_create_file("compression", 0644, root, &ldev->ctx.table[id],
|
||||||
&ldev->ctx.table[id],
|
|
||||||
&lowpan_ctx_flag_c_fops);
|
&lowpan_ctx_flag_c_fops);
|
||||||
if (!dentry)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
dentry = debugfs_create_file("prefix", 0644, root,
|
debugfs_create_file("prefix", 0644, root, &ldev->ctx.table[id],
|
||||||
&ldev->ctx.table[id],
|
|
||||||
&lowpan_ctx_pfx_fops);
|
&lowpan_ctx_pfx_fops);
|
||||||
if (!dentry)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
dentry = debugfs_create_file_unsafe("prefix_len", 0644, root,
|
debugfs_create_file("prefix_len", 0644, root, &ldev->ctx.table[id],
|
||||||
&ldev->ctx.table[id],
|
|
||||||
&lowpan_ctx_plen_fops);
|
&lowpan_ctx_plen_fops);
|
||||||
if (!dentry)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int lowpan_context_show(struct seq_file *file, void *offset)
|
static int lowpan_context_show(struct seq_file *file, void *offset)
|
||||||
|
@ -242,64 +226,39 @@ static int lowpan_short_addr_get(void *data, u64 *val)
|
||||||
DEFINE_DEBUGFS_ATTRIBUTE(lowpan_short_addr_fops, lowpan_short_addr_get, NULL,
|
DEFINE_DEBUGFS_ATTRIBUTE(lowpan_short_addr_fops, lowpan_short_addr_get, NULL,
|
||||||
"0x%04llx\n");
|
"0x%04llx\n");
|
||||||
|
|
||||||
static int lowpan_dev_debugfs_802154_init(const struct net_device *dev,
|
static void lowpan_dev_debugfs_802154_init(const struct net_device *dev,
|
||||||
struct lowpan_dev *ldev)
|
struct lowpan_dev *ldev)
|
||||||
{
|
{
|
||||||
struct dentry *dentry, *root;
|
struct dentry *root;
|
||||||
|
|
||||||
if (!lowpan_is_ll(dev, LOWPAN_LLTYPE_IEEE802154))
|
if (!lowpan_is_ll(dev, LOWPAN_LLTYPE_IEEE802154))
|
||||||
return 0;
|
return;
|
||||||
|
|
||||||
root = debugfs_create_dir("ieee802154", ldev->iface_debugfs);
|
root = debugfs_create_dir("ieee802154", ldev->iface_debugfs);
|
||||||
if (!root)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
dentry = debugfs_create_file_unsafe("short_addr", 0444, root,
|
debugfs_create_file("short_addr", 0444, root,
|
||||||
lowpan_802154_dev(dev)->wdev->ieee802154_ptr,
|
lowpan_802154_dev(dev)->wdev->ieee802154_ptr,
|
||||||
&lowpan_short_addr_fops);
|
&lowpan_short_addr_fops);
|
||||||
if (!dentry)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int lowpan_dev_debugfs_init(struct net_device *dev)
|
void lowpan_dev_debugfs_init(struct net_device *dev)
|
||||||
{
|
{
|
||||||
struct lowpan_dev *ldev = lowpan_dev(dev);
|
struct lowpan_dev *ldev = lowpan_dev(dev);
|
||||||
struct dentry *contexts, *dentry;
|
struct dentry *contexts;
|
||||||
int ret, i;
|
int i;
|
||||||
|
|
||||||
/* creating the root */
|
/* creating the root */
|
||||||
ldev->iface_debugfs = debugfs_create_dir(dev->name, lowpan_debugfs);
|
ldev->iface_debugfs = debugfs_create_dir(dev->name, lowpan_debugfs);
|
||||||
if (!ldev->iface_debugfs)
|
|
||||||
goto fail;
|
|
||||||
|
|
||||||
contexts = debugfs_create_dir("contexts", ldev->iface_debugfs);
|
contexts = debugfs_create_dir("contexts", ldev->iface_debugfs);
|
||||||
if (!contexts)
|
|
||||||
goto remove_root;
|
|
||||||
|
|
||||||
dentry = debugfs_create_file("show", 0644, contexts,
|
debugfs_create_file("show", 0644, contexts, &lowpan_dev(dev)->ctx,
|
||||||
&lowpan_dev(dev)->ctx,
|
|
||||||
&lowpan_context_fops);
|
&lowpan_context_fops);
|
||||||
if (!dentry)
|
|
||||||
goto remove_root;
|
|
||||||
|
|
||||||
for (i = 0; i < LOWPAN_IPHC_CTX_TABLE_SIZE; i++) {
|
for (i = 0; i < LOWPAN_IPHC_CTX_TABLE_SIZE; i++)
|
||||||
ret = lowpan_dev_debugfs_ctx_init(dev, contexts, i);
|
lowpan_dev_debugfs_ctx_init(dev, contexts, i);
|
||||||
if (ret < 0)
|
|
||||||
goto remove_root;
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = lowpan_dev_debugfs_802154_init(dev, ldev);
|
lowpan_dev_debugfs_802154_init(dev, ldev);
|
||||||
if (ret < 0)
|
|
||||||
goto remove_root;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
remove_root:
|
|
||||||
lowpan_dev_debugfs_exit(dev);
|
|
||||||
fail:
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void lowpan_dev_debugfs_exit(struct net_device *dev)
|
void lowpan_dev_debugfs_exit(struct net_device *dev)
|
||||||
|
@ -307,13 +266,9 @@ void lowpan_dev_debugfs_exit(struct net_device *dev)
|
||||||
debugfs_remove_recursive(lowpan_dev(dev)->iface_debugfs);
|
debugfs_remove_recursive(lowpan_dev(dev)->iface_debugfs);
|
||||||
}
|
}
|
||||||
|
|
||||||
int __init lowpan_debugfs_init(void)
|
void __init lowpan_debugfs_init(void)
|
||||||
{
|
{
|
||||||
lowpan_debugfs = debugfs_create_dir("6lowpan", NULL);
|
lowpan_debugfs = debugfs_create_dir("6lowpan", NULL);
|
||||||
if (!lowpan_debugfs)
|
|
||||||
return -EINVAL;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void lowpan_debugfs_exit(void)
|
void lowpan_debugfs_exit(void)
|
||||||
|
|
Loading…
Reference in New Issue