Go to file
David S. Miller 834e0ecf81 Merge branch 'tcp-remove-prequeue-and-header-prediction'
Florian Westphal says:

====================
tcp: remove prequeue and header prediction

During a hallway discussion with Eric Dumazet at Netdev 1.2 in
Tokyo some maybe-not-so-useful-anymore TCP stack features came up,
among these header prediction and prequeueing.

In brief, TCP prequeue assumes a single-process-blocking-read design,
which is not that common anymore. The most frequently used high-performance
networking program that is an excellent fit for these features is netperf.

The idea behind prequeueing is to move part of tcp processing, including
retransmit queue cleaning, to process context.

With (e)poll designs, prequeue is always skipped, so for such programs
this is dead-code removal.

Header prediction is also less useful nowadays.
For packet trains, GRO will do packet aggregation so we do not get the
per-packet benefit that this had before GRO anymore.

Because of SACK, header prediction also will be ineffective once
a connection suffers even light packet losses.

code removal aside, after this change processing always occurs in BH
context, this allows to experiment e.g. with doing bulk freeing of
skb heads when incoming ACKs clean packets from the retransmit queue.

There are no changes since the RFC, except in last patch (i missed
another no-longer-used mib counter). I also edited a few commit messages.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2017-07-31 14:37:50 -07:00
arch
block
certs
crypto
Documentation tcp: remove low_latency sysctl 2017-07-31 14:37:49 -07:00
drivers net: fec: Allow reception of frames bigger than 1522 bytes 2017-07-30 19:26:01 -07:00
firmware
fs rxrpc: Move the packet.h include file into net/rxrpc/ 2017-07-21 11:00:20 +01:00
include tcp: remove unused mib counters 2017-07-31 14:37:50 -07:00
init
ipc
kernel bpf: dev_map_alloc() shouldn't return NULL 2017-07-24 16:23:05 -07:00
lib net netlink: Add new type NLA_BITFIELD32 2017-07-30 19:28:08 -07:00
mm
net tcp: remove unused mib counters 2017-07-31 14:37:50 -07:00
samples
scripts
security
sound
tools bpf: testing: fix devmap tests 2017-07-29 14:13:20 -07:00
usr
virt
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile
README

Linux kernel
============

This file was moved to Documentation/admin-guide/README.rst

Please notice that there are several guides for kernel developers and users.
These guides can be rendered in a number of formats, like HTML and PDF.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.
See Documentation/00-INDEX for a list of what is contained in each file.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.