On 02/24/2019 08:12 PM, Hangbin Liu wrote:
> ipv6_mod_enabled() is more safe and gentle to check if ipv6 is disabled
> at running time.
>
Why is it better exactly ?
IPv6 can be enabled on the host, but disabled per device
/proc/sys/net/ipv6/conf/{name}/disable_ipv6
> Fixes: 173656accaf5 ("sit: check if IPv6 enabled before calling
> ip6_err_gen_icmpv6_unreach()")
> Signed-off-by: Hangbin Liu <liuhang...@gmail.com>
> ---
> net/ipv6/sit.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
> index e8a1dabef803..eea1f19985a7 100644
> --- a/net/ipv6/sit.c
> +++ b/net/ipv6/sit.c
> @@ -546,7 +546,7 @@ static int ipip6_err(struct sk_buff *skb, u32 info)
> }
>
> err = 0;
> - if (__in6_dev_get(skb->dev) &&
> + if (ipv6_mod_enabled() &&
> !ip6_err_gen_icmpv6_unreach(skb, iph->ihl * 4, type, data_len))
> goto out;
>
>