Commit bdb0effc authored by David S. Miller's avatar David S. Miller

Merge branch 'inet6_protocol-const'

Julia Lawall says:

====================
constify inet6_protocol structures

The inet6_protocol structure is only passed as the first argument to
inet6_add_protocol or inet6_del_protocol, both of which are declared as
const.  Thus the inet6_protocol structure itself can be const.

Done with the help of Coccinelle.

// <smpl>
@r disable optional_qualifier@
identifier i;
position p;
@@

static struct inet6_protocol i@p = { ... };

@ok1@
identifier r.i;
expression e1;
position p;
@@

 \(inet6_add_protocol\|inet6_del_protocol\)(&i@p,...)

@bad@
position p != {r.p,ok1.p};
identifier r.i;
struct inet6_protocol e;
@@

e@i@p

@depends on !bad disable optional_qualifier@
identifier r.i;
@@

static
+const
 struct inet6_protocol i = { ... };
// </smpl>
====================
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 1812bc43 d04916a4
...@@ -1080,7 +1080,7 @@ static void ip6gre_fb_tunnel_init(struct net_device *dev) ...@@ -1080,7 +1080,7 @@ static void ip6gre_fb_tunnel_init(struct net_device *dev)
} }
static struct inet6_protocol ip6gre_protocol __read_mostly = { static const struct inet6_protocol ip6gre_protocol = {
.handler = gre_rcv, .handler = gre_rcv,
.err_handler = ip6gre_err, .err_handler = ip6gre_err,
.flags = INET6_PROTO_NOPOLICY|INET6_PROTO_FINAL, .flags = INET6_PROTO_NOPOLICY|INET6_PROTO_FINAL,
......
...@@ -1945,7 +1945,7 @@ struct proto tcpv6_prot = { ...@@ -1945,7 +1945,7 @@ struct proto tcpv6_prot = {
.diag_destroy = tcp_abort, .diag_destroy = tcp_abort,
}; };
static struct inet6_protocol tcpv6_protocol = { static const struct inet6_protocol tcpv6_protocol = {
.early_demux = tcp_v6_early_demux, .early_demux = tcp_v6_early_demux,
.early_demux_handler = tcp_v6_early_demux, .early_demux_handler = tcp_v6_early_demux,
.handler = tcp_v6_rcv, .handler = tcp_v6_rcv,
......
...@@ -1448,7 +1448,7 @@ int compat_udpv6_getsockopt(struct sock *sk, int level, int optname, ...@@ -1448,7 +1448,7 @@ int compat_udpv6_getsockopt(struct sock *sk, int level, int optname,
} }
#endif #endif
static struct inet6_protocol udpv6_protocol = { static const struct inet6_protocol udpv6_protocol = {
.early_demux = udp_v6_early_demux, .early_demux = udp_v6_early_demux,
.early_demux_handler = udp_v6_early_demux, .early_demux_handler = udp_v6_early_demux,
.handler = udpv6_rcv, .handler = udpv6_rcv,
......
...@@ -788,7 +788,7 @@ static struct inet_protosw l2tp_ip6_protosw = { ...@@ -788,7 +788,7 @@ static struct inet_protosw l2tp_ip6_protosw = {
.ops = &l2tp_ip6_ops, .ops = &l2tp_ip6_ops,
}; };
static struct inet6_protocol l2tp_ip6_protocol __read_mostly = { static const struct inet6_protocol l2tp_ip6_protocol = {
.handler = l2tp_ip6_recv, .handler = l2tp_ip6_recv,
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment