Page MenuHomeFreeBSD

sfxge(4): ensure EvQ poll stops when abort is requested
ClosedPublic

Authored by arybchik on Nov 21 2018, 11:59 AM.
Tags
None
Referenced Files
F150123420: D18287.id51420.diff
Sun, Mar 29, 2:12 PM
Unknown Object (File)
Sat, Mar 28, 10:09 PM
Unknown Object (File)
Thu, Mar 19, 7:33 AM
Unknown Object (File)
Mon, Mar 16, 5:57 AM
Unknown Object (File)
Fri, Mar 13, 9:56 PM
Unknown Object (File)
Wed, Mar 4, 5:53 PM
Unknown Object (File)
Tue, Mar 3, 1:50 PM
Unknown Object (File)
Tue, Mar 3, 8:29 AM
Subscribers

Details

Summary

If an event handler requested an abort, only the inner loop was
guarenteed to be broken out of - the outer loop could continue
if total == batch.

Fix this by poisoning batch to ensure it is different to total.

Submitted by: Mark Spender <mspender at solarflare.com>
Sponsored by: Solarflare Communications, Inc.
MFC after: 1 week

Test Plan

amd64 tinderbox kernel builds tested
driver loaded/unloaded, interfaces up/down, traffic works fine

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 21146
Build 20508: arc lint + arc unit

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Nov 30 2018, 7:11 AM
This revision was automatically updated to reflect the committed changes.