linux/drivers/net
Gabriele Paoloni 9c705260fe ppp: ppp_mp_explode() redesign
I found the PPP subsystem to not work properly when connecting channels
with different speeds to the same bundle.

Problem Description:

As the "ppp_mp_explode" function fragments the sk_buff buffer evenly
among the PPP channels that are connected to a certain PPP unit to
make up a bundle, if we are transmitting using an upper layer protocol
that requires an Ack before sending the next packet (like TCP/IP for
example), we will have a bandwidth bottleneck on the slowest channel
of the bundle.

Let's clarify by an example. Let's consider a scenario where we have
two PPP links making up a bundle: a slow link (10KB/sec) and a fast
link (1000KB/sec) working at the best (full bandwidth). On the top we
have a TCP/IP stack sending a 1000 Bytes sk_buff buffer down to the
PPP subsystem. The "ppp_mp_explode" function will divide the buffer in
two fragments of 500B each (we are neglecting all the headers, crc,
flags etc?.). Before the TCP/IP stack sends out the next buffer, it
will have to wait for the ACK response from the remote peer, so it
will have to wait for both fragments to have been sent over the two
PPP links, received by the remote peer and reconstructed. The
resulting behaviour is that, rather than having a bundle working
@1010KB/sec (the sum of the channels bandwidths), we'll have a bundle
working @20KB/sec (the double of the slowest channels bandwidth).


Problem Solution:

The problem has been solved by redesigning the "ppp_mp_explode"
function in such a way to make it split the sk_buff buffer according
to the speeds of the underlying PPP channels (the speeds of the serial
interfaces respectively attached to the PPP channels). Referring to
the above example, the redesigned "ppp_mp_explode" function will now
divide the 1000 Bytes buffer into two fragments whose sizes are set
according to the speeds of the channels where they are going to be
sent on (e.g .  10 Byets on 10KB/sec channel and 990 Bytes on
1000KB/sec channel).  The reworked function grants the same
performances of the original one in optimal working conditions (i.e. a
bundle made up of PPP links all working at the same speed), while
greatly improving performances on the bundles made up of channels
working at different speeds.

Signed-off-by: Gabriele Paoloni <gabriele.paoloni@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-13 16:09:12 -07:00
..
appletalk appletalk: convert ipddp to net_device_ops 2009-01-07 17:22:19 -08:00
arcnet drivers/net/arcnet: fix sparse warning: symbol shadows an earlier one 2009-02-17 17:26:05 -08:00
arm Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
atl1c atl1c: Atheros L1C Gigabit Ethernet driver 2009-02-18 17:24:15 -08:00
atl1e drivers/net/atl1e: fix sparse warnings: fix signedness 2009-02-17 17:26:06 -08:00
atlx drivers/net/atlx: fix sparse warnings: fix signedness 2009-02-17 17:26:07 -08:00
bonding Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
can vcan: whitespace fixes 2008-12-17 15:37:55 -08:00
chelsio chelsio: remove some pointless conditionals before kfree_skb() 2009-02-26 23:07:38 -08:00
cris Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-11-06 22:43:03 -08:00
cxgb3 cxgb3: update driver version 2009-03-13 11:30:49 -07:00
e1000 e1000: fix unmap bug 2009-03-02 16:03:21 -08:00
e1000e e1000e: fix unmap bug 2009-03-02 16:02:53 -08:00
ehea ehea: fix circular locking problem 2009-03-13 13:50:40 -07:00
enic enic: Add api for link down count and to get firmware notification status. 2009-02-09 23:25:33 -08:00
fs_enet net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
hamradio net: convert usage of packet_type to read_mostly 2009-03-10 05:22:43 -07:00
ibm_newemac net: variables reach -1, but 0 tested 2009-02-02 21:39:02 -08:00
igb igb: remove skb_orphan calls 2009-03-02 16:01:53 -08:00
irda irda: remove some pointless conditionals before kfree_skb() 2009-02-26 23:07:30 -08:00
ixgb net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
ixgbe ixgbe: Fix some compiler warnings. 2009-03-01 20:32:39 -08:00
ixp2000 net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
mlx4 net: Add skb_record_rx_queue() calls to multiqueue capable drivers. 2009-01-27 16:22:32 -08:00
myri10ge net: Add skb_record_rx_queue() calls to multiqueue capable drivers. 2009-01-27 16:22:32 -08:00
netxen netxen: annotate board_config and board_type 2009-03-10 05:10:04 -07:00
pcmcia Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
phy phylib: convert state_queue work to delayed_work 2009-03-13 15:41:19 -07:00
qlge qlge: bugfix: Fix endian issue related to rx buffers. 2009-03-10 04:43:58 -07:00
sfc sfc: Improve NIC internal error recovery 2009-03-04 17:40:25 -08:00
skfp drivers/net/skfp: fix sparse warning: Should it be static? 2009-02-17 17:37:59 -08:00
tokenring Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
tulip tulip: Fix for MTU problems with 802.1q tagged frames 2009-03-13 15:43:38 -07:00
usb Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
wan net: convert usage of packet_type to read_mostly 2009-03-10 05:22:43 -07:00
wimax wimax: fix i2400m printk formats 2009-03-11 23:24:03 -07:00
wireless Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-10 05:04:16 -07:00
3c59x.c 3c59x: get rid of non-const printk warnings 2009-02-26 22:21:54 -08:00
3c501.c 3c501: convert to net_device_ops 2009-01-21 14:02:21 -08:00
3c501.h netdevice: Kill netdev->priv 2008-12-08 01:14:16 -08:00
3c503.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
3c503.h
3c505.c Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-02-14 23:12:00 -08:00
3c505.h
3c507.c 3c507: convert to net_device_ops 2009-01-21 14:02:23 -08:00
3c509.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-02-07 02:52:44 -08:00
3c515.c 3c515: convert to net_device_ops 2009-01-21 14:02:24 -08:00
3c523.c 3c523: convert to net_device_ops 2009-01-21 14:02:24 -08:00
3c523.h
3c527.c 3c527: convert to net_device_ops 2009-01-21 14:02:25 -08:00
3c527.h
7990.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
7990.h
8139cp.c 8139cp: allow to set mac address on running device 2009-03-13 11:47:48 -07:00
8139too.c 8139too: allow to set mac address on running device 2009-03-13 11:48:18 -07:00
8390.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
8390.h 8390: add common net_device ops 2008-11-25 18:12:49 -08:00
8390p.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
82596.c dmascc: convert to internal net_device_ops 2009-01-21 14:02:41 -08:00
a2065.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
a2065.h
ac3200.c net: convert print_mac to %pM 2008-10-27 17:06:18 -07:00
acenic.c acenic: fix non-constant printk warnings 2009-02-26 22:21:58 -08:00
acenic.h firmware: convert acenic driver to request_firmware() 2009-01-04 16:10:02 -08:00
amd8111e.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
amd8111e.h
apne.c apne: convert to net_device_ops 2008-11-25 18:25:32 -08:00
ariadne.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
ariadne.h
at1700.c drivers/net/at1700.c: fix sparse warning: symbol shadows an earlier one 2009-02-17 17:21:07 -08:00
atarilance.c netdevice: safe convert to netdev_priv() #part-1 2008-11-12 23:37:49 -08:00
atp.c atp: convert to net_device_ops 2009-01-07 18:10:24 -08:00
atp.h
au1000_eth.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
au1000_eth.h phylib: move to dynamic allocation of struct mii_bus 2008-10-08 16:29:57 -07:00
ax88796.c ax88796: start_xmit fix using net_device_ops 2009-01-14 21:05:55 -08:00
b44.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-01 21:35:16 -08:00
b44.h b44: GFP_DMA skb should not escape from driver 2009-01-15 15:29:35 -08:00
bfin_mac.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
bfin_mac.h phylib: move to dynamic allocation of struct mii_bus 2008-10-08 16:29:57 -07:00
bmac.c bmac: remove unused variable bp in bmac_misc_intr() 2009-03-13 14:17:16 -07:00
bmac.h
bnx2_fw2.h bnx2: Update 5709 firmware. 2009-02-12 16:53:48 -08:00
bnx2_fw.h bnx2: Update 5706/5708 firmware. 2009-02-12 16:53:22 -08:00
bnx2.c Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-02-14 23:12:00 -08:00
bnx2.h bnx2: Update version to 1.9.2 and copyright. 2009-02-12 16:54:48 -08:00
bnx2x_dump.h bnx2x: Register dump 2009-03-02 22:32:48 -08:00
bnx2x_fw_defs.h bnx2x: Version 2009-02-15 23:32:01 -08:00
bnx2x_hsi.h bnx2x: Version 2009-02-15 23:32:01 -08:00
bnx2x_init_values.h bnx2x: New FW 2009-02-15 23:24:08 -08:00
bnx2x_init.h bnx2x: Using DMAE to initialize the chip 2009-03-10 04:52:03 -07:00
bnx2x_link.c bnx2x: Loopback support at external PHY 2009-03-02 22:32:45 -08:00
bnx2x_link.h bnx2x: Version 2009-02-15 23:32:01 -08:00
bnx2x_main.c bnx2x: Using DMAE to initialize the chip 2009-03-10 04:52:03 -07:00
bnx2x_reg.h bnx2x: Supporting new BCM8726 FW 2009-03-02 22:32:43 -08:00
bnx2x.h Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-10 05:04:16 -07:00
bsd_comp.c
cassini.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-02-03 00:15:35 -08:00
cassini.h cassini: use request_firmware 2008-09-22 19:27:10 -07:00
cpmac.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
cs89x0.c Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-12-30 17:36:49 -08:00
cs89x0.h
de600.c de600: update to net_device_ops 2009-01-07 17:34:36 -08:00
de600.h
de620.c de600: update to net_device_ops 2009-01-07 17:34:36 -08:00
de620.h
declance.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
defxx.c netdev: Use __netdev_alloc_skb() instead of __dev_alloc_skb(). 2009-02-10 01:56:45 -08:00
defxx.h
depca.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
depca.h
dl2k.c dl2k: convert to net_device_ops 2008-11-21 17:31:51 -08:00
dl2k.h
dm9000.c dm9000: Fix build error. 2008-11-16 12:41:35 -08:00
dm9000.h
dummy.c dummy: convert to net_device_ops 2008-11-20 20:28:00 -08:00
e100.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
e2100.c drivers/net/e2100.c: fix sparse warning: symbol shadows an earlier one 2009-02-17 17:21:08 -08:00
eepro.c drivers/net: fix sparse warnings: make symbols static 2008-12-25 23:56:45 -08:00
eexpress.c netdevice: Kill netdev->priv 2008-12-08 01:14:16 -08:00
eexpress.h EtherExpress16: fix printing timed out status 2008-12-29 18:42:33 -08:00
enc28j60_hw.h
enc28j60.c enc28j60: update to net_device_ops 2009-01-07 17:30:09 -08:00
epic100.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
eql.c eql: convert to net_device_ops 2008-11-21 17:37:54 -08:00
es3210.c es3210: convert to net_device_ops 2008-11-25 18:23:59 -08:00
eth16i.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
ewrk3.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
ewrk3.h
fealnx.c fealnx: fix non-constant printk warnings 2009-02-26 22:21:59 -08:00
fec_mpc52xx_phy.c powerpc/mpc5200: Remove obsolete code from mpc5200 MDIO driver 2008-12-21 02:54:30 -07:00
fec_mpc52xx.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2008-11-10 13:55:14 -08:00
fec_mpc52xx.h
fec.c m68knommu: remove ColdFire specific setup code from FEC driver 2009-02-26 22:42:51 -08:00
fec.h fec: Add support for Freescale MX27 2009-02-01 00:58:26 -08:00
forcedeth.c forcedeth: version bump to 64 2009-03-10 05:29:52 -07:00
fsl_pq_mdio.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
fsl_pq_mdio.h netdev: Merge UCC and gianfar MDIO bus drivers 2009-02-04 16:42:35 -08:00
gianfar_ethtool.c gianfar: Implement proper, per netdevice wakeup management 2009-02-01 00:52:34 -08:00
gianfar_sysfs.c gianfar: Fix stashing support 2009-02-04 16:43:44 -08:00
gianfar.c gianfar: Convert to use netdev_ops 2009-03-13 12:05:23 -07:00
gianfar.h Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-02-04 16:52:41 -08:00
hamachi.c hamachi: fix non-constant printk warnings 2009-02-26 22:22:02 -08:00
hp100.c hp100: update to net_device_ops 2009-01-07 18:13:49 -08:00
hp100.h
hp-plus.c net: fix hp-plus build error 2009-02-26 21:02:19 -08:00
hp.c hp: convert to net_device_ops 2008-11-25 18:24:57 -08:00
hplance.c
hplance.h
hydra.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
ibmlana.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
ibmlana.h
ibmveth.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
ibmveth.h ibmveth: use consistent types 2009-01-06 10:47:44 -08:00
ifb.c netdev: add more functions to netdevice ops 2008-11-20 20:14:53 -08:00
ioc3-eth.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
ipg.c ipg: update to net_device_ops 2009-01-07 17:26:14 -08:00
ipg.h [netdrvr] remove unnecessary #include 2008-08-14 04:26:38 -04:00
isa-skeleton.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
iseries_veth.c powerpc: Cleanup from l64 to ll64 change: drivers/net 2009-01-13 14:48:00 +11:00
jazzsonic.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
jme.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
jme.h jme: Advance version number after previous changes 2009-03-02 01:55:15 -08:00
Kconfig mv643xx_eth: make LRO unconditional 2009-02-24 23:17:21 -08:00
korina.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
lance.c drivers/net/lance.c: fix sparse warnings: fix signedness 2009-02-17 17:21:11 -08:00
lasi_82596.c
lib8390.c 8390/8390p: Fix compat netdev ops handling. 2008-12-15 15:14:59 -08:00
lib82596.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
LICENSE.SRC
lne390.c lne390: convert to net_device_ops 2008-11-25 18:24:38 -08:00
loopback.c netdev: add more functions to netdevice ops 2008-11-20 20:14:53 -08:00
lp486e.c netdevice: safe convert to netdev_priv() #part-1 2008-11-12 23:37:49 -08:00
mac89x0.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
mac8390.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
macb.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
macb.h phylib: move to dynamic allocation of struct mii_bus 2008-10-08 16:29:57 -07:00
mace.c netdevice: safe convert to netdev_priv() #part-1 2008-11-12 23:37:49 -08:00
mace.h
macmace.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
macsonic.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
macvlan.c macvlan: Deterministic ingress packet delivery 2009-03-13 13:16:13 -07:00
Makefile Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-02-24 03:50:29 -08:00
meth.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
meth.h
mii.c
mipsnet.c drivers/net: replace __FUNCTION__ with __func__ 2008-09-24 18:59:00 -04:00
mv643xx_eth.c mv643xx_eth: set sane default receive coalescing timeout 2009-02-24 23:17:22 -08:00
mvme147.c netdevice: safe convert to netdev_priv() #part-2 2008-11-12 23:38:14 -08:00
myri_code.h
myri_sbus.c net: replace uses of __constant_{endian} 2009-02-01 00:45:17 -08:00
myri_sbus.h myri_sbus: Convert to pure OF driver. 2008-08-29 02:13:32 -07:00
natsemi.c natsemi: fix non-constant printk warnings 2009-02-26 22:21:58 -08:00
ne2.c ne2: silence static never defined warnings 2008-11-28 15:55:00 -08:00
ne2k-pci.c ne2k-pci: fix non-constant printk warnings 2009-02-26 22:21:55 -08:00
ne3210.c ne3210: convert to net_device_ops 2008-11-25 18:23:35 -08:00
ne-h8300.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
ne.c drivers/net: fix sparse warning: use ANSI-style function declaration 2008-12-25 23:52:57 -08:00
netconsole.c net: convert print_mac to %pM 2008-10-27 17:06:18 -07:00
netx-eth.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-12-05 22:54:40 -08:00
ni52.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
ni52.h
ni65.c drivers/net/ni65.c: fix sparse warnings: fix signedness 2009-02-17 17:21:12 -08:00
ni65.h
ni5010.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
ni5010.h
niu.c niu: Add TCAM classification configuration 2009-02-20 00:58:45 -08:00
niu.h niu: Add TCAM classification configuration 2009-02-20 00:58:45 -08:00
ns83820.c ns83820: remove some pointless conditionals before kfree_skb() 2009-02-26 23:07:39 -08:00
pasemi_mac_ethtool.c netdevice: safe convert to netdev_priv() #part-2 2008-11-12 23:38:14 -08:00
pasemi_mac.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
pasemi_mac.h
pci-skeleton.c netdevice: Kill netdev->priv 2008-12-08 01:14:16 -08:00
pcnet32.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
plip.c plip: update to net_device_ops 2009-01-07 17:26:48 -08:00
ppp_async.c ppp: ppp_mp_explode() redesign 2009-03-13 16:09:12 -07:00
ppp_deflate.c
ppp_generic.c ppp: ppp_mp_explode() redesign 2009-03-13 16:09:12 -07:00
ppp_mppe.c [netdrvr] remove unnecessary #include 2008-08-14 04:26:38 -04:00
ppp_mppe.h
ppp_synctty.c ppp: ppp_mp_explode() redesign 2009-03-13 16:09:12 -07:00
pppoe.c net: convert usage of packet_type to read_mostly 2009-03-10 05:22:43 -07:00
pppol2tp.c drivers/net/ppp*.c: fix sparse warnings: fix signedness 2009-02-17 17:21:12 -08:00
pppox.c net: pppol2tp - introduce net-namespace functionality 2009-01-21 15:55:15 -08:00
ps3_gelic_net.c net: replace uses of __constant_{endian} 2009-02-01 00:45:17 -08:00
ps3_gelic_net.h
ps3_gelic_wireless.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-02-03 00:15:35 -08:00
ps3_gelic_wireless.h don't use net/ieee80211.h 2008-11-10 15:11:56 -05:00
qla3xxx.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
qla3xxx.h qla3xxx: cleanup: Remove some unused structure definitions and structure elements. 2008-08-07 02:11:14 -04:00
r6040.c drivers/net/r6040.c: fix sparse warning: Using plain integer as NULL pointer 2009-02-17 17:21:13 -08:00
r8169.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-01 21:35:16 -08:00
rionet.c drivers/net/rionet.c: remove some pointless conditionals before kfree_skb() 2009-02-26 23:07:31 -08:00
rrunner.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
rrunner.h
s2io-regs.h
s2io.c drivers/net/s2io.c: fix sparse warning: symbol shadows an earlier one 2009-02-17 17:21:14 -08:00
s2io.h s2io: Fix enabling VLAN tag stripping at driver initialization 2008-09-24 18:49:04 -04:00
sb1000.c sb1000: update to net_device_ops 2009-01-07 17:56:54 -08:00
sb1250-mac.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
sc92031.c sc92031: add a link to the datasheet 2009-01-21 14:03:42 -08:00
seeq8005.c netdev: remove pathetic compile-command lines 2008-12-03 22:19:52 -08:00
seeq8005.h
sgiseeq.c netdevice: safe convert to netdev_priv() #part-3 2008-11-12 23:38:36 -08:00
sgiseeq.h
sh_eth.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-11-20 16:44:00 -08:00
sh_eth.h [netdrvr] sh_eth: Add SH7619 support 2008-08-07 02:20:57 -04:00
sis190.c sis190: update to net_device_ops 2009-01-07 17:35:41 -08:00
sis900.c sis900: fix non-constant printk warnings 2009-02-26 22:21:55 -08:00
sis900.h
skge.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
skge.h
sky2.c sky2: set VPD size 2009-02-03 15:08:36 -08:00
sky2.h sky2: fix PM related regressions 2008-08-07 01:55:50 -04:00
slhc.c
slip.c slip: convert to net_device_ops 2009-01-07 18:09:36 -08:00
slip.h trivial: fix then -> than typos in comments and documentation 2009-01-06 11:28:06 +01:00
smc91x.c smc91x: struct net_device_ops 2009-01-26 21:32:25 -08:00
smc91x.h smc91x: enable ethtool EEPROM interface 2009-01-21 14:34:52 -08:00
smc911x.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-02-03 00:15:35 -08:00
smc911x.h OMAP: enable smc911x support for LDP platform 2009-03-02 22:29:37 -08:00
smc9194.c drivers/net: fix sparse warnings: make symbols static 2008-12-25 23:56:45 -08:00
smc9194.h
smc-mca.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
smc-ultra32.c net: convert print_mac to %pM 2008-10-27 17:06:18 -07:00
smc-ultra.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
smsc911x.c smsc911x: improve EEPROM loading timeout logic in open 2009-03-13 12:14:11 -07:00
smsc911x.h net: Move flow control definitions to mii.h 2008-12-16 02:00:00 -08:00
smsc9420.c Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-02-24 03:50:29 -08:00
smsc9420.h smsc9420: handle magic field of ethtool_eeprom 2009-02-20 00:38:51 -08:00
sni_82596.c
sonic.c drivers/net: Kill now superfluous ->last_rx stores. 2008-11-03 21:11:17 -08:00
sonic.h netdevice: safe convert to netdev_priv() #part-3 2008-11-12 23:38:36 -08:00
Space.c
spider_net_ethtool.c netdevice: safe convert to netdev_priv() #part-3 2008-11-12 23:38:36 -08:00
spider_net.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
spider_net.h
starfire.c starfire: fix non-constant printk warnings 2009-02-26 22:22:00 -08:00
stnic.c stnic: convert to net_device_ops 2008-11-25 18:25:49 -08:00
sun3_82586.c netdevice: Kill netdev->priv 2008-12-08 01:14:16 -08:00
sun3_82586.h
sun3lance.c sun3: print when lance_open() fails 2009-02-12 16:40:20 -08:00
sunbmac.c netdevice: Kill netdev->priv 2008-12-08 01:14:16 -08:00
sunbmac.h sunbmac: Convert to pure OF driver. 2008-08-29 02:13:33 -07:00
sundance.c sundance: fix non-constant printk warnings 2009-02-26 22:22:00 -08:00
sungem_phy.c cassini/sungem: limit reaches -1, but 0 tested 2009-02-02 23:19:50 -08:00
sungem_phy.h
sungem.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-03-05 02:06:47 -08:00
sungem.h
sunhme.c sunhme: Fix Quattro HME irq registration on proble failures 2009-02-10 17:29:42 -08:00
sunhme.h sunhme: Convert to pure OF driver. 2008-08-29 02:14:29 -07:00
sunlance.c sunlance: Beyond ARRAY_SIZE of ib->btx_ring 2009-02-21 23:46:36 -08:00
sunqe.c net: variables reach -1, but 0 tested 2009-02-02 21:39:02 -08:00
sunqe.h sunqe: Convert to pure OF driver. 2008-08-29 02:14:43 -07:00
sunvnet.c sparc64: Fix unsigned long long warnings in drivers. 2009-01-06 13:20:38 -08:00
sunvnet.h
tc35815.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
tehuti.c tehuti: Use request_firmware() 2009-02-26 23:20:56 -08:00
tehuti.h tehuti: Use request_firmware() 2009-02-26 23:20:56 -08:00
tg3.c tg3: Fix 5906 link problems 2009-03-04 15:08:19 -08:00
tg3.h tg3: Add version reporting for hardware selfboot 2009-02-26 23:16:40 -08:00
tlan.c tlan: update to net_device_ops 2009-01-07 17:27:15 -08:00
tlan.h
tsi108_eth.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-02-03 00:15:35 -08:00
tsi108_eth.h
tun.c tun: Fix merge error 2009-02-14 20:46:39 -08:00
typhoon.c typhoon: repair firmware loading 2009-03-02 22:15:09 -08:00
typhoon.h typhoon: replace users of __constant_{endian} 2009-01-21 14:34:08 -08:00
ucc_geth_ethtool.c netdev: Merge UCC and gianfar MDIO bus drivers 2009-02-04 16:42:35 -08:00
ucc_geth.c netdev: Merge UCC and gianfar MDIO bus drivers 2009-02-04 16:42:35 -08:00
ucc_geth.h netdev: Merge UCC and gianfar MDIO bus drivers 2009-02-04 16:42:35 -08:00
veth.c veth: Allow setting the L3 MTU 2009-03-03 23:36:04 -08:00
via-rhine.c via-rhine: fix non-constant printk warnings 2009-02-26 22:21:59 -08:00
via-velocity.c via-velocity: fix hot spin 2009-01-20 14:44:01 -08:00
via-velocity.h net: replace uses of __constant_{endian} 2009-02-01 00:45:17 -08:00
virtio_net.c virtio_net: Allow setting the MAC address of the NIC 2009-02-04 16:36:34 -08:00
wd.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00
xen-netfront.c net: Remove redundant NAPI functions 2009-01-21 14:33:50 -08:00
xtsonic.c net: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-26 21:12:58 -08:00
yellowfin.c yellowfin: fix non-constant printk warnings 2009-02-26 22:21:57 -08:00
znet.c znet: convert to net_device_ops 2009-01-21 14:02:31 -08:00
zorro8390.c netdev: add missing set_mac_address hook 2009-01-11 00:06:36 -08:00