| Re: [PATCH v9 0/9] Request for inclusion: per-cgroup tcp memory pressure controls [message #44535 is a reply to message #44497] | 
			Tue, 13 December 2011 13:59    | 
		 
		
			
				
				
				
					
						  
						Eric Dumazet
						 Messages: 36 Registered: July 2006 
						
					 | 
					Member  | 
					 | 
		 
		 
	 | 
 
	
		Le mardi 13 décembre 2011 à 14:49 +0100, Christoph Paasch a écrit : 
 
> now there are plenty of compiler-warnings when CONFIG_CGROUPS is not set: 
>  
> In file included from include/linux/tcp.h:211:0, 
>                  from include/linux/ipv6.h:221, 
>                  from include/net/ip_vs.h:23, 
>                  from kernel/sysctl_binary.c:6: 
> include/net/sock.h:67:57: warning: ‘struct cgroup_subsys’ declared 
> inside parameter list [enabled by default] 
> include/net/sock.h:67:57: warning: its scope is only this definition or 
> declaration, which is probably not what you want [enabled by default] 
> include/net/sock.h:67:57: warning: ‘struct cgroup’ declared inside 
> parameter list [enabled by default] 
> include/net/sock.h:68:61: warning: ‘struct cgroup_subsys’ declared 
> inside parameter list [enabled by default] 
> include/net/sock.h:68:61: warning: ‘struct cgroup’ declared inside 
> parameter list [enabled by default] 
>  
>  
> Because struct cgroup is only declared if CONFIG_CGROUPS is enabled. 
> (cfr. linux/cgroup.h) 
>  
 
Yes, we probably need forward reference like this : 
 
Thanks ! 
 
[PATCH net-next] net: fix build error if CONFIG_CGROUPS=n 
 
Reported-by: Christoph Paasch <christoph.paasch@uclouvain.be> 
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> 
--- 
 include/net/sock.h |    2 ++ 
 1 file changed, 2 insertions(+) 
 
diff --git a/include/net/sock.h b/include/net/sock.h 
index 18ecc99..6fe0dae 100644 
--- a/include/net/sock.h 
+++ b/include/net/sock.h 
@@ -64,6 +64,8 @@ 
 #include <net/dst.h> 
 #include <net/checksum.h> 
  
+struct cgroup; 
+struct cgroup_subsys; 
 int mem_cgroup_sockets_init(struct cgroup *cgrp, struct cgroup_subsys *ss); 
 void mem_cgroup_sockets_destroy(struct cgroup *cgrp, struct cgroup_subsys *ss); 
 /*
		
		
		
 |  
	| 
		
	 | 
 
 
 |