Page MenuHomeFreeBSD

vmxnet3 crash when LRO is enabled
ClosedPublic

Authored by avg on May 23 2017, 4:23 PM.
Tags
None
Referenced Files
F168551736: D10874.id28772.diff
Fri, Aug 28, 11:55 PM
F168551350: D10874.id28718.diff
Fri, Aug 28, 11:53 PM
Unknown Object (File)
Wed, Aug 26, 1:53 PM
Unknown Object (File)
Tue, Aug 25, 11:42 PM
Unknown Object (File)
Mon, Aug 24, 11:07 PM
Unknown Object (File)
Mon, Aug 24, 11:04 PM
Unknown Object (File)
Wed, Aug 5, 4:27 AM
Unknown Object (File)
Jul 20 2026, 9:25 PM
Subscribers

Details

Summary

The crash can occur when all of the following conditions are true:

  • a packet consists of multiple segements (requires LRO enabled)
  • there has been a failure to allocate an mbuf for the packet and the packet has to be dropped
  • a host (vmware) still owned at least one segment of the packet, so the driver had to wait for another interrupt to proceed to discarding the remaning segment(s)

The work was sponsored by Panzura who run into the problem.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 9458
Build 9910: arc lint + arc unit

Event Timeline

@rstone this is based on the discussion that we had on the IRC and the suggestion you made.

This revision is now accepted and ready to land.May 24 2017, 7:23 PM
This revision was automatically updated to reflect the committed changes.