diff options
author | Patrick McHardy <kaber@trash.net> | 2007-12-05 04:23:00 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 17:56:07 -0500 |
commit | 1999414a4ece2b8cea3fb3c4dc8fe06796256269 (patch) | |
tree | 5f2e774691d05f043390ec8a310f411c99aa7a9e | |
parent | 41c5b317036fcb593d14b4dfd12e3318faf3af8a (diff) |
[NETFILTER]: Mark hooks __read_mostly
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/bridge/br_netfilter.c | 2 | ||||
-rw-r--r-- | net/bridge/netfilter/ebtable_filter.c | 2 | ||||
-rw-r--r-- | net/bridge/netfilter/ebtable_nat.c | 2 | ||||
-rw-r--r-- | net/decnet/netfilter/dn_rtmsg.c | 2 | ||||
-rw-r--r-- | net/ipv4/ipvs/ip_vs_core.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/arptable_filter.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/ipt_CLUSTERIP.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/iptable_filter.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/iptable_mangle.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/iptable_raw.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/nf_nat_standalone.c | 2 | ||||
-rw-r--r-- | net/ipv6/netfilter/ip6table_filter.c | 2 | ||||
-rw-r--r-- | net/ipv6/netfilter/ip6table_mangle.c | 2 | ||||
-rw-r--r-- | net/ipv6/netfilter/ip6table_raw.c | 2 | ||||
-rw-r--r-- | net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c | 2 | ||||
-rw-r--r-- | net/sched/sch_ingress.c | 2 |
17 files changed, 17 insertions, 17 deletions
diff --git a/net/bridge/br_netfilter.c b/net/bridge/br_netfilter.c index f9ef3e58b4cb..859fe4d86698 100644 --- a/net/bridge/br_netfilter.c +++ b/net/bridge/br_netfilter.c | |||
@@ -871,7 +871,7 @@ static unsigned int ip_sabotage_in(unsigned int hook, struct sk_buff *skb, | |||
871 | * PF_BRIDGE/NF_BR_LOCAL_OUT functions don't get bridged traffic as input. | 871 | * PF_BRIDGE/NF_BR_LOCAL_OUT functions don't get bridged traffic as input. |
872 | * For br_nf_post_routing, we need (prio = NF_BR_PRI_LAST), because | 872 | * For br_nf_post_routing, we need (prio = NF_BR_PRI_LAST), because |
873 | * ip_refrag() can return NF_STOLEN. */ | 873 | * ip_refrag() can return NF_STOLEN. */ |
874 | static struct nf_hook_ops br_nf_ops[] = { | 874 | static struct nf_hook_ops br_nf_ops[] __read_mostly = { |
875 | { .hook = br_nf_pre_routing, | 875 | { .hook = br_nf_pre_routing, |
876 | .owner = THIS_MODULE, | 876 | .owner = THIS_MODULE, |
877 | .pf = PF_BRIDGE, | 877 | .pf = PF_BRIDGE, |
diff --git a/net/bridge/netfilter/ebtable_filter.c b/net/bridge/netfilter/ebtable_filter.c index 210493f99bc4..fb810908732f 100644 --- a/net/bridge/netfilter/ebtable_filter.c +++ b/net/bridge/netfilter/ebtable_filter.c | |||
@@ -67,7 +67,7 @@ ebt_hook(unsigned int hook, struct sk_buff *skb, const struct net_device *in, | |||
67 | return ebt_do_table(hook, skb, in, out, &frame_filter); | 67 | return ebt_do_table(hook, skb, in, out, &frame_filter); |
68 | } | 68 | } |
69 | 69 | ||
70 | static struct nf_hook_ops ebt_ops_filter[] = { | 70 | static struct nf_hook_ops ebt_ops_filter[] __read_mostly = { |
71 | { | 71 | { |
72 | .hook = ebt_hook, | 72 | .hook = ebt_hook, |
73 | .owner = THIS_MODULE, | 73 | .owner = THIS_MODULE, |
diff --git a/net/bridge/netfilter/ebtable_nat.c b/net/bridge/netfilter/ebtable_nat.c index 3e58c2e5ee21..bc712730c54a 100644 --- a/net/bridge/netfilter/ebtable_nat.c +++ b/net/bridge/netfilter/ebtable_nat.c | |||
@@ -74,7 +74,7 @@ ebt_nat_src(unsigned int hook, struct sk_buff *skb, const struct net_device *in | |||
74 | return ebt_do_table(hook, skb, in, out, &frame_nat); | 74 | return ebt_do_table(hook, skb, in, out, &frame_nat); |
75 | } | 75 | } |
76 | 76 | ||
77 | static struct nf_hook_ops ebt_ops_nat[] = { | 77 | static struct nf_hook_ops ebt_ops_nat[] __read_mostly = { |
78 | { | 78 | { |
79 | .hook = ebt_nat_dst, | 79 | .hook = ebt_nat_dst, |
80 | .owner = THIS_MODULE, | 80 | .owner = THIS_MODULE, |
diff --git a/net/decnet/netfilter/dn_rtmsg.c b/net/decnet/netfilter/dn_rtmsg.c index 43fcd29046d1..96375f2e64ff 100644 --- a/net/decnet/netfilter/dn_rtmsg.c +++ b/net/decnet/netfilter/dn_rtmsg.c | |||
@@ -115,7 +115,7 @@ static inline void dnrmg_receive_user_skb(struct sk_buff *skb) | |||
115 | RCV_SKB_FAIL(-EINVAL); | 115 | RCV_SKB_FAIL(-EINVAL); |
116 | } | 116 | } |
117 | 117 | ||
118 | static struct nf_hook_ops dnrmg_ops = { | 118 | static struct nf_hook_ops dnrmg_ops __read_mostly = { |
119 | .hook = dnrmg_hook, | 119 | .hook = dnrmg_hook, |
120 | .pf = PF_DECnet, | 120 | .pf = PF_DECnet, |
121 | .hooknum = NF_DN_ROUTE, | 121 | .hooknum = NF_DN_ROUTE, |
diff --git a/net/ipv4/ipvs/ip_vs_core.c b/net/ipv4/ipvs/ip_vs_core.c index f5ba606f0549..041f5120808a 100644 --- a/net/ipv4/ipvs/ip_vs_core.c +++ b/net/ipv4/ipvs/ip_vs_core.c | |||
@@ -1025,7 +1025,7 @@ ip_vs_forward_icmp(unsigned int hooknum, struct sk_buff *skb, | |||
1025 | } | 1025 | } |
1026 | 1026 | ||
1027 | 1027 | ||
1028 | static struct nf_hook_ops ip_vs_ops[] = { | 1028 | static struct nf_hook_ops ip_vs_ops[] __read_mostly = { |
1029 | /* After packet filtering, forward packet through VS/DR, VS/TUN, | 1029 | /* After packet filtering, forward packet through VS/DR, VS/TUN, |
1030 | * or VS/NAT(change destination), so that filtering rules can be | 1030 | * or VS/NAT(change destination), so that filtering rules can be |
1031 | * applied to IPVS. */ | 1031 | * applied to IPVS. */ |
diff --git a/net/ipv4/netfilter/arptable_filter.c b/net/ipv4/netfilter/arptable_filter.c index 302d3da5f696..7201511d54d2 100644 --- a/net/ipv4/netfilter/arptable_filter.c +++ b/net/ipv4/netfilter/arptable_filter.c | |||
@@ -64,7 +64,7 @@ static unsigned int arpt_hook(unsigned int hook, | |||
64 | return arpt_do_table(skb, hook, in, out, &packet_filter); | 64 | return arpt_do_table(skb, hook, in, out, &packet_filter); |
65 | } | 65 | } |
66 | 66 | ||
67 | static struct nf_hook_ops arpt_ops[] = { | 67 | static struct nf_hook_ops arpt_ops[] __read_mostly = { |
68 | { | 68 | { |
69 | .hook = arpt_hook, | 69 | .hook = arpt_hook, |
70 | .owner = THIS_MODULE, | 70 | .owner = THIS_MODULE, |
diff --git a/net/ipv4/netfilter/ipt_CLUSTERIP.c b/net/ipv4/netfilter/ipt_CLUSTERIP.c index b5de6bd3e43a..dc1e7b418831 100644 --- a/net/ipv4/netfilter/ipt_CLUSTERIP.c +++ b/net/ipv4/netfilter/ipt_CLUSTERIP.c | |||
@@ -551,7 +551,7 @@ arp_mangle(unsigned int hook, | |||
551 | return NF_ACCEPT; | 551 | return NF_ACCEPT; |
552 | } | 552 | } |
553 | 553 | ||
554 | static struct nf_hook_ops cip_arp_ops = { | 554 | static struct nf_hook_ops cip_arp_ops __read_mostly = { |
555 | .hook = arp_mangle, | 555 | .hook = arp_mangle, |
556 | .pf = NF_ARP, | 556 | .pf = NF_ARP, |
557 | .hooknum = NF_ARP_OUT, | 557 | .hooknum = NF_ARP_OUT, |
diff --git a/net/ipv4/netfilter/iptable_filter.c b/net/ipv4/netfilter/iptable_filter.c index 06ab64e30e88..29bb4f9fbda0 100644 --- a/net/ipv4/netfilter/iptable_filter.c +++ b/net/ipv4/netfilter/iptable_filter.c | |||
@@ -91,7 +91,7 @@ ipt_local_out_hook(unsigned int hook, | |||
91 | return ipt_do_table(skb, hook, in, out, &packet_filter); | 91 | return ipt_do_table(skb, hook, in, out, &packet_filter); |
92 | } | 92 | } |
93 | 93 | ||
94 | static struct nf_hook_ops ipt_ops[] = { | 94 | static struct nf_hook_ops ipt_ops[] __read_mostly = { |
95 | { | 95 | { |
96 | .hook = ipt_hook, | 96 | .hook = ipt_hook, |
97 | .owner = THIS_MODULE, | 97 | .owner = THIS_MODULE, |
diff --git a/net/ipv4/netfilter/iptable_mangle.c b/net/ipv4/netfilter/iptable_mangle.c index 0335827d3e4d..5c4be202430c 100644 --- a/net/ipv4/netfilter/iptable_mangle.c +++ b/net/ipv4/netfilter/iptable_mangle.c | |||
@@ -128,7 +128,7 @@ ipt_local_hook(unsigned int hook, | |||
128 | return ret; | 128 | return ret; |
129 | } | 129 | } |
130 | 130 | ||
131 | static struct nf_hook_ops ipt_ops[] = { | 131 | static struct nf_hook_ops ipt_ops[] __read_mostly = { |
132 | { | 132 | { |
133 | .hook = ipt_route_hook, | 133 | .hook = ipt_route_hook, |
134 | .owner = THIS_MODULE, | 134 | .owner = THIS_MODULE, |
diff --git a/net/ipv4/netfilter/iptable_raw.c b/net/ipv4/netfilter/iptable_raw.c index 66be23295594..dc34aa274533 100644 --- a/net/ipv4/netfilter/iptable_raw.c +++ b/net/ipv4/netfilter/iptable_raw.c | |||
@@ -74,7 +74,7 @@ ipt_local_hook(unsigned int hook, | |||
74 | } | 74 | } |
75 | 75 | ||
76 | /* 'raw' is the very first table. */ | 76 | /* 'raw' is the very first table. */ |
77 | static struct nf_hook_ops ipt_ops[] = { | 77 | static struct nf_hook_ops ipt_ops[] __read_mostly = { |
78 | { | 78 | { |
79 | .hook = ipt_hook, | 79 | .hook = ipt_hook, |
80 | .pf = PF_INET, | 80 | .pf = PF_INET, |
diff --git a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c index c91725a85789..cd2d8451ddad 100644 --- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c +++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | |||
@@ -185,7 +185,7 @@ static unsigned int ipv4_conntrack_local(unsigned int hooknum, | |||
185 | 185 | ||
186 | /* Connection tracking may drop packets, but never alters them, so | 186 | /* Connection tracking may drop packets, but never alters them, so |
187 | make it the first hook. */ | 187 | make it the first hook. */ |
188 | static struct nf_hook_ops ipv4_conntrack_ops[] = { | 188 | static struct nf_hook_ops ipv4_conntrack_ops[] __read_mostly = { |
189 | { | 189 | { |
190 | .hook = ipv4_conntrack_defrag, | 190 | .hook = ipv4_conntrack_defrag, |
191 | .owner = THIS_MODULE, | 191 | .owner = THIS_MODULE, |
diff --git a/net/ipv4/netfilter/nf_nat_standalone.c b/net/ipv4/netfilter/nf_nat_standalone.c index 84172e9dcb16..a2b02f01cc5c 100644 --- a/net/ipv4/netfilter/nf_nat_standalone.c +++ b/net/ipv4/netfilter/nf_nat_standalone.c | |||
@@ -273,7 +273,7 @@ nf_nat_adjust(unsigned int hooknum, | |||
273 | 273 | ||
274 | /* We must be after connection tracking and before packet filtering. */ | 274 | /* We must be after connection tracking and before packet filtering. */ |
275 | 275 | ||
276 | static struct nf_hook_ops nf_nat_ops[] = { | 276 | static struct nf_hook_ops nf_nat_ops[] __read_mostly = { |
277 | /* Before packet filtering, change destination */ | 277 | /* Before packet filtering, change destination */ |
278 | { | 278 | { |
279 | .hook = nf_nat_in, | 279 | .hook = nf_nat_in, |
diff --git a/net/ipv6/netfilter/ip6table_filter.c b/net/ipv6/netfilter/ip6table_filter.c index 0ae072dd6924..87d38d08aad0 100644 --- a/net/ipv6/netfilter/ip6table_filter.c +++ b/net/ipv6/netfilter/ip6table_filter.c | |||
@@ -90,7 +90,7 @@ ip6t_local_out_hook(unsigned int hook, | |||
90 | return ip6t_do_table(skb, hook, in, out, &packet_filter); | 90 | return ip6t_do_table(skb, hook, in, out, &packet_filter); |
91 | } | 91 | } |
92 | 92 | ||
93 | static struct nf_hook_ops ip6t_ops[] = { | 93 | static struct nf_hook_ops ip6t_ops[] __read_mostly = { |
94 | { | 94 | { |
95 | .hook = ip6t_hook, | 95 | .hook = ip6t_hook, |
96 | .owner = THIS_MODULE, | 96 | .owner = THIS_MODULE, |
diff --git a/net/ipv6/netfilter/ip6table_mangle.c b/net/ipv6/netfilter/ip6table_mangle.c index 8e62b2316829..d6082600bc5d 100644 --- a/net/ipv6/netfilter/ip6table_mangle.c +++ b/net/ipv6/netfilter/ip6table_mangle.c | |||
@@ -120,7 +120,7 @@ ip6t_local_hook(unsigned int hook, | |||
120 | return ret; | 120 | return ret; |
121 | } | 121 | } |
122 | 122 | ||
123 | static struct nf_hook_ops ip6t_ops[] = { | 123 | static struct nf_hook_ops ip6t_ops[] __read_mostly = { |
124 | { | 124 | { |
125 | .hook = ip6t_route_hook, | 125 | .hook = ip6t_route_hook, |
126 | .owner = THIS_MODULE, | 126 | .owner = THIS_MODULE, |
diff --git a/net/ipv6/netfilter/ip6table_raw.c b/net/ipv6/netfilter/ip6table_raw.c index 4fecd8de8cc2..eccbaaa104af 100644 --- a/net/ipv6/netfilter/ip6table_raw.c +++ b/net/ipv6/netfilter/ip6table_raw.c | |||
@@ -54,7 +54,7 @@ ip6t_hook(unsigned int hook, | |||
54 | return ip6t_do_table(skb, hook, in, out, &packet_raw); | 54 | return ip6t_do_table(skb, hook, in, out, &packet_raw); |
55 | } | 55 | } |
56 | 56 | ||
57 | static struct nf_hook_ops ip6t_ops[] = { | 57 | static struct nf_hook_ops ip6t_ops[] __read_mostly = { |
58 | { | 58 | { |
59 | .hook = ip6t_hook, | 59 | .hook = ip6t_hook, |
60 | .pf = PF_INET6, | 60 | .pf = PF_INET6, |
diff --git a/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c b/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c index 50f46787fda4..97a553036dde 100644 --- a/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c +++ b/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c | |||
@@ -258,7 +258,7 @@ static unsigned int ipv6_conntrack_local(unsigned int hooknum, | |||
258 | return ipv6_conntrack_in(hooknum, skb, in, out, okfn); | 258 | return ipv6_conntrack_in(hooknum, skb, in, out, okfn); |
259 | } | 259 | } |
260 | 260 | ||
261 | static struct nf_hook_ops ipv6_conntrack_ops[] = { | 261 | static struct nf_hook_ops ipv6_conntrack_ops[] __read_mostly = { |
262 | { | 262 | { |
263 | .hook = ipv6_defrag, | 263 | .hook = ipv6_defrag, |
264 | .owner = THIS_MODULE, | 264 | .owner = THIS_MODULE, |
diff --git a/net/sched/sch_ingress.c b/net/sched/sch_ingress.c index f4af9b604f3f..89c32a9bcc5e 100644 --- a/net/sched/sch_ingress.c +++ b/net/sched/sch_ingress.c | |||
@@ -231,7 +231,7 @@ ing_hook(unsigned int hook, struct sk_buff *skb, | |||
231 | } | 231 | } |
232 | 232 | ||
233 | /* after ipt_filter */ | 233 | /* after ipt_filter */ |
234 | static struct nf_hook_ops ing_ops[] = { | 234 | static struct nf_hook_ops ing_ops[] __read_mostly = { |
235 | { | 235 | { |
236 | .hook = ing_hook, | 236 | .hook = ing_hook, |
237 | .owner = THIS_MODULE, | 237 | .owner = THIS_MODULE, |