diff options
author | Linus Torvalds | 2011-03-09 22:55:51 +0100 |
---|---|---|
committer | Linus Torvalds | 2011-03-09 22:55:51 +0100 |
commit | 78833dd70602be6b71ef34225f708b1e500947dc (patch) | |
tree | 807050f760ccc7305b194d7568ebf98737076a40 /include/linux | |
parent | Linux 2.6.38-rc8 (diff) | |
parent | nd->inode is not set on the second attempt in path_walk() (diff) | |
download | kernel-qcow2-linux-78833dd70602be6b71ef34225f708b1e500947dc.tar.gz kernel-qcow2-linux-78833dd70602be6b71ef34225f708b1e500947dc.tar.xz kernel-qcow2-linux-78833dd70602be6b71ef34225f708b1e500947dc.zip |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
nd->inode is not set on the second attempt in path_walk()
unfuck proc_sysctl ->d_compare()
minimal fix for do_filp_open() race
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/sysctl.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 7bb5cb64f3b8..bb7c2b086fa4 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h @@ -25,6 +25,7 @@ #include <linux/kernel.h> #include <linux/types.h> #include <linux/compiler.h> +#include <linux/rcupdate.h> struct completion; @@ -1037,10 +1038,15 @@ struct ctl_table_root { struct ctl_table trees. */ struct ctl_table_header { - struct ctl_table *ctl_table; - struct list_head ctl_entry; - int used; - int count; + union { + struct { + struct ctl_table *ctl_table; + struct list_head ctl_entry; + int used; + int count; + }; + struct rcu_head rcu; + }; struct completion *unregistering; struct ctl_table *ctl_table_arg; struct ctl_table_root *root; |