aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@vyatta.com>2009-03-09 04:18:29 -0400
committerDavid S. Miller <davem@davemloft.net>2009-03-10 08:22:43 -0400
commit7546dd97d27306d939c13e03318aae695badaa88 (patch)
treeced310466fd679ceae4e676ae8c31fd78b7bd72f
parent3f612132c7164d5cc9ed677a2fdf8950222d2170 (diff)
net: convert usage of packet_type to read_mostly
Protocols that use packet_type can be __read_mostly section for better locality. Elminate any unnecessary initializations of NULL. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/block/aoe/aoenet.c2
-rw-r--r--drivers/net/hamradio/bpqether.c2
-rw-r--r--drivers/net/pppoe.c6
-rw-r--r--drivers/net/wan/hdlc.c2
-rw-r--r--drivers/net/wan/lapbether.c2
-rw-r--r--net/8021q/vlan.c2
-rw-r--r--net/appletalk/ddp.c4
-rw-r--r--net/ax25/af_ax25.c3
-rw-r--r--net/decnet/af_decnet.c3
-rw-r--r--net/dsa/tag_dsa.c2
-rw-r--r--net/dsa/tag_edsa.c2
-rw-r--r--net/dsa/tag_trailer.c2
-rw-r--r--net/econet/af_econet.c2
-rw-r--r--net/ipv4/af_inet.c2
-rw-r--r--net/ipv4/arp.c2
-rw-r--r--net/ipv6/af_inet6.c2
-rw-r--r--net/ipx/af_ipx.c4
-rw-r--r--net/irda/irmod.c2
-rw-r--r--net/llc/llc_core.c4
-rw-r--r--net/phonet/af_phonet.c3
-rw-r--r--net/x25/af_x25.c2
21 files changed, 26 insertions, 29 deletions
diff --git a/drivers/block/aoe/aoenet.c b/drivers/block/aoe/aoenet.c
index c6099ba9a4b8..ce0d62cd71b2 100644
--- a/drivers/block/aoe/aoenet.c
+++ b/drivers/block/aoe/aoenet.c
@@ -151,7 +151,7 @@ exit:
151 return 0; 151 return 0;
152} 152}
153 153
154static struct packet_type aoe_pt = { 154static struct packet_type aoe_pt __read_mostly = {
155 .type = __constant_htons(ETH_P_AOE), 155 .type = __constant_htons(ETH_P_AOE),
156 .func = aoenet_rcv, 156 .func = aoenet_rcv,
157}; 157};
diff --git a/drivers/net/hamradio/bpqether.c b/drivers/net/hamradio/bpqether.c
index 44b183b58f50..d509b371a562 100644
--- a/drivers/net/hamradio/bpqether.c
+++ b/drivers/net/hamradio/bpqether.c
@@ -97,7 +97,7 @@ static char bpq_eth_addr[6];
97static int bpq_rcv(struct sk_buff *, struct net_device *, struct packet_type *, struct net_device *); 97static int bpq_rcv(struct sk_buff *, struct net_device *, struct packet_type *, struct net_device *);
98static int bpq_device_event(struct notifier_block *, unsigned long, void *); 98static int bpq_device_event(struct notifier_block *, unsigned long, void *);
99 99
100static struct packet_type bpq_packet_type = { 100static struct packet_type bpq_packet_type __read_mostly = {
101 .type = cpu_to_be16(ETH_P_BPQ), 101 .type = cpu_to_be16(ETH_P_BPQ),
102 .func = bpq_rcv, 102 .func = bpq_rcv,
103}; 103};
diff --git a/drivers/net/pppoe.c b/drivers/net/pppoe.c
index e2968f084439..f0031f1f97e5 100644
--- a/drivers/net/pppoe.c
+++ b/drivers/net/pppoe.c
@@ -513,17 +513,17 @@ out:
513 return NET_RX_SUCCESS; /* Lies... :-) */ 513 return NET_RX_SUCCESS; /* Lies... :-) */
514} 514}
515 515
516static struct packet_type pppoes_ptype = { 516static struct packet_type pppoes_ptype __read_mostly = {
517 .type = cpu_to_be16(ETH_P_PPP_SES), 517 .type = cpu_to_be16(ETH_P_PPP_SES),
518 .func = pppoe_rcv, 518 .func = pppoe_rcv,
519}; 519};
520 520
521static struct packet_type pppoed_ptype = { 521static struct packet_type pppoed_ptype __read_mostly = {
522 .type = cpu_to_be16(ETH_P_PPP_DISC), 522 .type = cpu_to_be16(ETH_P_PPP_DISC),
523 .func = pppoe_disc_rcv, 523 .func = pppoe_disc_rcv,
524}; 524};
525 525
526static struct proto pppoe_sk_proto = { 526static struct proto pppoe_sk_proto __read_mostly = {
527 .name = "PPPOE", 527 .name = "PPPOE",
528 .owner = THIS_MODULE, 528 .owner = THIS_MODULE,
529 .obj_size = sizeof(struct pppox_sock), 529 .obj_size = sizeof(struct pppox_sock),
diff --git a/drivers/net/wan/hdlc.c b/drivers/net/wan/hdlc.c
index 5ce437205558..7596eae1b35c 100644
--- a/drivers/net/wan/hdlc.c
+++ b/drivers/net/wan/hdlc.c
@@ -348,7 +348,7 @@ EXPORT_SYMBOL(unregister_hdlc_protocol);
348EXPORT_SYMBOL(attach_hdlc_protocol); 348EXPORT_SYMBOL(attach_hdlc_protocol);
349EXPORT_SYMBOL(detach_hdlc_protocol); 349EXPORT_SYMBOL(detach_hdlc_protocol);
350 350
351static struct packet_type hdlc_packet_type = { 351static struct packet_type hdlc_packet_type __read_mostly = {
352 .type = cpu_to_be16(ETH_P_HDLC), 352 .type = cpu_to_be16(ETH_P_HDLC),
353 .func = hdlc_rcv, 353 .func = hdlc_rcv,
354}; 354};
diff --git a/drivers/net/wan/lapbether.c b/drivers/net/wan/lapbether.c
index 96d9eda40894..f85ca1b27f9a 100644
--- a/drivers/net/wan/lapbether.c
+++ b/drivers/net/wan/lapbether.c
@@ -421,7 +421,7 @@ static int lapbeth_device_event(struct notifier_block *this,
421 421
422/* ------------------------------------------------------------------------ */ 422/* ------------------------------------------------------------------------ */
423 423
424static struct packet_type lapbeth_packet_type = { 424static struct packet_type lapbeth_packet_type __read_mostly = {
425 .type = cpu_to_be16(ETH_P_DEC), 425 .type = cpu_to_be16(ETH_P_DEC),
426 .func = lapbeth_rcv, 426 .func = lapbeth_rcv,
427}; 427};
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index 4163ea65bf41..2b7390e377b3 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
@@ -51,7 +51,7 @@ const char vlan_version[] = DRV_VERSION;
51static const char vlan_copyright[] = "Ben Greear <greearb@candelatech.com>"; 51static const char vlan_copyright[] = "Ben Greear <greearb@candelatech.com>";
52static const char vlan_buggyright[] = "David S. Miller <davem@redhat.com>"; 52static const char vlan_buggyright[] = "David S. Miller <davem@redhat.com>";
53 53
54static struct packet_type vlan_packet_type = { 54static struct packet_type vlan_packet_type __read_mostly = {
55 .type = cpu_to_be16(ETH_P_8021Q), 55 .type = cpu_to_be16(ETH_P_8021Q),
56 .func = vlan_skb_recv, /* VLAN receive method */ 56 .func = vlan_skb_recv, /* VLAN receive method */
57}; 57};
diff --git a/net/appletalk/ddp.c b/net/appletalk/ddp.c
index cf05c43cba52..3e0671df3a3f 100644
--- a/net/appletalk/ddp.c
+++ b/net/appletalk/ddp.c
@@ -1860,12 +1860,12 @@ static struct notifier_block ddp_notifier = {
1860 .notifier_call = ddp_device_event, 1860 .notifier_call = ddp_device_event,
1861}; 1861};
1862 1862
1863static struct packet_type ltalk_packet_type = { 1863static struct packet_type ltalk_packet_type __read_mostly = {
1864 .type = cpu_to_be16(ETH_P_LOCALTALK), 1864 .type = cpu_to_be16(ETH_P_LOCALTALK),
1865 .func = ltalk_rcv, 1865 .func = ltalk_rcv,
1866}; 1866};
1867 1867
1868static struct packet_type ppptalk_packet_type = { 1868static struct packet_type ppptalk_packet_type __read_mostly = {
1869 .type = cpu_to_be16(ETH_P_PPPTALK), 1869 .type = cpu_to_be16(ETH_P_PPPTALK),
1870 .func = atalk_rcv, 1870 .func = atalk_rcv,
1871}; 1871};
diff --git a/net/ax25/af_ax25.c b/net/ax25/af_ax25.c
index d127fd3ba5c6..8f8f63ff6566 100644
--- a/net/ax25/af_ax25.c
+++ b/net/ax25/af_ax25.c
@@ -1985,9 +1985,8 @@ static const struct proto_ops ax25_proto_ops = {
1985/* 1985/*
1986 * Called by socket.c on kernel start up 1986 * Called by socket.c on kernel start up
1987 */ 1987 */
1988static struct packet_type ax25_packet_type = { 1988static struct packet_type ax25_packet_type __read_mostly = {
1989 .type = cpu_to_be16(ETH_P_AX25), 1989 .type = cpu_to_be16(ETH_P_AX25),
1990 .dev = NULL, /* All devices */
1991 .func = ax25_kiss_rcv, 1990 .func = ax25_kiss_rcv,
1992}; 1991};
1993 1992
diff --git a/net/decnet/af_decnet.c b/net/decnet/af_decnet.c
index ec233b64f853..9647d911f916 100644
--- a/net/decnet/af_decnet.c
+++ b/net/decnet/af_decnet.c
@@ -2112,9 +2112,8 @@ static struct notifier_block dn_dev_notifier = {
2112 2112
2113extern int dn_route_rcv(struct sk_buff *, struct net_device *, struct packet_type *, struct net_device *); 2113extern int dn_route_rcv(struct sk_buff *, struct net_device *, struct packet_type *, struct net_device *);
2114 2114
2115static struct packet_type dn_dix_packet_type = { 2115static struct packet_type dn_dix_packet_type __read_mostly = {
2116 .type = cpu_to_be16(ETH_P_DNA_RT), 2116 .type = cpu_to_be16(ETH_P_DNA_RT),
2117 .dev = NULL, /* All devices */
2118 .func = dn_route_rcv, 2117 .func = dn_route_rcv,
2119}; 2118};
2120 2119
diff --git a/net/dsa/tag_dsa.c b/net/dsa/tag_dsa.c
index 63e532a69fdb..0b8a91ddff44 100644
--- a/net/dsa/tag_dsa.c
+++ b/net/dsa/tag_dsa.c
@@ -175,7 +175,7 @@ out:
175 return 0; 175 return 0;
176} 176}
177 177
178static struct packet_type dsa_packet_type = { 178static struct packet_type dsa_packet_type __read_mostly = {
179 .type = cpu_to_be16(ETH_P_DSA), 179 .type = cpu_to_be16(ETH_P_DSA),
180 .func = dsa_rcv, 180 .func = dsa_rcv,
181}; 181};
diff --git a/net/dsa/tag_edsa.c b/net/dsa/tag_edsa.c
index 6197f9a7ef42..16fcb6d196d4 100644
--- a/net/dsa/tag_edsa.c
+++ b/net/dsa/tag_edsa.c
@@ -194,7 +194,7 @@ out:
194 return 0; 194 return 0;
195} 195}
196 196
197static struct packet_type edsa_packet_type = { 197static struct packet_type edsa_packet_type __read_mostly = {
198 .type = cpu_to_be16(ETH_P_EDSA), 198 .type = cpu_to_be16(ETH_P_EDSA),
199 .func = edsa_rcv, 199 .func = edsa_rcv,
200}; 200};
diff --git a/net/dsa/tag_trailer.c b/net/dsa/tag_trailer.c
index d7e7f424ff0c..a6d959da6784 100644
--- a/net/dsa/tag_trailer.c
+++ b/net/dsa/tag_trailer.c
@@ -111,7 +111,7 @@ out:
111 return 0; 111 return 0;
112} 112}
113 113
114static struct packet_type trailer_packet_type = { 114static struct packet_type trailer_packet_type __read_mostly = {
115 .type = cpu_to_be16(ETH_P_TRAILER), 115 .type = cpu_to_be16(ETH_P_TRAILER),
116 .func = trailer_rcv, 116 .func = trailer_rcv,
117}; 117};
diff --git a/net/econet/af_econet.c b/net/econet/af_econet.c
index 7bf35582f656..6f479fa522c3 100644
--- a/net/econet/af_econet.c
+++ b/net/econet/af_econet.c
@@ -1102,7 +1102,7 @@ drop:
1102 return NET_RX_DROP; 1102 return NET_RX_DROP;
1103} 1103}
1104 1104
1105static struct packet_type econet_packet_type = { 1105static struct packet_type econet_packet_type __read_mostly = {
1106 .type = cpu_to_be16(ETH_P_ECONET), 1106 .type = cpu_to_be16(ETH_P_ECONET),
1107 .func = econet_rcv, 1107 .func = econet_rcv,
1108}; 1108};
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
index 627be4dc7fb0..d5aaabbb7cb3 100644
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
@@ -1500,7 +1500,7 @@ static int ipv4_proc_init(void);
1500 * IP protocol layer initialiser 1500 * IP protocol layer initialiser
1501 */ 1501 */
1502 1502
1503static struct packet_type ip_packet_type = { 1503static struct packet_type ip_packet_type __read_mostly = {
1504 .type = cpu_to_be16(ETH_P_IP), 1504 .type = cpu_to_be16(ETH_P_IP),
1505 .func = ip_rcv, 1505 .func = ip_rcv,
1506 .gso_send_check = inet_gso_send_check, 1506 .gso_send_check = inet_gso_send_check,
diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c
index 3f6b7354699b..3d67d1ffed77 100644
--- a/net/ipv4/arp.c
+++ b/net/ipv4/arp.c
@@ -1225,7 +1225,7 @@ void arp_ifdown(struct net_device *dev)
1225 * Called once on startup. 1225 * Called once on startup.
1226 */ 1226 */
1227 1227
1228static struct packet_type arp_packet_type = { 1228static struct packet_type arp_packet_type __read_mostly = {
1229 .type = cpu_to_be16(ETH_P_ARP), 1229 .type = cpu_to_be16(ETH_P_ARP),
1230 .func = arp_rcv, 1230 .func = arp_rcv,
1231}; 1231};
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
index 57b07da1212a..3e2ddfaee81a 100644
--- a/net/ipv6/af_inet6.c
+++ b/net/ipv6/af_inet6.c
@@ -893,7 +893,7 @@ out_unlock:
893 return err; 893 return err;
894} 894}
895 895
896static struct packet_type ipv6_packet_type = { 896static struct packet_type ipv6_packet_type __read_mostly = {
897 .type = cpu_to_be16(ETH_P_IPV6), 897 .type = cpu_to_be16(ETH_P_IPV6),
898 .func = ipv6_rcv, 898 .func = ipv6_rcv,
899 .gso_send_check = ipv6_gso_send_check, 899 .gso_send_check = ipv6_gso_send_check,
diff --git a/net/ipx/af_ipx.c b/net/ipx/af_ipx.c
index 43d0ffc6d565..30bd322b7985 100644
--- a/net/ipx/af_ipx.c
+++ b/net/ipx/af_ipx.c
@@ -1958,12 +1958,12 @@ static const struct proto_ops SOCKOPS_WRAPPED(ipx_dgram_ops) = {
1958 1958
1959SOCKOPS_WRAP(ipx_dgram, PF_IPX); 1959SOCKOPS_WRAP(ipx_dgram, PF_IPX);
1960 1960
1961static struct packet_type ipx_8023_packet_type = { 1961static struct packet_type ipx_8023_packet_type __read_mostly = {
1962 .type = cpu_to_be16(ETH_P_802_3), 1962 .type = cpu_to_be16(ETH_P_802_3),
1963 .func = ipx_rcv, 1963 .func = ipx_rcv,
1964}; 1964};
1965 1965
1966static struct packet_type ipx_dix_packet_type = { 1966static struct packet_type ipx_dix_packet_type __read_mostly = {
1967 .type = cpu_to_be16(ETH_P_IPX), 1967 .type = cpu_to_be16(ETH_P_IPX),
1968 .func = ipx_rcv, 1968 .func = ipx_rcv,
1969}; 1969};
diff --git a/net/irda/irmod.c b/net/irda/irmod.c
index 1bb607f2f5c7..303a68d92731 100644
--- a/net/irda/irmod.c
+++ b/net/irda/irmod.c
@@ -55,7 +55,7 @@ EXPORT_SYMBOL(irda_debug);
55/* Packet type handler. 55/* Packet type handler.
56 * Tell the kernel how IrDA packets should be handled. 56 * Tell the kernel how IrDA packets should be handled.
57 */ 57 */
58static struct packet_type irda_packet_type = { 58static struct packet_type irda_packet_type __read_mostly = {
59 .type = cpu_to_be16(ETH_P_IRDA), 59 .type = cpu_to_be16(ETH_P_IRDA),
60 .func = irlap_driver_rcv, /* Packet type handler irlap_frame.c */ 60 .func = irlap_driver_rcv, /* Packet type handler irlap_frame.c */
61}; 61};
diff --git a/net/llc/llc_core.c b/net/llc/llc_core.c
index a7fe1adc378d..ff4c0ab96a69 100644
--- a/net/llc/llc_core.c
+++ b/net/llc/llc_core.c
@@ -147,12 +147,12 @@ void llc_sap_close(struct llc_sap *sap)
147 kfree(sap); 147 kfree(sap);
148} 148}
149 149
150static struct packet_type llc_packet_type = { 150static struct packet_type llc_packet_type __read_mostly = {
151 .type = cpu_to_be16(ETH_P_802_2), 151 .type = cpu_to_be16(ETH_P_802_2),
152 .func = llc_rcv, 152 .func = llc_rcv,
153}; 153};
154 154
155static struct packet_type llc_tr_packet_type = { 155static struct packet_type llc_tr_packet_type __read_mostly = {
156 .type = cpu_to_be16(ETH_P_TR_802_2), 156 .type = cpu_to_be16(ETH_P_TR_802_2),
157 .func = llc_rcv, 157 .func = llc_rcv,
158}; 158};
diff --git a/net/phonet/af_phonet.c b/net/phonet/af_phonet.c
index 81795ea87794..a662e62a99cf 100644
--- a/net/phonet/af_phonet.c
+++ b/net/phonet/af_phonet.c
@@ -382,9 +382,8 @@ out:
382 return NET_RX_DROP; 382 return NET_RX_DROP;
383} 383}
384 384
385static struct packet_type phonet_packet_type = { 385static struct packet_type phonet_packet_type __read_mostly = {
386 .type = cpu_to_be16(ETH_P_PHONET), 386 .type = cpu_to_be16(ETH_P_PHONET),
387 .dev = NULL,
388 .func = phonet_rcv, 387 .func = phonet_rcv,
389}; 388};
390 389
diff --git a/net/x25/af_x25.c b/net/x25/af_x25.c
index 8f76f4009c24..1000e9a26fdb 100644
--- a/net/x25/af_x25.c
+++ b/net/x25/af_x25.c
@@ -1608,7 +1608,7 @@ static const struct proto_ops SOCKOPS_WRAPPED(x25_proto_ops) = {
1608 1608
1609SOCKOPS_WRAP(x25_proto, AF_X25); 1609SOCKOPS_WRAP(x25_proto, AF_X25);
1610 1610
1611static struct packet_type x25_packet_type = { 1611static struct packet_type x25_packet_type __read_mostly = {
1612 .type = cpu_to_be16(ETH_P_X25), 1612 .type = cpu_to_be16(ETH_P_X25),
1613 .func = x25_lapb_receive_frame, 1613 .func = x25_lapb_receive_frame,
1614}; 1614};