lkml.org 
[lkml]   [2012]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectre: sysctl: register only tables of sysctl files
Hi Eric,

The patch f728019bb72e: "sysctl: register only tables of sysctl
files" from Jan 22, 2012, has a weird thing going on and I don't know
how to fix it:

+ if (nr_dirs && nr_files) {
+ struct ctl_table *new;
+ files = kzalloc(sizeof(struct ctl_table) * (nr_files + 1),
+ GFP_KERNEL);
+ if (!files)
+ goto out;
+
+ ctl_table_arg = files;
+ for (new = files, entry = table; entry->procname; entry++) {
+ if (entry->child)
+ continue;
+ *new = *entry;
+ new++;
+ }
+ }
+
+ /* Register everything except a directory full of subdirectories */
+ if (nr_files || !nr_dirs) {
+ struct ctl_table_header *header;
+ header = __register_sysctl_table(root, namespaces, path, files);
+ if (!header) {
+ kfree(ctl_table_arg);
^^^^^^^^^^^^^
+ goto out;
+ }
+
+ /* Remember if we need to free the file table */
+ header->ctl_table_arg = ctl_table_arg;
^^^^^^^^^^^^^
These are NULL unless "nr_dirs" is non-zero (so it's always NULL here).

+ **subheader = header;
+ (*subheader)++;
+ }

regards,
dan carpenter



\
 
 \ /
  Last update: 2012-01-30 14:41    [W:0.028 / U:57.744 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site