net: mpls: Make for_nexthops iterator const
authorBenjamin Poirier <bpoirier@nvidia.com>
Mon, 29 Nov 2021 06:23:16 +0000 (15:23 +0900)
committerDavid S. Miller <davem@davemloft.net>
Mon, 29 Nov 2021 12:46:52 +0000 (12:46 +0000)
There are separate for_nexthops and change_nexthops iterators. The
for_nexthops variant should use const.

Signed-off-by: Benjamin Poirier <bpoirier@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mpls/af_mpls.c
net/mpls/internal.h

index ffeb2df..9fab40a 100644 (file)
@@ -230,8 +230,8 @@ static struct mpls_nh *mpls_get_nexthop(struct mpls_route *rt, u8 index)
  * Since those fields can change at any moment, use READ_ONCE to
  * access both.
  */
-static struct mpls_nh *mpls_select_multipath(struct mpls_route *rt,
-                                            struct sk_buff *skb)
+static const struct mpls_nh *mpls_select_multipath(struct mpls_route *rt,
+                                                  struct sk_buff *skb)
 {
        u32 hash = 0;
        int nh_index = 0;
@@ -343,8 +343,8 @@ static int mpls_forward(struct sk_buff *skb, struct net_device *dev,
 {
        struct net *net = dev_net(dev);
        struct mpls_shim_hdr *hdr;
+       const struct mpls_nh *nh;
        struct mpls_route *rt;
-       struct mpls_nh *nh;
        struct mpls_entry_decoded dec;
        struct net_device *out_dev;
        struct mpls_dev *out_mdev;
@@ -2333,12 +2333,12 @@ static int mpls_getroute(struct sk_buff *in_skb, struct nlmsghdr *in_nlh,
        u32 labels[MAX_NEW_LABELS];
        struct mpls_shim_hdr *hdr;
        unsigned int hdr_size = 0;
+       const struct mpls_nh *nh;
        struct net_device *dev;
        struct mpls_route *rt;
        struct rtmsg *rtm, *r;
        struct nlmsghdr *nlh;
        struct sk_buff *skb;
-       struct mpls_nh *nh;
        u8 n_labels;
        int err;
 
index 218138f..56c5cad 100644 (file)
@@ -158,7 +158,7 @@ struct mpls_route { /* next hop label forwarding entry */
 };
 
 #define for_nexthops(rt) {                                             \
-       int nhsel; struct mpls_nh *nh;                                  \
+       int nhsel; const struct mpls_nh *nh;                            \
        for (nhsel = 0, nh = (rt)->rt_nh;                               \
             nhsel < (rt)->rt_nhn;                                      \
             nh = (void *)nh + (rt)->rt_nh_size, nhsel++)