ACK/cmnt: [SRU bionic PATCH 1/2] ipv6: constify rt6_nexthop()

Kleber Souza kleber.souza at canonical.com
Fri Sep 27 14:52:54 UTC 2019


On 06.09.19 11:54, Nicolas Dichtel wrote:
> BugLink: https://bugs.launchpad.net/bugs/1834465
> 
> There is no functional change in this patch, it only prepares the next one.
> 
> rt6_nexthop() will be used by ip6_dst_lookup_neigh(), which uses const
> variables.
> 
> Signed-off-by: Nicolas Dichtel <nicolas.dichtel at 6wind.com>
> Reported-by: kbuild test robot <lkp at intel.com>
> Acked-by: Nick Desaulniers <ndesaulniers at google.com>
> Signed-off-by: David S. Miller <davem at davemloft.net>
> (cherry picked from commit 9b1c1ef13b35fa35051b635ca9fbda39fe6bbc70)
> Signed-off-by: Nicolas Dichtel <nicolas.dichtel at 6wind.com>

Thank you for the backport.

Both patches had to be modified for the Bionic 4.15 kernel, so they need
to have

(backported from ...)

instead of

(cherry picked from ...).

Otherwise they look good.

Acked-by: Kleber Sacilotto de Souza <kleber.souza at canonical.com>

> ---
>  drivers/net/vrf.c       | 2 +-
>  include/net/ip6_route.h | 4 ++--
>  net/bluetooth/6lowpan.c | 4 ++--
>  net/ipv6/ip6_output.c   | 2 +-
>  4 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
> index ac40924fe437..f24f135dd537 100644
> --- a/drivers/net/vrf.c
> +++ b/drivers/net/vrf.c
> @@ -351,8 +351,8 @@ static int vrf_finish_output6(struct net *net, struct sock *sk,
>  {
>  	struct dst_entry *dst = skb_dst(skb);
>  	struct net_device *dev = dst->dev;
> +	const struct in6_addr *nexthop;
>  	struct neighbour *neigh;
> -	struct in6_addr *nexthop;
>  	int ret;
>  
>  	nf_reset(skb);
> diff --git a/include/net/ip6_route.h b/include/net/ip6_route.h
> index 5c9732fdbecf..ba85be3f4f71 100644
> --- a/include/net/ip6_route.h
> +++ b/include/net/ip6_route.h
> @@ -242,8 +242,8 @@ static inline bool ip6_sk_ignore_df(const struct sock *sk)
>  	       inet6_sk(sk)->pmtudisc == IPV6_PMTUDISC_OMIT;
>  }
>  
> -static inline struct in6_addr *rt6_nexthop(struct rt6_info *rt,
> -					   struct in6_addr *daddr)
> +static inline const struct in6_addr *rt6_nexthop(const struct rt6_info *rt,
> +						 const struct in6_addr *daddr)
>  {
>  	if (rt->rt6i_flags & RTF_GATEWAY)
>  		return &rt->rt6i_gateway;
> diff --git a/net/bluetooth/6lowpan.c b/net/bluetooth/6lowpan.c
> index 4e2576fc0c59..a28e3fdb3e5b 100644
> --- a/net/bluetooth/6lowpan.c
> +++ b/net/bluetooth/6lowpan.c
> @@ -167,10 +167,10 @@ static inline struct lowpan_peer *peer_lookup_dst(struct lowpan_btle_dev *dev,
>  						  struct in6_addr *daddr,
>  						  struct sk_buff *skb)
>  {
> -	struct lowpan_peer *peer;
> -	struct in6_addr *nexthop;
>  	struct rt6_info *rt = (struct rt6_info *)skb_dst(skb);
>  	int count = atomic_read(&dev->peer_count);
> +	const struct in6_addr *nexthop;
> +	struct lowpan_peer *peer;
>  
>  	BT_DBG("peers %d addr %pI6c rt %p", count, daddr, rt);
>  
> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
> index 7ca8264cbdf9..11789f2bab90 100644
> --- a/net/ipv6/ip6_output.c
> +++ b/net/ipv6/ip6_output.c
> @@ -63,8 +63,8 @@ static int ip6_finish_output2(struct net *net, struct sock *sk, struct sk_buff *
>  {
>  	struct dst_entry *dst = skb_dst(skb);
>  	struct net_device *dev = dst->dev;
> +	const struct in6_addr *nexthop;
>  	struct neighbour *neigh;
> -	struct in6_addr *nexthop;
>  	int ret;
>  
>  	if (ipv6_addr_is_multicast(&ipv6_hdr(skb)->daddr)) {
> 




More information about the kernel-team mailing list