aboutsummaryrefslogtreecommitdiffstats
path: root/net/atm/proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/atm/proc.c')
-rw-r--r--net/atm/proc.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/net/atm/proc.c b/net/atm/proc.c
index 7a96b2376bd7..6262aeae398e 100644
--- a/net/atm/proc.c
+++ b/net/atm/proc.c
@@ -22,6 +22,7 @@
22#include <linux/netdevice.h> 22#include <linux/netdevice.h>
23#include <linux/atmclip.h> 23#include <linux/atmclip.h>
24#include <linux/init.h> /* for __init */ 24#include <linux/init.h> /* for __init */
25#include <linux/slab.h>
25#include <net/net_namespace.h> 26#include <net/net_namespace.h>
26#include <net/atmclip.h> 27#include <net/atmclip.h>
27#include <linux/uaccess.h> 28#include <linux/uaccess.h>
@@ -406,7 +407,6 @@ EXPORT_SYMBOL(atm_proc_root);
406 407
407int atm_proc_dev_register(struct atm_dev *dev) 408int atm_proc_dev_register(struct atm_dev *dev)
408{ 409{
409 int digits, num;
410 int error; 410 int error;
411 411
412 /* No proc info */ 412 /* No proc info */
@@ -414,16 +414,9 @@ int atm_proc_dev_register(struct atm_dev *dev)
414 return 0; 414 return 0;
415 415
416 error = -ENOMEM; 416 error = -ENOMEM;
417 digits = 0; 417 dev->proc_name = kasprintf(GFP_KERNEL, "%s:%d", dev->type, dev->number);
418 for (num = dev->number; num; num /= 10)
419 digits++;
420 if (!digits)
421 digits++;
422
423 dev->proc_name = kmalloc(strlen(dev->type) + digits + 2, GFP_KERNEL);
424 if (!dev->proc_name) 418 if (!dev->proc_name)
425 goto err_out; 419 goto err_out;
426 sprintf(dev->proc_name, "%s:%d", dev->type, dev->number);
427 420
428 dev->proc_entry = proc_create_data(dev->proc_name, 0, atm_proc_root, 421 dev->proc_entry = proc_create_data(dev->proc_name, 0, atm_proc_root,
429 &proc_atm_dev_ops, dev); 422 &proc_atm_dev_ops, dev);