Page MenuHomeFreeBSD

Fix ip_id concurrent access
ClosedPublic

Authored by fabient on Mar 25 2015, 5:21 PM.
Tags
None
Referenced Files
F168260740: D2141.id4409.diff
Thu, Aug 27, 6:02 AM
F168234541: D2141.diff
Thu, Aug 27, 2:25 AM
Unknown Object (File)
Tue, Aug 25, 7:55 PM
Unknown Object (File)
Tue, Aug 25, 5:20 AM
Unknown Object (File)
Tue, Aug 25, 12:46 AM
Unknown Object (File)
Thu, Aug 20, 12:11 AM
Unknown Object (File)
Tue, Aug 18, 6:16 PM
Unknown Object (File)
Sun, Aug 9, 5:39 PM
Subscribers
None

Details

Summary

On multi cpu systems, we may emit successive packets with the same id.

Test Plan

No performance penalty has been observed on a multi cpu system running IPsec benchmarks at high PPS rates.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

fabient retitled this revision from to Fix ip_id concurrent access.
fabient updated this object.
fabient edited the test plan for this revision. (Show Details)
fabient added reviewers: adrian, hselasky.
hselasky edited edge metadata.
hselasky added inline comments.
netinet/ip_var.h
317

Looks good. Maybe put a pair of ()'s around the return argument due to FreeBSD style.

This revision is now accepted and ready to land.Mar 25 2015, 10:02 PM
adrian edited edge metadata.

Looks fine as a first stage fix. Thanks!

Also uint32_t and uint16_t is more common than u_int32_t and u_int16_t .