I have an ipv4 reassembling issue using the latest Kernel (4.2.3) in an nios2 environment. I first noticed that issue when sending UDP-Pakets from an Host PC to my device. Each packet has a payload of 4096 Byte. Due to the MTU of 1500 Byte each packet will be split into three ip-packets. Approximately 1 of 200 Packets were not correctly reassembled by the Kernel, so they cannot be received within user-space. The command nstat says, that there are reassembling errors due to timeout, but at least in wireshark all packets are correctly displayed. Sometime the kernel issues a icmp-messages, saying that there was a timeout during ip reassembling. I fir9st thought that it might be a performance problem, so I increased the time between the packets to about one packet per 500 ms but without success. Then I decided to reduce the payload to 1024 Byte, because it might be a buffer (or TSE FIFO) problem. Now all packets are send into one ipv4 packet and there is nothing lost on the receiver side, but when I reduced the MTU of the host from 1500 to 800 byte (each datagram will be split into two packets now) the problem accurse again! So this might be a reassembling issue.
Does that kernel have this commit,dbd3393c5. If not try a newer kernel and see if that fixes the problem.