This commit integrates wpp tracing into builds higher than Vista as
Windows Vista requires much more configuration for wpp integration,
however, this integration may be introduced in the future.
The old style of Dprintf is still preserved by this commit and can be
enabled by disabling WPP tracing. This can be accomplished by commenting
the following line in WPPTrace.h:
Signed-off-by: Sameeh Jubran <[email protected]>
https://bugzilla.redhat.com/show_bug.cgi?id=1451978
The driver incorrectly parses packets containing VLAN/priority
tag and does not recognize IP packet properly. Due to another bug
in case the packet is not recognized as IP, it can report it as
packet with invalid checksum, causing OS to ignore it
Signed-off-by: Yuri Benditovich <[email protected]>
According to spec, on control interrupt if the bit VIRTIO_NET_S_ANNOUNCE
of status is set the driver should send gratuitous arp packet. In IPv6
the packet that should be sent is Neighbor Solicitation Message.
Signed-off-by: Sameeh Jubran <[email protected]>
On 64-bit CPUs, data can be added together four bytes at a time
with virtually the same number of instructions and still without
having to worry about the carry flag.
This commit significantly improves the performance of
RawCheckSumCalculator making it twice as fast on 64-bit. 32-bit
performance is unchanged.
In rare cases, in a packet that was identified as an IPv6 packet, the
total length of the IPv6 header (including the extended headers) could
be assumed to be longer than the length of the entire frame. Now, in
such cases the packet is classified as "not an IP packet", since such
an assumption is clearly wrong.
Signed-off-by: Leonid Bloch <[email protected]>
If the IP version in the IP header was not 4 or 6, until now the packet
was qualified as "untested". Now it is qualified as "not an IP packet".
Signed-off-by: Leonid Bloch <[email protected]>
Part of the effort to simplify ndis56common.h. This is the first step in
removing kdebugprint.h from ndis56common.h, adding include where needed and
moving some functions implementation from class definitions files.
Signed-off-by: Yan Vugenfirer <[email protected]>
Static driver verifier can benefit from __fallthrough annotations in case
statement without 'break', passing control to the next case statement.
Signed-off-by: Joseph Hindin <[email protected]>
This commit is a preparation for multiqueue implementation.
It itroduces changes driver's TX code structure the way
needed to allow creation of multiple independent transmit pathes.
Signed-off-by: Dmitry Fleytman <[email protected]>