linux/include
Arnaldo Carvalho de Melo 2e6599cb89 [NET] Generalise TCP's struct open_request minisock infrastructure
Kept this first changeset minimal, without changing existing names to
ease peer review.

Basicaly tcp_openreq_alloc now receives the or_calltable, that in turn
has two new members:

->slab, that replaces tcp_openreq_cachep
->obj_size, to inform the size of the openreq descendant for
  a specific protocol

The protocol specific fields in struct open_request were moved to a
class hierarchy, with the things that are common to all connection
oriented PF_INET protocols in struct inet_request_sock, the TCP ones
in tcp_request_sock, that is an inet_request_sock, that is an
open_request.

I.e. this uses the same approach used for the struct sock class
hierarchy, with sk_prot indicating if the protocol wants to use the
open_request infrastructure by filling in sk_prot->rsk_prot with an
or_calltable.

Results? Performance is improved and TCP v4 now uses only 64 bytes per
open request minisock, down from 96 without this patch :-)

Next changeset will rename some of the structs, fields and functions
mentioned above, struct or_calltable is way unclear, better name it
struct request_sock_ops, s/struct open_request/struct request_sock/g,
etc.

Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-18 22:46:52 -07:00
..
acpi Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
asm-alpha [PATCH] AGP fix for Xen VMM 2005-06-07 12:35:43 -07:00
asm-arm [PATCH] ARM: 2714/1: Fix the IB2 definitions for the Versatile platform 2005-06-16 18:01:12 +01:00
asm-arm26 [PATCH] Remove obsolete HAVE_ARCH_GET_SIGNAL_TO_DELIVER? 2005-06-12 20:43:21 -07:00
asm-cris [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-frv [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-generic [PATCH] ppc32: platform-specific functions missing from kallsyms. 2005-05-05 16:36:31 -07:00
asm-h8300 [PATCH] h8300 build error fix 2005-06-06 14:42:23 -07:00
asm-i386 Merge of master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart 2005-06-07 13:41:30 -07:00
asm-ia64 [PATCH] ia64: fix floating-point preemption problem 2005-06-08 16:21:14 -07:00
asm-m32r [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-m68k [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-m68knommu [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-mips [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-parisc [PATCH] make some things static 2005-05-05 16:36:47 -07:00
asm-ppc Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git 2005-06-18 08:36:46 +01:00
asm-ppc64 [PATCH] ppc64: Fix PER_LINUX32 behaviour 2005-06-08 16:24:15 -07:00
asm-s390 [PATCH] s390: uml ptrace fixes 2005-06-04 17:13:00 -07:00
asm-sh [PATCH] sh: PREEMPT_ACTIVE fix 2005-05-28 16:46:13 -07:00
asm-sh64 [PATCH] sh: PREEMPT_ACTIVE fix 2005-05-28 16:46:13 -07:00
asm-sparc [PATCH] sparc32: silence access_ok() warnings 2005-06-08 16:21:13 -07:00
asm-sparc64 [PATCH] AGP fix for Xen VMM 2005-06-07 12:35:43 -07:00
asm-um [PATCH] uml: remove jail mode + other leftovers 2005-05-28 16:46:14 -07:00
asm-v850 [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
asm-x86_64 [PATCH] AGP fix for Xen VMM 2005-06-07 12:35:43 -07:00
linux [NET] Generalise TCP's struct open_request minisock infrastructure 2005-06-18 22:46:52 -07:00
math-emu Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
media [PATCH] dvb: modified dvb_register_adapter() to avoid kmalloc/kfree 2005-05-17 07:59:33 -07:00
mtd Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
net [NET] Generalise TCP's struct open_request minisock infrastructure 2005-06-18 22:46:52 -07:00
pcmcia Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rxrpc Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scsi Automatic merge of ../scsi-misc-2.6-old/ 2005-05-26 14:14:55 -04:00
sound Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
video [PATCH] Clean-up and bug fix for tdfxfb framebuffer size detection 2005-05-01 08:59:25 -07:00