[INET]: Let inet_diag and friends autoload
[pandora-kernel.git] / net / ax25 / sysctl_net_ax25.c
index 867d425..443a836 100644 (file)
@@ -209,7 +209,9 @@ void ax25_register_sysctl(void)
        }
 
        for (n = 0, ax25_dev = ax25_dev_list; ax25_dev != NULL; ax25_dev = ax25_dev->next) {
-               ctl_table *child = kmalloc(sizeof(ax25_param_table), GFP_ATOMIC);
+               struct ctl_table *child = kmemdup(ax25_param_table,
+                                                 sizeof(ax25_param_table),
+                                                 GFP_ATOMIC);
                if (!child) {
                        while (n--)
                                kfree(ax25_table[n].child);
@@ -217,7 +219,6 @@ void ax25_register_sysctl(void)
                        spin_unlock_bh(&ax25_dev_lock);
                        return;
                }
-               memcpy(child, ax25_param_table, sizeof(ax25_param_table));
                ax25_table[n].child = ax25_dev->systable = child;
                ax25_table[n].ctl_name     = n + 1;
                ax25_table[n].procname     = ax25_dev->dev->name;
@@ -244,7 +245,7 @@ void ax25_register_sysctl(void)
 
        ax25_dir_table[0].child = ax25_table;
 
-       ax25_table_header = register_sysctl_table(ax25_root_table, 1);
+       ax25_table_header = register_sysctl_table(ax25_root_table);
 }
 
 void ax25_unregister_sysctl(void)