Integrate NAPI work done by Jamal Hadi Salim,
authorDavid S. Miller <davem@nuts.ninka.net>
Wed, 13 Mar 2002 09:04:16 +0000 (01:04 -0800)
committerDavid S. Miller <davem@nuts.ninka.net>
Wed, 13 Mar 2002 09:04:16 +0000 (01:04 -0800)
commitabb85ec3ab0ba0029a081cc9f5e1e92fd3137942
tree725dbc46e6df2f77a29977866636063230ffc766
parentc3a12cc532a84073ecfbcfeb7949865cadd93fff
Integrate NAPI work done by Jamal Hadi Salim,
Robert Olsson, and Alexey Kuznetsov.  This changeset adds
the framework and implementation, but drivers need to be
ported to NAPI in order to take advantage of the new
facilities.  NAPI is fully backwards compatible, current
drivers will continue to work as they always have.

NAPI is a way for dealing with high packet load.  It allows
the driver to disable the RX interrupts on the card and enter
a polling mode.  Another way to describe NAPI would be as
implicit mitigation.  Once the device enters this polling
mode, it will exit back to interrupt based processing when
the receive packet queue is purged.

A full porting and description document is found at:
Documentation/networking/NAPI_HOWTO.txt
and this also makes reference to Usenix papers on the
web and other such resources available on NAPI.

NAPI has been found to not only increase packet processing
rates, it also gives greater fairness to the other interfaces
in the system which are not experiencing high packet load.
Documentation/networking/NAPI_HOWTO.txt [new file with mode: 0644]
include/linux/netdevice.h
include/linux/sysctl.h
net/core/dev.c
net/core/sysctl_net_core.c
net/netsyms.c