• H
    Revert "vxlan: fix tos value before xmit" · d666cfaf
    Hangbin Liu 提交于
    [ Upstream commit a0dced17ad9dc08b1b25e0065b54c97a318e6e8b ]
    
    This reverts commit 71130f29979c7c7956b040673e6b9d5643003176.
    
    In commit 71130f29979c ("vxlan: fix tos value before xmit") we want to
    make sure the tos value are filtered by RT_TOS() based on RFC1349.
    
           0     1     2     3     4     5     6     7
        +-----+-----+-----+-----+-----+-----+-----+-----+
        |   PRECEDENCE    |          TOS          | MBZ |
        +-----+-----+-----+-----+-----+-----+-----+-----+
    
    But RFC1349 has been obsoleted by RFC2474. The new DSCP field defined like
    
           0     1     2     3     4     5     6     7
        +-----+-----+-----+-----+-----+-----+-----+-----+
        |          DS FIELD, DSCP           | ECN FIELD |
        +-----+-----+-----+-----+-----+-----+-----+-----+
    
    So with
    
    IPTOS_TOS_MASK          0x1E
    RT_TOS(tos)		((tos)&IPTOS_TOS_MASK)
    
    the first 3 bits DSCP info will get lost.
    
    To take all the DSCP info in xmit, we should revert the patch and just push
    all tos bits to ip_tunnel_ecn_encap(), which will handling ECN field later.
    
    Fixes: 71130f29979c ("vxlan: fix tos value before xmit")
    Signed-off-by: NHangbin Liu <liuhangbin@gmail.com>
    Acked-by: NGuillaume Nault <gnault@redhat.com>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
    d666cfaf
vxlan.c 97.7 KB