Update: I'm changing my mind, and I believe Rick's TSO patch is fixing things (sorry). In looking at my notes, it's possible I had lagg on for those tests. lagg does seem to negate the TSO patch in my case.
kernel.10stable_basicTSO_65535/ - IP_MAXPACKET = 65535; - manually forced (no if statement) ifp->if_hw_tsomax = IP_MAXPACKET - (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN); - Verified on boot via printf that ifp->if_hw_tsomax = 65517 - Boot in a NON LAGG environment. ix0 only. ixgbe's printf is showing packets up to 65530. Haven't run long enough yet to see if anything will go over 65535 I have this tcpdump running to check packet size. tcpdump -ennvvXS -i ix0 greater 65518 I do expect to get packets over 65518, but I was just curious to see if any of them would go over 65535. Time will tell. In a separate test, If I enable lagg, we have LOTS of oversized packet problems. It looks like tsomax is definitely not making it through in if_lagg.c - Any recommendations there? I will eventually need lagg, as I'm sure will others. With dtrace, it's showing t_tsomax >= 65518. Shouldn't that not be happening? dtrace -n 'fbt::tcp_output:entry / args[0]->t_tsomax != 0 && args[0]->t_tsomax >= 65518 / { printf("unexpected tp->t_tsomax: %i\n", args[0]->t_tsomax); stack(); }' 6 31403 tcp_output:entry unexpected tp->t_tsomax: 65535 kernel`tcp_do_segment+0x2c99 kernel`tcp_input+0x11a2 kernel`ip_input+0xa2 kernel`netisr_dispatch_src+0x5e kernel`ether_demux+0x12a kernel`ether_nh_input+0x35f kernel`netisr_dispatch_src+0x5e kernel`bce_intr+0x765 kernel`intr_event_execute_handlers+0xab kernel`ithread_loop+0x96 kernel`fork_exit+0x9a kernel`0xffffffff80c75b2e 3 31403 tcp_output:entry unexpected tp->t_tsomax: 65535 kernel`tcp_do_segment+0x2c99 kernel`tcp_input+0x11a2 kernel`ip_input+0xa2 kernel`netisr_dispatch_src+0x5e kernel`ether_demux+0x12a kernel`ether_nh_input+0x35f kernel`netisr_dispatch_src+0x5e kernel`bce_intr+0x765 kernel`intr_event_execute_handlers+0xab kernel`ithread_loop+0x96 kernel`fork_exit+0x9a kernel`0xffffffff80c75b2e 6 31403 tcp_output:entry unexpected tp->t_tsomax: 65535 kernel`tcp_do_segment+0x2c99 kernel`tcp_input+0x11a2 kernel`ip_input+0xa2 kernel`netisr_dispatch_src+0x5e kernel`ether_demux+0x12a kernel`ether_nh_input+0x35f kernel`netisr_dispatch_src+0x5e kernel`bce_intr+0x765 kernel`intr_event_execute_handlers+0xab kernel`ithread_loop+0x96 kernel`fork_exit+0x9a kernel`0xffffffff80c75b2e 1 31403 tcp_output:entry unexpected tp->t_tsomax: 65535 kernel`tcp_do_segment+0x2c99 kernel`tcp_input+0x11a2 kernel`ip_input+0xa2 kernel`netisr_dispatch_src+0x5e kernel`ether_demux+0x12a kernel`ether_nh_input+0x35f kernel`netisr_dispatch_src+0x5e kernel`bce_intr+0x765 kernel`intr_event_execute_handlers+0xab kernel`ithread_loop+0x96 kernel`fork_exit+0x9a kernel`0xffffffff80c75b2e _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"