The following reply was made to PR kern/165296; it has been noted by GNATS.

From: [email protected]
To: <[email protected]>,
        <[email protected]>
Cc:  
Subject: Re: kern/165296: Fix EVL_APPLY_VLID, update EVL_APPLY_PRI macro
Date: Mon, 20 Feb 2012 03:16:00 +0900

 This is a multi-part message in MIME format.
 
 ------=_NextPart_000_0046_01CCEF7D.FB03C320
 Content-Type: text/plain;
        charset="US-ASCII"
 Content-Transfer-Encoding: 7bit
 
 -             (m)->m_pkthdr.ether_vtag |= (((pri) & 7) << 1);            \
 +             (m)->m_pkthdr.ether_vtag |= (((pri) & 7) << 13);           \
 
 ------=_NextPart_000_0046_01CCEF7D.FB03C320
 Content-Type: application/octet-stream;
        name="if_vlan_var.h.patch"
 Content-Transfer-Encoding: quoted-printable
 Content-Disposition: attachment;
        filename="if_vlan_var.h.patch"
 
 --- ./if_vlan_var.h.orig       2011-09-23 09:51:37.000000000 +0900=0A=
 +++ ./if_vlan_var.h    2012-02-20 03:11:20.000000000 +0900=0A=
 @@ -52,27 +52,24 @@=0A=
  #define EVL_APPLY_VLID(m, vlid)                                               
\=0A=
        do {                                                            \=0A=
                if ((m)->m_flags & M_VLANTAG) {                         \=0A=
 -                      (m)->m_pkthdr.ether_vtag &=3D EVL_VLID_MASK;    \=0A=
 -                      (m)->m_pkthdr.ether_vtag |=3D (vlid);           \=0A=
 +                      (m)->m_pkthdr.ether_vtag &=3D ~EVL_VLID_MASK;   \=0A=
                } else {                                                \=0A=
 -                      (m)->m_pkthdr.ether_vtag =3D (vlid);            \=0A=
 +                      (m)->m_pkthdr.ether_vtag =3D 0;                 \=0A=
                        (m)->m_flags |=3D M_VLANTAG;                    \=0A=
                }                                                       \=0A=
 +              (m)->m_pkthdr.ether_vtag |=3D ((vlid) & EVL_VLID_MASK); \=0A=
        } while (0)=0A=
  =0A=
  /* Set the priority ID in an mbuf packet header non-destructively. */=0A=
  #define EVL_APPLY_PRI(m, pri)                                         \=0A=
        do {                                                            \=0A=
                if ((m)->m_flags & M_VLANTAG) {                         \=0A=
 -                      uint16_t __vlantag =3D (m)->m_pkthdr.ether_vtag;        
\=0A=
 -                      (m)->m_pkthdr.ether_vtag |=3D EVL_MAKETAG(      \=0A=
 -                          EVL_VLANOFTAG(__vlantag), (pri),            \=0A=
 -                          EVL_CFIOFTAG(__vlantag));                   \=0A=
 +                      (m)->m_pkthdr.ether_vtag &=3D ~EVL_PRI_MASK;    \=0A=
                } else {                                                \=0A=
 -                      (m)->m_pkthdr.ether_vtag =3D                    \=0A=
 -                          EVL_MAKETAG(0, (pri), 0);                   \=0A=
 +                      (m)->m_pkthdr.ether_vtag =3D 0;                 \=0A=
                        (m)->m_flags |=3D M_VLANTAG;                    \=0A=
                }                                                       \=0A=
 +              (m)->m_pkthdr.ether_vtag |=3D (((pri) & 7) << 13);      \=0A=
        } while (0)=0A=
  =0A=
  /* sysctl(3) tags, for compatibility purposes */=0A=
 
 ------=_NextPart_000_0046_01CCEF7D.FB03C320--
 
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"

Reply via email to