DragonFly BSD

CVS log for src/sys/netinet/tcp_usrreq.c

[BACK] Up to [DragonFly] / src / sys / netinet

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.51: download - view: text, markup, annotated - select for diffs
Mon Sep 29 20:52:23 2008 UTC (6 years ago) by dillon
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.50: preferred, unified
Changes since revision 1.50: +35 -25 lines
Do not return an EINVAL error for certain abort and disconnect cases.
Otherwise an async close() by the other end can cause our close() to
return EINVAL.

Revision 1.50: download - view: text, markup, annotated - select for diffs
Sat Sep 6 05:44:59 2008 UTC (6 years, 1 month ago) by dillon
Branches: MAIN
Diff to: previous 1.49: preferred, unified
Changes since revision 1.49: +4 -1 lines
Increase sockbuf send and receive buffers to 57344 bytes.  In particular,
note that we want to use buffer limits that allow lo0's mtu of 16384 to
be fully utilized.

Revision 1.49: download - view: text, markup, annotated - select for diffs
Tue Jun 17 20:50:11 2008 UTC (6 years, 4 months ago) by aggelos
Branches: MAIN
CVS tags: DragonFly_RELEASE_2_0_Slip, DragonFly_RELEASE_2_0, DragonFly_Preview
Diff to: previous 1.48: preferred, unified
Changes since revision 1.48: +5 -16 lines
do early copyin / delayed copyout for socket options

Revision 1.48: download - view: text, markup, annotated - select for diffs
Thu Jun 5 18:06:32 2008 UTC (6 years, 4 months ago) by swildner
Branches: MAIN
Diff to: previous 1.47: preferred, unified
Changes since revision 1.47: +2 -2 lines
* Fix some cases where NULL was used but 0 was meant (and vice versa).

* Remove some bogus casts of NULL to (void *).

Revision 1.47: download - view: text, markup, annotated - select for diffs
Sun Feb 10 11:14:25 2008 UTC (6 years, 8 months ago) by sephe
Branches: MAIN
CVS tags: DragonFly_RELEASE_1_12_Slip, DragonFly_RELEASE_1_12
Diff to: previous 1.46: preferred, unified
Changes since revision 1.46: +2 -0 lines
tcp_output_dispatch() is only used by SMP kernel

Noticed-by: swildner@

Revision 1.46: download - view: text, markup, annotated - select for diffs
Sat Feb 9 13:38:03 2008 UTC (6 years, 8 months ago) by sephe
Branches: MAIN
Diff to: previous 1.45: preferred, unified
Changes since revision 1.45: +41 -1 lines
In TCP PRU_CONNECT handling, install inp's route with the route entry on the
correct CPU:
If the TCP connection's target port is not tcp_thread[0]'s port on which TCP
PRU_CONNECT is processed, then
- In tcp_connect(), the route entry installed in inp's route by in_pcbladdr()
  is freed, so the next fix could take effect.
- In tcp_usr_connect(), tcp_output() is dispatched to the connection's target
  port to be called, so the route entry on the connection's target CPU will
  be installed in inp's route.

Approved-by: dillon@

Revision 1.45: download - view: text, markup, annotated - select for diffs
Thu May 24 20:51:22 2007 UTC (7 years, 5 months ago) by dillon
Branches: MAIN
CVS tags: DragonFly_RELEASE_1_10_Slip, DragonFly_RELEASE_1_10
Diff to: previous 1.44: preferred, unified
Changes since revision 1.44: +1 -1 lines
Add lwkt_sleep() to formalize a shortcut numerous bits of code have been
using for a while, which is to directly deschedule oneself and switch away.
This method of blocking requires a direct lwkt_schedule() call to reschedule
the thread and is primarily used by the message port abstraction.

Change the psignal code to check TDF_SINTR in the thread flags instead
of checking MSGPORTF_WAITING in the thread's private message port.

The lwkt_waitmsg() and lwkt_waitport() functions use the same msgport
backend function (mp_waitport).  Separate the backend into two functions,
mp_waitport and mp_waitmsg, and allow tsleep flags to be passed in instead
of flagging interruptability in the lwkt_msg flags.

Optimize the lwkt_waitmsg() backends - in the fully synchronous critical
path case no critical sections or spinlocks are required at all.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Thu May 24 05:51:29 2007 UTC (7 years, 5 months ago) by dillon
Branches: MAIN
Diff to: previous 1.43: preferred, unified
Changes since revision 1.43: +1 -1 lines
LWKT message ports contain a number of function pointers which abstract
their backend operation.

* Add a new function, mp_getport(), which takes over the functionality
  of lwkt_getport().

* Formalize the default backend and rename it the 'thread' port backend, used
  when a message port will only be drained by a single thread.  This backend
  is able to use critical sections and IPI messages to handle races.

* Fix a small timing window in the thread port backend where replying a
  synchronous message request from a different cpu may fail to wake up
  the originator who is waiting for the message completion.

* Abstract-out the message port initialization code and clean up related
  code pollution.

* Add a new backend called the 'spin' port backend.  This backend can be
  used if a message port might be drained by several different threads.
  For example, this would allow us to use a message port as part of a
  file pointer / file descriptor construct.

* Add a boot-time tunable, lwkt.use_spin_port (defaults to off) which
  forces spin ports to be used instead of thread ports for the per-thread
  message port.  This is used only for debugging.

Revision 1.43: download - view: text, markup, annotated - select for diffs
Wed May 23 08:57:09 2007 UTC (7 years, 5 months ago) by dillon
Branches: MAIN
Diff to: previous 1.42: preferred, unified
Changes since revision 1.42: +22 -24 lines
* Greatly reduce the complexity of the LWKT messaging and port abstraction.
  Significantly reduce the overhead of the subsystem.

* The message abort algorithm has been rewritten.  It now sends a
  separate message to issue the abort instead of trying to requeue
  the original message.  This also means the TAILQ embedded in the
  lwkt_msg structure can be used by unrelated code during processing
  of the message.

* Numerous MSGF_ flags have been removed, and all the LWKT msg/port
  algorithms have been rewritten and simplified.  The message structure
  is now only touched by the current owner in all situations.

* Numerous structural fields have been removed.  In particular, the
  fields used for message abort sequencing have been simplified and
  we do not try to embed a 'command' field in the base LWKT message
  any more.

* Clean up the netmsg abstraction, which is used all over the network stack.
  Instead of trying to overload fields in lwkt_msg we now simply extend
  the base lwkt_msg into struct netmsg.  The function dispatch now takes
  a netmsg and returns void (before we had to return EASYNC), and we no
  longer need weird casts.

  Accept/connect message aborts are now greatly simplified.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Sun Apr 22 01:13:14 2007 UTC (7 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.41: preferred, unified
Changes since revision 1.41: +8 -8 lines
Give the sockbuf structure its own header file and supporting source file.
Move all sockbuf-specific functions from kern/uipc_socket2.c into the new
kern/uipc_sockbuf.c and move all the sockbuf-specific structures from
sys/socketvar.h to sys/sockbuf.h.

Change the sockbuf structure to only contain those fields required to
properly management a chain of mbufs.  Create a signalsockbuf structure
to hold the remaining fields (e.g. selinfo, mbmax, etc).

Change the so_rcv and so_snd structures in the struct socket from
a sockbuf to a signalsockbuf.

Remove the recently added sorecv_direct structure which was being used
to provide a direct mbuf path to consumers for socket I/O.  Use the newly
revamped sockbuf base structure instead.  This gives mbuf consumers
direct access to the sockbuf API functions for use outside of a struct
socket.  This will also allow new API functions to be added to the sockbuf
interface to ease the job of parsing data out of chained mbufs.

Revision 1.41: download - view: text, markup, annotated - select for diffs
Sat Apr 21 02:26:48 2007 UTC (7 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.40: preferred, unified
Changes since revision 1.40: +40 -10 lines
Convert all pr_usrreqs structure initializations to the .name = data format.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Sun Mar 4 18:51:59 2007 UTC (7 years, 7 months ago) by swildner
Branches: MAIN
Diff to: previous 1.39: preferred, unified
Changes since revision 1.39: +0 -17 lines
Remove weird license clause which has expired.

Revision 1.39: download - view: text, markup, annotated - select for diffs
Fri Dec 29 18:02:56 2006 UTC (7 years, 9 months ago) by victor
Branches: MAIN
CVS tags: DragonFly_RELEASE_1_8_Slip, DragonFly_RELEASE_1_8
Diff to: previous 1.38: preferred, unified
Changes since revision 1.38: +11 -3 lines
Made jails IPv6 aware and support more than one IP address.

Based-on: Pawel Jakub Dawidek mijail patches.
Reviewed-by: Simon 'corecode' Schubert, Thomas E. Spanjaard, et al.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Tue Sep 5 00:55:48 2006 UTC (8 years, 1 month ago) by dillon
Branches: MAIN
Diff to: previous 1.37: preferred, unified
Changes since revision 1.37: +2 -2 lines
Rename malloc->kmalloc, free->kfree, and realloc->krealloc.  Pass 1

Revision 1.37: download - view: text, markup, annotated - select for diffs
Sat Jan 14 11:33:50 2006 UTC (8 years, 9 months ago) by swildner
Branches: MAIN
CVS tags: DragonFly_RELEASE_1_6_Slip, DragonFly_RELEASE_1_6
Diff to: previous 1.36: preferred, unified
Changes since revision 1.36: +3 -7 lines
* Remove (void) casts for discarded return values.

* Put function types on separate lines.

* Ansify function definitions.

* Remove __P.

In-collaboration-with: Alexey Slynko <slynko@tronet.ru>

Revision 1.36: download - view: text, markup, annotated - select for diffs
Thu Jun 2 23:52:42 2005 UTC (9 years, 4 months ago) by dillon
Branches: MAIN
CVS tags: DragonFly_RELEASE_1_4_Slip, DragonFly_RELEASE_1_4
Diff to: previous 1.35: preferred, unified
Changes since revision 1.35: +62 -61 lines
Remove spl*() calls from netinet, replacing them with critical sections.
A slight rearrangement of COMMON_START() in tcp_usrreq.c was necessary to
ensure that the inp is loaded after  entering the critical section.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Tue Apr 5 07:08:52 2005 UTC (9 years, 6 months ago) by dillon
Branches: MAIN
CVS tags: DragonFly_Stable, DragonFly_RELEASE_1_2_Slip, DragonFly_RELEASE_1_2
Diff to: previous 1.34: preferred, unified
Changes since revision 1.34: +1 -1 lines
Apply same bug fix as last commit to IPV6.

Reported-by: Jeffrey Hsu

Revision 1.34: download - view: text, markup, annotated - select for diffs
Tue Apr 5 05:43:05 2005 UTC (9 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.33: preferred, unified
Changes since revision 1.33: +1 -1 lines
Fix a bug in the distributed PCB wildcardhash code for TCP.   For the SMP
case both the INP_WILDCARD and INP_WILDCARD_MP flags must be set.  The
insertion code was calling in_pcbinswildcardhash_oncpu() instead of
in_pcbinswildcardhash() for the current-cpu case, which leaves the
INP_WILDCARD flag unset.  The wildcard deletion code calls various
oncpu routines which remove the wildcard from the other cpu's hash
tables, then finally calls in_pcbdetach()->in_pcbremlist() on the
originating cpu but this fails to delete the inp because INP_WILDCARD
was not set.

This bug caused the TCP stack to get seriously confused because wildcard
entries with stale inp pointers wind up being left in the hash table.
The bug causes a mix of ignored connection requests (not even an RST),
refused connection requests, successful connection requests, and crashes.

Reported-by: Peter Avalos <pavalos@theshell.com>

Revision 1.33: download - view: text, markup, annotated - select for diffs
Tue Feb 8 22:56:19 2005 UTC (9 years, 8 months ago) by hsu
Branches: MAIN
Diff to: previous 1.32: preferred, unified
Changes since revision 1.32: +18 -18 lines
Now that 'so_pcb' is properly declared as a 'void *', remove a layer of
indirection and directly use 'so->so_pcb' in place of 'sotoinpcb(so)'.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Thu Jan 6 09:14:13 2005 UTC (9 years, 9 months ago) by hsu
Branches: MAIN
Diff to: previous 1.31: preferred, unified
Changes since revision 1.31: +2 -2 lines
Cosmetic cleanups.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Tue Dec 21 02:54:15 2004 UTC (9 years, 10 months ago) by hsu
Branches: MAIN
Diff to: previous 1.30: preferred, unified
Changes since revision 1.30: +12 -12 lines
Clean up the routing and networking code before I parallelize routing.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Thu Dec 16 03:37:30 2004 UTC (9 years, 10 months ago) by dillon
Branches: MAIN
Diff to: previous 1.29: preferred, unified
Changes since revision 1.29: +0 -2 lines
Correct a bug where incoming connections do not properly initialize the
inflight bandwidth calculator.

Reorg the code a bit, removing random initialization elsewhere and putting
it all in one place.

Add an idle check and a pure-ack check.

Reported-by: Dan Nelson <dnelson@allantgroup.com>

Revision 1.29: download - view: text, markup, annotated - select for diffs
Wed Dec 8 23:59:01 2004 UTC (9 years, 10 months ago) by hsu
Branches: MAIN
Diff to: previous 1.28: preferred, unified
Changes since revision 1.28: +2 -2 lines
Cache a pointer the last mbuf in the sockbuf for faster insertion.
Update it on sockbuf insertion and deletion and on user reads.
Add a new sbappendstream() function that inserts in constant time.
Use it for TCP.

Revision 1.28: download - view: text, markup, annotated - select for diffs
Sat Dec 4 06:27:59 2004 UTC (9 years, 10 months ago) by hsu
Branches: MAIN
Diff to: previous 1.27: preferred, unified
Changes since revision 1.27: +33 -4 lines
We have to replicate listening IPv6 sockets in the wildcard table
because they're also used to match incoming IPv4 connections.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Wed Oct 27 03:43:47 2004 UTC (9 years, 11 months ago) by dillon
Branches: MAIN
Diff to: previous 1.26: preferred, unified
Changes since revision 1.26: +11 -5 lines
Fix a NULL pointer dereference panic that occurs when the TCP protocol
stack races against userland while closing a tcp connection.  It is
possible for userland to queue a disconnect request but for the protocol
stack to then receive a packet that causes it to call tcp_drop()->tcp_close()
which also disconnects the inpcb from the tcpcb.  When the protocol stack
then processes the disconnect request it hits the panic because the inpcb
no longer has a tcpcb connected to it.

The bug generally only occured on SMP systems where the latency in intra-cpu
communication opens up the window of opportunity for the bug to occur.

Panic-Reported-by: Adam K Kirchhoff <adamk@voicenet.com>

Revision 1.26: download - view: text, markup, annotated - select for diffs
Wed Aug 11 02:36:22 2004 UTC (10 years, 2 months ago) by dillon
Branches: MAIN
CVS tags: DragonFly_Snap29Sep2004, DragonFly_Snap13Sep2004
Diff to: previous 1.25: preferred, unified
Changes since revision 1.25: +5 -1 lines
Add a state to sanity check tcp_close() to make sure it is not called
twice.

Add a 'cpu' field to the inpcb so the cpu owning a pcb can be made
well-known, for use in later assertions as we move closer to removing
the BGL.

Fix a bug in the closing of listen sockets.  The inp wildcard hash table
removal was being done asynchronously with the freeing of the inp, which
could lead to problems.  Instead of sending messages in parallel to all tcp
protocol threads to remove the wildcard hash we instead chain a single
message through all tcp protocol threads to remove the hash, then detach the
inp at the end of the chain.

There is still an issue with the socket being ripped out from under other
protocol threads which might be trying to accept connections on behalf of
the listen socket which must be resolved before the BGL can be removed (amoung
other things).

Revision 1.25: download - view: text, markup, annotated - select for diffs
Thu Jul 8 22:07:35 2004 UTC (10 years, 3 months ago) by hsu
Branches: MAIN
CVS tags: DragonFly_1_0_REL, DragonFly_1_0A_REL
Diff to: previous 1.24: preferred, unified
Changes since revision 1.24: +50 -1 lines
Add the standard DragonFly copyright notice to go along with mine.

Approved by:	Matt

Revision 1.24: download - view: text, markup, annotated - select for diffs
Fri Jul 2 04:41:01 2004 UTC (10 years, 3 months ago) by hsu
Branches: MAIN
Diff to: previous 1.23: preferred, unified
Changes since revision 1.23: +1 -0 lines
Update some of my copyright notices before we officially publish
DragonFlyBSD in Release 1.0.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Thu May 20 04:32:59 2004 UTC (10 years, 5 months ago) by hsu
Branches: MAIN
CVS tags: DragonFly_1_0_RC1
Diff to: previous 1.22: preferred, unified
Changes since revision 1.22: +2 -2 lines
Put snd_recover in the same cache line as snd_una.  Make room in the
snd_una cache line by coalescing the t_force field into t_flags and moving
snd_up into the old t_force slot.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Sat May 8 02:38:36 2004 UTC (10 years, 5 months ago) by dillon
Branches: MAIN
Diff to: previous 1.21: preferred, unified
Changes since revision 1.21: +1 -0 lines
Fix IPV6 listen().  It was simply a matter of a missing
in_pcbinswildcardhash() call.

Submitted-by: Jeffrey Hsu <hsu@freebsd.org>
Reported-by: "Erik P. Skaalerud" <erik@pentadon.com> and others

Revision 1.21: download - view: text, markup, annotated - select for diffs
Wed Apr 28 08:00:35 2004 UTC (10 years, 5 months ago) by hsu
Branches: MAIN
Diff to: previous 1.20: preferred, unified
Changes since revision 1.20: +1 -0 lines
Remember if an inpcb was entered into the wildcard table to save
some cycles when a connection is closed.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Sat Apr 24 04:47:29 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.19: preferred, unified
Changes since revision 1.19: +48 -6 lines
Replicate the TCP listen table to give each cpu its own copy.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Sat Apr 24 00:33:15 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.18: preferred, unified
Changes since revision 1.18: +17 -23 lines
Use a message structure off the stack for a synchronous call.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Thu Apr 22 04:31:27 2004 UTC (10 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.17: preferred, unified
Changes since revision 1.17: +1 -9 lines
The temporary message allocated to execute a connect request is not
optional (M_NOWAIT -> M_INTWAIT).

Revision 1.17: download - view: text, markup, annotated - select for diffs
Wed Apr 21 18:13:56 2004 UTC (10 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.16: preferred, unified
Changes since revision 1.16: +2 -1 lines
Fix a netmsg memory leak in the ARP code.  Adjust all ms_cmd function
dispatches to return a proper error code.

Reported-by: multiple people

Revision 1.16: download - view: text, markup, annotated - select for diffs
Tue Apr 20 01:52:28 2004 UTC (10 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.15: preferred, unified
Changes since revision 1.15: +14 -9 lines
Revamp the initial lwkt_abortmsg() support to normalize the abstraction.  Now
a message's primary command is always processed by the target even if an
abort is requested before the target has retrieved the message from the
message port.  The message will then be requeued and the abort command copied
into lwkt_msg_t->ms_cmd.  Thus the target is always guarenteed to see the
original message and then a second, abort message (the same message with
ms_cmd = ms_abort) regardless of whether the abort was requested before
or after the target retrieved the original message.

ms_cmd is now an opaque union.  LWKT makes no assumptions as to its contents.
The NET code now stores nm_handler in ms_cmd as a function vector, and
nm_handler has been removed from all netmsg structures.

The ms_cmd function vector support nominally returns an integer error code
which is intended to support synchronous/asynchronous optimizations in the
future (to bypass messaging queueing and dequeueing in those situations
where they can be bypassed, without messing up the messaging abstraction).

The connect() predicate for which signal/abort support was added in the last
commit now uses the new abort mechanism.  Instead of having the handler
function check whether a message represents an abort or not, a different
handler vector is stored in ms_abort and run when an abort is processed
(making for an easy separation of function).

The large netmsg switch has been replaced by individual function vectors
using the new ms_cmd function vector support.  This will soon be removed
entirely in favor of direct assignment of LWKT-aware PRU vectors to the
messages command vector.

NOTE ADDITIONAL: eventually the SYSCALL, VFS, and DEV interfaces will use
the new message opaque ms_cmd 'function vector' support instead of a
command index.

Work by: Matthew Dillon and Jeffrey Hsu

Revision 1.15: download - view: text, markup, annotated - select for diffs
Tue Apr 13 07:10:34 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.14: preferred, unified
Changes since revision 1.14: +0 -1 lines
Don't need opt_tcp_input.h for TCP_DISTRIBUTED_TCBINFO anymore.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Tue Apr 13 05:23:13 2004 UTC (10 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.13: preferred, unified
Changes since revision 1.13: +0 -4 lines
get rid of TCP_DISTRIBUTED_TCBINFO, it only added confusion.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Sat Apr 10 00:10:42 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.12: preferred, unified
Changes since revision 1.12: +98 -31 lines
Send connects to the right processor.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Sat Apr 10 00:07:16 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.11: preferred, unified
Changes since revision 1.11: +1 -0 lines
Add header file to pull in the setting of the TCP_DISTRIBUTED_TCBINFO option.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Mon Apr 5 17:47:01 2004 UTC (10 years, 6 months ago) by dillon
Branches: MAIN
Diff to: previous 1.10: preferred, unified
Changes since revision 1.10: +7 -1 lines
per-cpu tcbinfo[]s aren't ready for prime time yet.  The tcbinfo is assigned
at tcp_attach time, but there is insufficient information available at this
time to select the hash table and the wrong one gets assigned N-1 out of N
times on MP systems (N = number of cpus), causing outgoing tcp connections
to fail.

An an option, TCP_DISTRIBUTED_TCBINFO, so MP-safe tcbinfo distribution can
continue to be developed without impacting users.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Wed Mar 31 10:23:10 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.9: preferred, unified
Changes since revision 1.9: +3 -2 lines
Only enter into wildcard hash table if bind succeeds.

Revision 1.9: download - view: text, markup, annotated - select for diffs
Wed Mar 31 00:43:09 2004 UTC (10 years, 6 months ago) by hsu
Branches: MAIN
Diff to: previous 1.8: preferred, unified
Changes since revision 1.8: +1 -2 lines
Only enter wildcard sockets into the wildcard hash table.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Mon Mar 8 19:44:32 2004 UTC (10 years, 7 months ago) by hsu
Branches: MAIN
Diff to: previous 1.7: preferred, unified
Changes since revision 1.7: +4 -1 lines
Partition the TCP connection table.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Fri Mar 5 16:57:15 2004 UTC (10 years, 7 months ago) by hsu
Branches: MAIN
Diff to: previous 1.6: preferred, unified
Changes since revision 1.6: +7 -6 lines
Once we distribute socket protocol processing requests to different
processors, we no longer have a process context to refer to, so
eliminate the use of curproc in soreserve() by passing the sockbuf
resource limit all the down from the system call code to sbreserve().

Eliminate the use of curproc in unp_attach() by passing down the
fields it needs from the proc structure.  Define a pru_attach_info
structure to hold the information the attach usrreq function requires.

The thread argument to in_pcballoc() is unused, so we don't need
to pass a thread structure down to in_pcballoc().

Revision 1.6: download - view: text, markup, annotated - select for diffs
Thu Mar 4 01:02:05 2004 UTC (10 years, 7 months ago) by hsu
Branches: MAIN
Diff to: previous 1.5: preferred, unified
Changes since revision 1.5: +20 -19 lines
Split out wildcarded sockets from the connection hash table.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Sat Aug 23 11:18:00 2003 UTC (11 years, 2 months ago) by rob
Branches: MAIN
Diff to: previous 1.4: preferred, unified
Changes since revision 1.4: +7 -7 lines
if ipv6 doesnt need oldstyle prototypes maybe its time we took them out
of ipv4's code

Revision 1.4: download - view: text, markup, annotated - select for diffs
Sat Jul 26 21:00:04 2003 UTC (11 years, 3 months ago) by rob
Branches: MAIN
Diff to: previous 1.3: preferred, unified
Changes since revision 1.3: +4 -4 lines
Register keyword removal

Approved by: Matt Dillon

Revision 1.3: download - view: text, markup, annotated - select for diffs
Wed Jun 25 03:56:04 2003 UTC (11 years, 4 months ago) by dillon
Branches: MAIN
CVS tags: PRE_MP
Diff to: previous 1.2: preferred, unified
Changes since revision 1.2: +32 -40 lines
proc->thread stage 4: rework the VFS and DEVICE subsystems to take thread
pointers instead of process pointers as arguments, similar to what FreeBSD-5
did.  Note however that ultimately both APIs are going to be message-passing
which means the current thread context will not be useable for creds and
descriptor access.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Tue Jun 17 04:28:51 2003 UTC (11 years, 4 months ago) by dillon
Branches: MAIN
Diff to: previous 1.1: preferred, unified
Changes since revision 1.1: +1 -0 lines
Add the DragonFly cvs id and perform general cleanups on cvs/rcs/sccs ids.  Most
ids have been removed from !lint sections and moved into comment sections.

Revision 1.1: download - view: text, markup, annotated - select for diffs
Tue Jun 17 02:55:35 2003 UTC (11 years, 4 months ago) by dillon
Branches: MAIN
CVS tags: FREEBSD_4_FORK
import from FreeBSD RELENG_4 1.51.2.17

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options