Heho, I just tested around with the patch; Good news: Certainly my builds are being executed. Also, if I patch the old code to have a MAX_MTU <= the max MTU on my path, throughput is ok.
Bad news: Something is wrong with getting the MSS in the patch you shared. When enabling DPRINT, values are off (sent MSS vs. printed MSS): 600 2060 800 2308 1000 2316 1023 2307 1200 3076 1400 3340 (most likely clamped to 1320) Fiddling around a bit more, I found txdw0 printed earlier in the stack as hex (sent MSS, txdw0): 769 900502f5 1000 900503dc 1280 900504f4 1281 900504f5 1301 90050509 1317 90050519 1320 9005051c This maps rather well to: MSS = txdw0 - 2416246772 MSS = txdw0 - 9004FFF4 Sadly, my C is 'non-existent' and it is kind-of 4AM, so also not in the brainspace to fill those gaps. But if one of you could look at the patch again, that would be nice. Otherwise, I should have some brainspace for this tomorrow night (UTC) again. With best regards, Tobias