From: Peter Dawson <peted...@gmail.com>
Date: Fri, 26 May 2017 06:35:18 +1000

> This fix addresses two problems in the way the DSCP field is formulated
>  on the encapsulating header of IPv6 tunnels.
> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=195661
> 
> 1) The IPv6 tunneling code was manipulating the DSCP field of the
>  encapsulating packet using the 32b flowlabel. Since the flowlabel is
>  only the lower 20b it was incorrect to assume that the upper 12b
>  containing the DSCP and ECN fields would remain intact when formulating
>  the encapsulating header. This fix handles the 'inherit' and
>  'fixed-value' DSCP cases explicitly using the extant dsfield u8 variable.
> 
> 2) The use of INET_ECN_encapsulate(0, dsfield) in ip6_tnl_xmit was
>  incorrect and resulted in the DSCP value always being set to 0.
> 
> Commit 90427ef5d2a4 ("ipv6: fix flow labels when the traffic class 
>  is non-0") caused the regression by masking out the flowlabel
>  which exposed the incorrect handling of the DSCP portion of the 
>  flowlabel in ip6_tunnel and ip6_gre.
> 
> Fixes: 90427ef5d2a4 ("ipv6: fix flow labels when the traffic class is non-0")
> Signed-off-by: Peter Dawson <peter.a.daw...@boeing.com>

Applied, thanks.

Reply via email to