svn commit: r305177 - head/sys/net

Oleg Bulyzhin oleg at FreeBSD.org
Thu May 18 14:09:58 UTC 2017


On Thu, Sep 01, 2016 at 06:32:35AM +0000, Sepherosa Ziehau wrote:
> Author: sephe
> Date: Thu Sep  1 06:32:35 2016
> New Revision: 305177
> URL: https://svnweb.freebsd.org/changeset/base/305177
> 
> Log:
>   net/vlan: Shift for pri is 13 (pri mask 0xe000) not 1.
>   
>   Reviewed by:	araujo, hps
>   MFC after:	1 week
>   Sponsored by:	Microsoft
>   Differential Revision:	https://reviews.freebsd.org/D7710
> 
> Modified:
>   head/sys/net/ethernet.h
> 
> Modified: head/sys/net/ethernet.h
> ==============================================================================
> --- head/sys/net/ethernet.h	Thu Sep  1 06:05:08 2016	(r305176)
> +++ head/sys/net/ethernet.h	Thu Sep  1 06:32:35 2016	(r305177)
> @@ -92,7 +92,7 @@ struct ether_vlan_header {
>  #define	EVL_PRIOFTAG(tag)	(((tag) >> 13) & 7)
>  #define	EVL_CFIOFTAG(tag)	(((tag) >> 12) & 1)
>  #define	EVL_MAKETAG(vlid, pri, cfi)					\
> -	((((((pri) & 7) << 1) | ((cfi) & 1)) << 12) | ((vlid) & EVL_VLID_MASK))
> +	((((((pri) & 7) << 13) | ((cfi) & 1)) << 12) | ((vlid) & EVL_VLID_MASK))
>  
>  /*
>   *  NOTE: 0x0000-0x05DC (0..1500) are generally IEEE 802.3 length fields.

Please revert this one. It's just plain wrong and previous one was ok.

If you care about readability it should be: 
((((pri) & 7) << 13) | (((cfi) & 1) << 12) | ((vlid) & EVL_VLID_MASK))

-- 
Oleg.

================================================================
=== Oleg Bulyzhin -- OBUL-RIPN -- OBUL-RIPE -- oleg at rinet.ru ===
================================================================



More information about the svn-src-all mailing list