> > +struct ndis_pkt_vlan_info {
> > +             union {
> > +                             struct {
> > +                                             uint32_t pri:3; /* User 
> > Priority */
> > +                                             uint32_t cfi:1; /* Canonical 
> > Format ID / DEI */
> > +                                             uint32_t vlanid:12; /* VLAN 
> > ID */
> > +                                             uint32_t reserved:16;
> > +                             };
> > +                             uint32_t value;
> > +             };
> > +};
> 
> Order of union elements is byte order sensitive, granted Hyper-V/Azure 
> doesn't do
> big-endian.

Hyper-V/Azure uses the same endian for host and guest. They are all in little 
endian on X86 and ARM. If it uses big endian, this bug will not show up.

> 
> Most of this driver came from FreeBSD. Did you look there to make sure naming 
> is
> the same. I.e would be good to be able to have same code in both places as 
> much
> as possible.

Reply via email to