]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Lock optimization in ENA
authormw <mw@FreeBSD.org>
Thu, 30 May 2019 13:29:24 +0000 (13:29 +0000)
committermw <mw@FreeBSD.org>
Thu, 30 May 2019 13:29:24 +0000 (13:29 +0000)
commit03e389ca191a8936559fb4da94dd5deaaef520a2
treeb6d236cf107c3a5e3428f71c8418fc44a0cd2c57
parent96ea35589365c9719dd2ca13ebb0ac50544e0e78
Lock optimization in ENA

Handle IO interrupts using filter routine. That way, the main cleanup
task could be moved to the separate thread using taskqueue.

The deferred Rx cleanup task was removed, and now the cleanup task is
begin called instead. That way, the Rx lock could be removed.

In addition, Queue management (wake up and stop TX ring) was added, so
the TX cleanup task can be performed mostly lockless.

Submitted by:  Michal Krawczyk <mk@semihalf.com>
Obtained from: Semihalf
Sponsored by:  Amazon, Inc.
sys/dev/ena/ena.c
sys/dev/ena/ena.h
sys/dev/ena/ena_sysctl.c