According to comment here: https://github.com/microsoft/NetAdapter-Cx-Driver-Samples/blob/release_2004/RtEthSample/txqueue.cpp#L292 the last fragment should be checked
but at https://github.com/microsoft/NetAdapter-Cx-Driver-Samples/blob/release_2004/RtEthSample/txqueue.cpp#L290C6-L290C6 it's checking the first fragment.
On a similar driver I've written for RTL8168/RTL8125, this bug causes the Tx Queue to randomly stop sending packets. Fixing it to use the last fragment (like so coolstar/if_re-win@14e3319) seems to fix the issue and get more stable iperf transfers.
Still have more testing to do, but seems to be stable so far.
According to comment here: https://github.com/microsoft/NetAdapter-Cx-Driver-Samples/blob/release_2004/RtEthSample/txqueue.cpp#L292 the last fragment should be checked
but at https://github.com/microsoft/NetAdapter-Cx-Driver-Samples/blob/release_2004/RtEthSample/txqueue.cpp#L290C6-L290C6 it's checking the first fragment.
On a similar driver I've written for RTL8168/RTL8125, this bug causes the Tx Queue to randomly stop sending packets. Fixing it to use the last fragment (like so coolstar/if_re-win@14e3319) seems to fix the issue and get more stable iperf transfers.
Still have more testing to do, but seems to be stable so far.