| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Requested by: hsu
Notes:
svn path=/head/; revision=97658
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o Add a mutex (sb_mtx) to struct sockbuf. This protects the data in a
socket buffer. The mutex in the receive buffer also protects the data
in struct socket.
o Determine the lock strategy for each members in struct socket.
o Lock down the following members:
- so_count
- so_options
- so_linger
- so_state
o Remove *_locked() socket APIs. Make the following socket APIs
touching the members above now require a locked socket:
- sodisconnect()
- soisconnected()
- soisconnecting()
- soisdisconnected()
- soisdisconnecting()
- sofree()
- soref()
- sorele()
- sorwakeup()
- sotryfree()
- sowakeup()
- sowwakeup()
Reviewed by: alfred
Notes:
svn path=/head/; revision=96972
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Requested by: bde
Since locking sigio_lock is usually followed by calling pgsigio(),
move the declaration of sigio_lock and the definitions of SIGIO_*() to
sys/signalvar.h.
While I am here, sort include files alphabetically, where possible.
Notes:
svn path=/head/; revision=95759
|
|
|
|
|
|
|
|
|
|
| |
most cases NULL is passed, but in some cases such as network driver locks
(which use the MTX_NETWORK_LOCK macro) and UMA zone locks, a name is used.
Tested on: i386, alpha, sparc64
Notes:
svn path=/head/; revision=93818
|
|
|
|
| |
Notes:
svn path=/head/; revision=92745
|
|
|
|
| |
Notes:
svn path=/head/; revision=91458
|
|
|
|
|
|
|
|
|
| |
us to load protocols at runtime, and avoids the use of common variables.
Also fix the ip6_intrq assignment so that it works at all.
Notes:
svn path=/head/; revision=89069
|
|
|
|
|
|
|
|
|
|
| |
vnodes. This will hopefully serve as a base from which we can
expand the MP code. We currently do not attempt to obtain any
mutex or SX locks, but the door is open to add them when we nail
down exactly how that part of it is going to work.
Notes:
svn path=/head/; revision=86487
|
|
|
|
|
|
|
|
|
| |
is what they should be. As the returned mbuf is already checked for
failure of M_PREPEND even in the wait case, nothing more to be done
here.
Notes:
svn path=/head/; revision=75217
|
|
|
|
|
|
|
|
|
|
| |
fondling implementation details.
Created with: sed(1)
Reviewed by: md5(1)
Notes:
svn path=/head/; revision=71999
|
|
|
|
|
|
|
|
| |
Submitted by: josh@zipperup.org
Submitted by: Robert Drehmel <robd@gmx.net>
Notes:
svn path=/head/; revision=69781
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
before adding/removing packets from the queue. Also, the if_obytes and
if_omcasts fields should only be manipulated under protection of the mutex.
IF_ENQUEUE, IF_PREPEND, and IF_DEQUEUE perform all necessary locking on
the queue. An IF_LOCK macro is provided, as well as the old (mutex-less)
versions of the macros in the form _IF_ENQUEUE, _IF_QFULL, for code which
needs them, but their use is discouraged.
Two new macros are introduced: IF_DRAIN() to drain a queue, and IF_HANDOFF,
which takes care of locking/enqueue, and also statistics updating/start
if necessary.
Notes:
svn path=/head/; revision=69152
|
|
|
|
|
|
|
|
|
| |
It was not discussed and should probably not happen.
Requested by: msmith and others
Notes:
svn path=/head/; revision=60938
|
|
|
|
|
|
|
|
|
|
|
| |
the type argument to *_HEAD and *_ENTRY is a struct.
Suggested by: phk
Reviewed by: phk
Approved by: mdodd
Notes:
svn path=/head/; revision=60833
|
|
|
|
| |
Notes:
svn path=/head/; revision=59874
|
|
|
|
|
|
|
|
|
|
| |
#ifdefs. Clean out unused netisr's and leftover netisr linker set gunk.
Tested on x86 and alpha, including world.
Approved by: jkh
Notes:
svn path=/head/; revision=57178
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
include this in all kernels. Declare some const *intrq_present
variables that can be checked by a module prior to using *intrq
to queue data.
Make the if_tun module capable of processing atm, ip, ip6, ipx,
natm and netatalk packets when TUNSIFHEAD is ioctl()d on.
Review not required by: freebsd-hackers
Notes:
svn path=/head/; revision=56555
|
|
|
|
|
|
|
|
|
| |
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot). This is consistant with the other
BSD's who made this change quite some time ago. More commits to come.
Notes:
svn path=/head/; revision=55205
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for possible buffer overflow problems. Replaced most sprintf()'s
with snprintf(); for others cases, added terminating NUL bytes where
appropriate, replaced constants like "16" with sizeof(), etc.
These changes include several bug fixes, but most changes are for
maintainability's sake. Any instance where it wasn't "immediately
obvious" that a buffer overflow could not occur was made safer.
Reviewed by: Bruce Evans <bde@zeta.org.au>
Reviewed by: Matthew Dillon <dillon@apollo.backplane.com>
Reviewed by: Mike Spengler <mks@networkcs.com>
Notes:
svn path=/head/; revision=41514
|
|
|
|
|
|
|
| |
about unused variables, labels and other lint.
Notes:
svn path=/head/; revision=40648
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FreeBSD/alpha. The most significant item is to change the command
argument to ioctl functions from int to u_long. This change brings us
inline with various other BSD versions. Driver writers may like to
use (__FreeBSD_version == 300003) to detect this change.
The prototype FreeBSD/alpha machdep will follow in a couple of days
time.
Notes:
svn path=/head/; revision=36735
|
|
|
|
| |
Notes:
svn path=/head/; revision=33181
|
|
|
|
| |
Notes:
svn path=/head/; revision=33134
|
|
|
|
| |
Notes:
svn path=/head/; revision=33108
|
|
|
|
|
|
|
|
|
| |
natm_pcb.c:
Include <sys/socketvar.h> which will be used when M_PCB is declared
in the right place.
Notes:
svn path=/head/; revision=31885
|
|
|
|
| |
Notes:
svn path=/head/; revision=30813
|
|
|
|
|
|
|
|
|
|
|
| |
Distribute all but the most fundamental malloc types. This time I also
remembered the trick to making things static: Put "static" in front of
them.
A couple of finer points by: bde
Notes:
svn path=/head/; revision=30354
|
|
|
|
| |
Notes:
svn path=/head/; revision=29366
|
|
|
|
|
|
|
| |
<sys/malloc.h> (unless we only use the bogusly shared M*WAIT flags).
Notes:
svn path=/head/; revision=29024
|
|
|
|
|
|
|
|
|
|
|
| |
socket addresses in mbufs. (Socket buffers are the one exception.) A number
of kernel APIs needed to get fixed in order to make this happen. Also,
fix three protocol families which kept PCBs in mbufs to not malloc them
instead. Delete some old compatibility cruft while we're at it, and add
some new routines in the in_cksum family.
Notes:
svn path=/head/; revision=28270
|
|
|
|
| |
Notes:
svn path=/head/; revision=27845
|
|
|
|
| |
Notes:
svn path=/cvs2svn/branches/CRANOR/; revision=25605
|
|
Notes:
svn path=/cvs2svn/branches/CRANOR/; revision=25603
|