Merge git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 24 Mar 2012 01:08:58 +0000 (18:08 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 24 Mar 2012 01:08:58 +0000 (18:08 -0700)
Pull sysctl updates from Eric Biederman:

 - Rewrite of sysctl for speed and clarity.

   Insert/remove/Lookup in sysctl are all now O(NlogN) operations, and
   are no longer bottlenecks in the process of adding and removing
   network devices.

   sysctl is now focused on being a filesystem instead of system call
   and the code can all be found in fs/proc/proc_sysctl.c.  Hopefully
   this means the code is now approachable.

   Much thanks is owed to Lucian Grinjincu for keeping at this until
   something was found that was usable.

 - The recent proc_sys_poll oops found by the fuzzer during hibernation
   is fixed.

* git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl: (36 commits)
  sysctl: protect poll() in entries that may go away
  sysctl: Don't call sysctl_follow_link unless we are a link.
  sysctl: Comments to make the code clearer.
  sysctl: Correct error return from get_subdir
  sysctl: An easier to read version of find_subdir
  sysctl: fix memset parameters in setup_sysctl_set()
  sysctl: remove an unused variable
  sysctl: Add register_sysctl for normal sysctl users
  sysctl: Index sysctl directories with rbtrees.
  sysctl: Make the header lists per directory.
  sysctl: Move sysctl_check_dups into insert_header
  sysctl: Modify __register_sysctl_paths to take a set instead of a root and an nsproxy
  sysctl: Replace root_list with links between sysctl_table_sets.
  sysctl: Add sysctl_print_dir and use it in get_subdir
  sysctl: Stop requiring explicit management of sysctl directories
  sysctl: Add a root pointer to ctl_table_set
  sysctl: Rewrite proc_sys_readdir in terms of first_entry and next_entry
  sysctl: Rewrite proc_sys_lookup introducing find_entry and lookup_entry.
  sysctl: Normalize the root_table data structure.
  sysctl: Factor out insert_header and erase_header
  ...

1  2 
fs/proc/internal.h
fs/proc/proc_sysctl.c
kernel/sysctl.c
lib/Kconfig.debug

Simple merge
index 67bbf6e4e197b208b5fbc743fb2d315702db4981,47b474b572c1ea29c8a75abb1c444c309f9e3930..21d836f40292dba85a47b61aed4b0b30028ec41f
@@@ -6,9 -6,8 +6,10 @@@
  #include <linux/poll.h>
  #include <linux/proc_fs.h>
  #include <linux/security.h>
 +#include <linux/sched.h>
  #include <linux/namei.h>
 +#include <linux/mm.h>
+ #include <linux/module.h>
  #include "internal.h"
  
  static const struct dentry_operations proc_sys_dentry_operations;
diff --cc kernel/sysctl.c
Simple merge
Simple merge