Эх сурвалжийг харах

[NETFILTER]: ip_ct_proto_gre_fini() cannot be __exit

It is invoked from failures paths of __init code.

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 19 жил өмнө
parent
commit
a776809755

+ 1 - 1
net/ipv4/netfilter/ip_conntrack_helper_pptp.c

@@ -762,7 +762,7 @@ static struct ip_conntrack_helper pptp = {
 	.help = conntrack_pptp_help
 };
 
-extern void __exit ip_ct_proto_gre_fini(void);
+extern void ip_ct_proto_gre_fini(void);
 extern int __init ip_ct_proto_gre_init(void);
 
 /* ip_conntrack_pptp initialization */

+ 4 - 1
net/ipv4/netfilter/ip_conntrack_proto_gre.c

@@ -309,7 +309,10 @@ int __init ip_ct_proto_gre_init(void)
 	return ip_conntrack_protocol_register(&gre);
 }
 
-void __exit ip_ct_proto_gre_fini(void)
+/* This cannot be __exit, as it is invoked from ip_conntrack_helper_pptp.c's
+ * init() code on errors.
+ */
+void ip_ct_proto_gre_fini(void)
 {
 	struct list_head *pos, *n;