121782 Commits

Author SHA1 Message Date
pav
9a16f30d45 - Add ports-net-p2p collection 2006-01-28 11:08:47 +00:00
dds
6ea6067b3e Never do programs contain so few bugs as when no debugging tools
are available.
                -- Niklaus Wirth

Pointed by: Panagiotis Louridas
2006-01-28 09:19:20 +00:00
kris
a70f9992d4 Back out r1.653; it turns out that the race (or at least the printf) is
actually not hard to trigger, and it can cause a lot of console spam.

Approved by:	kan
2006-01-28 03:06:35 +00:00
brd
93d466e244 - Mention that users need to be in the wheel group to `su - root' by default, and how to change it.
PR:		docs/70616
Submitted by:	Jilles Tjoelker <jilles at stack dot nl>
Reviewed by:	ru@
Approved by:	ceri@
MFC after:	3 days
2006-01-28 01:11:11 +00:00
imp
7b10eaebae lock unused when INVARIANTS not defined, so don't declare it then 2006-01-28 00:49:31 +00:00
jhb
bf16c50390 Add a basic reader/writer lock implementation to the kernel. This
implementation is by no means perfect as far as some of the algorithms
that it uses and the fact that it is missing some functionality (try
locks and upgrades/downgrades are not there yet), however it does seem
to work in my local testing.  There is more detail in the comments in the
code, but the short version follows.

A reader/writer lock is very much like a regular mutex: it cannot be held
across a voluntary sleep; it can be acquired in an interrupt thread; if
the lock is held by a writer then the priority of any threads that block
on the lock will be lent to the owner; the simple case lock operations all
are done in a single atomic op.  It also shares some similiarities
with sx locks: it supports reader/writer semantics (multiple readers,
but single writers); readers are allowed to recurse, but writers are not.

We can extend this implementation further by either improving algorithms
or adding new functionality, but this should at least give us a base to
work with now.

Reviewed by:	arch (in theory)
Tested on:	i386 (4 cpu box with a kernel module that used 4 threads
		that randomly chose between read locks and write locks
		that ran w/o panicing for over a day solid.  It usually
		panic'd within a few seconds when there were bugs during
		testing. :)  The kernel module source is available on
		request.)
2006-01-27 23:13:26 +00:00
jhb
d9899f5d16 Whitespace. 2006-01-27 23:06:08 +00:00
jhb
76d6a7a50d Oops, commit missed file from the previous change to enable multiple
queues in turnstiles.  Add a new thread member td_tsqueue which contains
the sub-queue of a turnstile that a thread is on when it is blocked on a
turnstile.
2006-01-27 23:04:43 +00:00
jhb
752dede518 - Add support for having both a shared and exclusive queue of threads in
each turnstile.  Also, allow for the owner thread pointer of a turnstile
  to be NULL.  This is needed for the upcoming reader/writer lock
  implementation.
- Add a new ddb command 'show turnstile' that will look up the turnstile
  associated with the given lock argument and display useful information
  like the list of threads blocked on each queue, etc.  If there isn't an
  active turnstile for a lock at the specified address, then the function
  will see if there is an active turnstile at the specified address and
  display info about it if so.
- Adjust the mutex code to handle the turnstile API changes.

Tested on:	i386 (all), alpha, amd64, sparc64 (1 and 3)
2006-01-27 22:42:12 +00:00
jhb
6160bb7d84 Add a new ddb command 'show sleepq'. It takes a wait channel as an
argument and looks for a sleep queue associated with that wait channel.
If it finds one it will display information such as the list of threads
sleeping on that queue.  If it can't find a sleep queue for that wait
channel, then it will see if that address matches any of the active
sleep queues.  If so, it will display information about the sleepq at the
specified address.
2006-01-27 22:24:07 +00:00
jhb
2abda0c117 Call WITNESS_CHECK() in the page fault handler and immediately assume it
is a fatal fault if we are holding any non-sleepable locks.  This should
cut down on the number of bogus LORs we currently get when the kernel
panics due to a NULL (or bogus) pointer dereference that goes wandering
off into the VM system which tries to acquire locks and then kicks off
the spurious LORs.  This should probably be ported to all the archs at
some point.

Tested on:	i386
2006-01-27 22:22:10 +00:00
jhb
9b143bcf62 Add a new macro wrapper WITNESS_CHECK() around the witness_warn() function.
The difference between WITNESS_CHECK() and WITNESS_WARN() is that
WITNESS_CHECK() should be used in the places that the return value of
witness_warn() is checked, whereas WITNESS_WARN() should be used in places
where the return value is ignored.  Specifically, in a kernel without
WITNESS enabled, WITNESS_WARN() evaluates to an empty string where as
WITNESS_CHECK evaluates to 0.  I also updated the one place that was
checking the return value of WITNESS_WARN() to use WITNESS_CHECK.
2006-01-27 22:20:15 +00:00
jhb
a7d556d07e Add a new sysctl, debug.ktr.clear. If you write a non-zero value to this
sysctl then it will clear the KTR buffer.  Note that if you have active
KTR traces at the same time as a clear operation the behavior is undefined,
though it shouldn't panic.
2006-01-27 22:17:31 +00:00
jkim
52d005c3fb - Hide 'incorrect geometry warning' in non-interactive mode. A user should
know what they are doing in non-interactive mode.  Less scarier warning
goes to debugging info instead.
- Print sanitized geometry to debugging info.
2006-01-27 21:41:49 +00:00
cognet
c2e2425399 Make sure b_vp and b_bufobj are NULL before calling relpbuf(), as it asserts
they are. They should be NULL at this point, except if we're coming from
swapdev_strategy().
It should only affect the case where we're swapping directly on a file over
NFS.
2006-01-27 21:11:50 +00:00
cognet
c5069da841 Try harder not to recurse. 2006-01-27 21:07:04 +00:00
alc
c5764c76fc Style: Add blank line after local variable declarations. 2006-01-27 21:06:37 +00:00
cperciva
219b28b1e3 Add some wisdom from Garrett Wollman concerning error codes returned by
system calls.
2006-01-27 21:06:19 +00:00
jkim
2696c9b917 Add `mediaOpen' function. This function mounts selected media device.
For example, you can dynamically generate and load configuration file
depending on the hardware configuration with the following template:

	mediaSetCDROM
	mediaOpen
	command='/dist/rescue/sh /dist/scripts/install.sh'
	system
	mediaClose
	configFile=/tmp/generated.cfg
	loadConfig

Now we have full access to files on the media before installation begins.
2006-01-27 21:00:31 +00:00
imp
40c7d835b9 Have a function pointer to the routine to call for writing an mbuf
into the card's memory.

# this eliminates a more of the ifdef soup in if_ed and if_edvar

# I've fixed the cbus drivers, but can't test them all easily.

If I've broken anything, please let me know.
2006-01-27 19:10:13 +00:00
mlaier
33a996340a Document the user/group LOR in our sample pf.conf
Submitted by:	Devon H. O'Dell
2006-01-27 17:16:20 +00:00
harti
9bf5db07ee The .Nm macro prints Open_Disk() instead of libdisk, so use an explicite
argument to get 'libdisk'. Also bump the date of the man page.
2006-01-27 16:38:05 +00:00
harti
8200de5dea Forced commit because the log message in the previous commit was wrong.
Warn people that this library should not be used for anything new.
2006-01-27 16:35:45 +00:00
harti
8c7768240b Revert 1.45 now that snmp_hostres uses libgeom. 2006-01-27 16:32:13 +00:00
cognet
b1d0cfd746 Merge a bunch of changes that where done in tty_pty.c after tty_pts.c was
forked from it, but missed from some reason.
2006-01-27 15:13:40 +00:00
cperciva
abe2470791 Merge from accidental commit to RELENG_5:
Correctly identify the host and port values on a failed
  getaddrinfo lookup.
2006-01-27 14:42:15 +00:00
glebius
f0f163f63f Make an example command correct and copyable to terminal.
Submitted by:	ru
2006-01-27 11:56:59 +00:00
glebius
3e2163d390 Update NGM_PPPOE_GETMODE and NGM_PPPOE_SETMODE descriptions, since
new D-Link compat mode is introduced.
2006-01-27 11:28:32 +00:00
pjd
4b80a65bfe Call NDFREE() only when vn_open() succeeded.
MFC after:	3 days
2006-01-27 11:27:55 +00:00
pjd
26c98c76f9 Grr. Backout previous change. vn_open_cred() will call NDFREE() on failure. 2006-01-27 11:25:06 +00:00
pjd
bc66ded70e Don't forget to call NDFREE(9) in case of vn_open_cred() failure.
MFC after:	3 days
2006-01-27 11:19:53 +00:00
glebius
ac52c99fe4 o Introduce D-Link compat mode, that is default to off and can be set
by NGM_PPPOE_SETMODE message. When D-Link compat mode is on, we will
  broadcast PADI with empty Service-Name to all listening hooks.
o Rewrite the compatibility options. Before we had two modes - standard
  and non-standard (aka 3Com). Now we have standard mode and two compat
  flags, that can be combined.
o Be consistent and do s/STUPID/3COM/g. I don't say that 3Com mode isn't
  stupid, just want to make code easier to read.
2006-01-27 10:56:22 +00:00
jmg
28b38f3625 add an option BKTR_USE_FREEBSD_SMBUS that enables compiling the module
with same option...

MFC after:	3 days
2006-01-27 09:08:32 +00:00
rik
f3230d3762 Initial import of ce(4) driver for Cronyx Tau-PCI/32 adapters.
Not yet connected to the build.
2006-01-27 09:02:09 +00:00
ume
31d961e34a make wall(1) work with pts. 2006-01-27 08:52:14 +00:00
jmg
332b73e64a if we are compiling with smbus support, properly depend upon the iic and
smbus modules, otherwise as a module you can't kldload bktr...

MFC after:	3 days
2006-01-27 08:42:48 +00:00
alc
8db5cab2c2 Use the new macros abstracting the page coloring/queues implementation.
(There are no functional changes.)
2006-01-27 08:35:32 +00:00
imp
6efae9acb2 Create mediachg functions for the 3c503 and hpp cards. This is used
to properly configure the right interface to use.

Also call the mediachg function when we set flags UP and are already
running.  If this were a pure ifmedia driver, we'd not need to do this
since we'd be ignoring the linkX flags.

This reduces the number of ifdefs to support sub-devices a little as a
nice side effect.  It also reduces the number of hpp interfaces
exposed by 33%.
2006-01-27 08:25:47 +00:00
imp
c4eb978faf Style(9) issue: return (foo); 2006-01-27 08:10:36 +00:00
davidxu
a8cf0ae648 Just like dofilewrite(), call bwillwrite before fo_write. 2006-01-27 08:02:25 +00:00
imp
f16fb54318 Transition from ALTPHYS to LINK2. We already document in the ed(4)
man page that the ifconfig option link2 is used to disable the AUI
transceiver on the 3com boards (should also say HP PC Lan+).  This
makes the connection clearer.

Add a note about why we set this flag prior to attaching the device.
We never set or clear the flag later, only test it.  There can be no
races here, but this might be asthetically displeasing to some.  Also
note that we may no longer need to have this knob at all as we may be
able to do it with the more sophisticated rc.d scripts we have today I
think the only reason it is there is because we didn't used to allow
its proper setting when configured to get the IP address via DHCP.

I'll note that this would be better handled by using ifmedia for all
ed cards, not just those with a miibus...
2006-01-27 08:00:40 +00:00
imp
b5beaffa5b minor nit in comment about what kind of flags these are 2006-01-27 07:51:26 +00:00
jasone
4018cc9c9b Remove unwarranted uses of 'goto'. 2006-01-27 07:46:22 +00:00
alc
d2566b1431 Use the new macros abstracting the page coloring/queues implementation.
(There are no functional changes.)
2006-01-27 07:28:51 +00:00
jasone
7d53fc1d66 Add NO_MALLOC_EXTRAS, so that various extra features that can cause
performance degradation can be disabled via something like the following
in /etc/malloc.conf:

	CFLAGS+=-DNO_MALLOC_EXTRAS

Suggested by:	deischen
2006-01-27 04:42:10 +00:00
jasone
94601bfc12 Fix the type of a statistics counter (unsigned --> unsigned long). 2006-01-27 04:36:39 +00:00
davidxu
7a2375b9e4 return final error code in aio_return rather than a hardcoded 0. 2006-01-27 04:14:16 +00:00
jkoshy
6ddca50174 Note that options are set using sh(1) syntax.
MFC after:	3 days
2006-01-27 02:46:08 +00:00
jasone
efa3cf2bb3 Clean up statistics gathering and printing. 2006-01-27 02:36:44 +00:00
ariff
a587c07aac Enable full duplex operation since it works and to solve panic issue.
PR:		kern/91992
MFC after:	2 days
2006-01-27 02:01:27 +00:00