From: Christoph Hellwig <hch@lst.de>

security.h gets pulled in in lots of places, so use forward declarations
for struct ctl_table instead of pulling sysctl in everywhere.

Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/include/linux/security.h |    9 +++++----
 25-akpm/security/selinux/hooks.c |    1 +
 2 files changed, 6 insertions(+), 4 deletions(-)

diff -puN include/linux/security.h~dont-include-linux-sysctlh-in-linux-securityh include/linux/security.h
--- 25/include/linux/security.h~dont-include-linux-sysctlh-in-linux-securityh	2004-09-20 10:50:21.132322728 -0700
+++ 25-akpm/include/linux/security.h	2004-09-20 10:50:21.140321512 -0700
@@ -27,13 +27,14 @@
 #include <linux/signal.h>
 #include <linux/resource.h>
 #include <linux/sem.h>
-#include <linux/sysctl.h>
 #include <linux/shm.h>
 #include <linux/msg.h>
 #include <linux/sched.h>
 #include <linux/skbuff.h>
 #include <linux/netlink.h>
 
+struct ctl_table;
+
 /*
  * These functions are in security/capability.c and are used
  * as the default capabilities functions
@@ -1029,7 +1030,7 @@ struct security_operations {
 			    kernel_cap_t * inheritable,
 			    kernel_cap_t * permitted);
 	int (*acct) (struct file * file);
-	int (*sysctl) (ctl_table * table, int op);
+	int (*sysctl) (struct ctl_table * table, int op);
 	int (*capable) (struct task_struct * tsk, int cap);
 	int (*quotactl) (int cmds, int type, int id, struct super_block * sb);
 	int (*quota_on) (struct file * f);
@@ -1268,7 +1269,7 @@ static inline int security_acct (struct 
 	return security_ops->acct (file);
 }
 
-static inline int security_sysctl(ctl_table * table, int op)
+static inline int security_sysctl(struct ctl_table *table, int op)
 {
 	return security_ops->sysctl(table, op);
 }
@@ -1940,7 +1941,7 @@ static inline int security_acct (struct 
 	return 0;
 }
 
-static inline int security_sysctl(ctl_table * table, int op)
+static inline int security_sysctl(struct ctl_table *table, int op)
 {
 	return 0;
 }
diff -puN security/selinux/hooks.c~dont-include-linux-sysctlh-in-linux-securityh security/selinux/hooks.c
--- 25/security/selinux/hooks.c~dont-include-linux-sysctlh-in-linux-securityh	2004-09-20 10:50:21.135322272 -0700
+++ 25-akpm/security/selinux/hooks.c	2004-09-20 10:50:21.143321056 -0700
@@ -64,6 +64,7 @@
 #include <net/ipv6.h>
 #include <linux/hugetlb.h>
 #include <linux/personality.h>
+#include <linux/sysctl.h>
 
 #include "avc.h"
 #include "objsec.h"
_