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
F124977392: D18287.id50887.diff
Sat, Aug 2, 12:06 AM
Unknown Object (File)
Fri, Jul 25, 5:32 AM
Unknown Object (File)
Mon, Jul 21, 9:13 AM
Unknown Object (File)
Mon, Jul 21, 6:03 AM
Unknown Object (File)
Mon, Jul 21, 5:17 AM
Unknown Object (File)
Mon, Jul 21, 4:55 AM
Unknown Object (File)
Tue, Jul 15, 3:27 PM
Unknown Object (File)
Mon, Jul 7, 12:36 PM
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

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

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.