This is part of the general push to deprecate register_sysctl_paths and register_sysctl_table. Parport driver uses the "CHILD" pointer in the ctl_table structure to create its directory structure. We move to the newer register_sysctl call and remove the pointer madness. I have separated the parport into 5 patches to clarify the different changes needed for the 3 calls to register_sysctl_paths. I can squash them together if need be. We no longer export the register_sysctl_table call as parport was the last user from outside proc_sysctl.c. Also modified documentation slightly so register_sysctl_table is no longer mentioned. V2: * Added a return error value when register fails * Made sure to free the memory on error when calling parport_proc_register * Added a bloat-o-meter output to measure bloat * Replaced kmalloc with kzalloc * Added comments about testing * Improved readability when using snprintf Best Joel Joel Granados (6): parport: Move magic number "15" to a define parport: Remove register_sysctl_table from parport_proc_register parport: Remove register_sysctl_table from parport_device_proc_register parport: Remove register_sysctl_table from parport_default_proc_register parport: Removed sysctl related defines sysctl: stop exporting register_sysctl_table drivers/parport/procfs.c | 169 +++++++++++++++++++++------------------ drivers/parport/share.c | 2 +- fs/proc/proc_sysctl.c | 5 +- include/linux/parport.h | 2 + include/linux/sysctl.h | 8 +- 5 files changed, 95 insertions(+), 91 deletions(-) -- 2.30.2