On Thu, Feb 4, 2021 at 1:34 PM Wei Wang <wei...@google.com> wrote:
>
> This patch allows running each napi poll loop inside its own
> kernel thread.
> The kthread is created during netif_napi_add() if dev->threaded
> is set. And threaded mode is enabled in napi_enable(). We will
> provide a way to set dev->threaded and enable threaded mode
> without a device up/down in the following patch.
>
> Once that threaded mode is enabled and the kthread is
> started, napi_schedule() will wake-up such thread instead
> of scheduling the softirq.
>
> The threaded poll loop behaves quite likely the net_rx_action,
> but it does not have to manipulate local irqs and uses
> an explicit scheduling point based on netdev_budget.
>
> Co-developed-by: Paolo Abeni <pab...@redhat.com>
> Signed-off-by: Paolo Abeni <pab...@redhat.com>
> Co-developed-by: Hannes Frederic Sowa <han...@stressinduktion.org>
> Signed-off-by: Hannes Frederic Sowa <han...@stressinduktion.org>
> Co-developed-by: Jakub Kicinski <k...@kernel.org>
> Signed-off-by: Jakub Kicinski <k...@kernel.org>
> Signed-off-by: Wei Wang <wei...@google.com>
> ---
>  include/linux/netdevice.h |  21 +++----
>  net/core/dev.c            | 112 ++++++++++++++++++++++++++++++++++++++
>  2 files changed, 119 insertions(+), 14 deletions(-)
>

Looks good.

Reviewed-by: Alexander Duyck <alexanderdu...@fb.com>

Reply via email to