Merge branch 'inet6_protocol-const'
authorDavid S. Miller <davem@davemloft.net>
Sat, 29 Jul 2017 01:52:57 +0000 (18:52 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 29 Jul 2017 01:52:57 +0000 (18:52 -0700)
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: David S. Miller <davem@davemloft.net>

Trivial merge