Skip to content

Commit

Permalink
sfc: Leave interrupts and event queues enabled whenever we can
Browse files Browse the repository at this point in the history
When SR-IOV is enabled we may receive FLR (Function-Level Reset)
events, associated queue flush events and requests from VF drivers at
any time.  Therefore we need to keep event queues and interrupts
enabled whenever possible.

Currently we stop interrupt-driven event processing before flushing RX
and TX queues; efx_nic_flush_queues() then polls event queues for
flush events and discards any others it finds.  Change it to work with
the regular event handling functions.

Currently efx_start_channel() fills RX queues synchronously when a
device is brought up.  This could now race with NAPI, so change it to
send fill events.

This was almost entirely written by Steve Hodgson, formerly
shodgson@solarflare.com.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
  • Loading branch information
Ben Hutchings committed Feb 16, 2012
1 parent 2ae75da commit 9f2cb71
Show file tree
Hide file tree
Showing 4 changed files with 308 additions and 318 deletions.
Loading

0 comments on commit 9f2cb71

Please sign in to comment.