HomeFreeBSD

netmap: iflib: stop krings during interface reset

Description

netmap: iflib: stop krings during interface reset

When different processes open separate subsets of the
available rings of a same netmap interface, a device
reset may be performed while one of the processes
is actively using some rings (e.g., caused by another
process executing a nmport_open()).
With this patch, such situation will cause the
active process to get a POLLERR, so that it can
have a chance to detect the situation.
We also guarantee that no process is running a txsync
or rxsync (ioctl or poll) while an iflib device reset
is in progress.

PR: 252453
MFC after: 1 week

Details

Provenance
vmaffioneAuthored on Jan 9 2021, 8:54 PM
Parents
rGfaaf43b2a750: fileargs: add tests
Branches
Unknown
Tags
Unknown