Commit Graph

110427 Commits

Author SHA1 Message Date
simon
ccd5b6eb0d - Add a HARDWARE section which lists supported devices.
- "device sound" does not pull in sound device drivers (like "device
  pcm" used to do), so do not mention that option.
- Make the document title more like the title in the other sound
  device drivers.

MFC after:	1 week
2004-12-14 16:17:12 +00:00
simon
fa3ecfedb3 Add manual page for snd_maestro(4).
Submitted by:	Jorge Mario G. Mazo <jgutie11@eafit.edu.co> (original version)
PR:		docs/74546
MFC after:	1 week
2004-12-14 16:11:14 +00:00
rse
b4c7840f00 Improve the RC framework for the clean booting/shutdown of Jails:
1. Feature: for flexibility reasons and as a prerequisite to clean
   shutdowns, allow the configuration of a stop/shutdown command
   via rc.conf variable "jail_<name>_exec_stop" in addition to the
   start/boot command (rc.conf variable "jail_<name>_exec_start"). For
   backward compatibility reasons, rc.conf variable "jail_<name>_exec"
   is still supported, too.

2. Debug: Add the used boot/shutdown commands to the debug output of
   the /etc/rc.d/jail script, too.

3. Security: Run the Jail start/boot command in a cleaned environment
   to not leak information from the host to the Jail during startup.

4. Feature: Run the Jail stop/shutdown command "jail_<name>_exec_stop" on
   "/etc/rc.d/jail stop <name>" to allow a graceful shutdown of the Jail
   before its processes are just killed.

5. Bugfix: When killing the remaining Jail processes give the processes
   time to actually perform their termination sequence. Without this the
   subsequent umount(8) operations usually fail because the resources
   are still in use. Additionally, if after trying to TERM-inate the
   processes there are still processes hanging around, finally just KILL
   them.

6. Bugfix: In rc.shutdown, if running inside a Jail, skip the /etc/rc.d/*
   scripts which are flagged with the KEYWORD "nojail" to allow the
   correct operation of rc.shutdown under jail_<name>_exec_stop="/bin/sh
   /etc/rc.shutdown". This is analogous to what /etc/rc does inside a Jail.

Now the following typical host-configuration for two Jails works as
expected and correctly boots and shutdowns the Jails:

-----------------------------------------------------------
#  /etc/rc.conf:
jail_enable="YES"
jail_list="foo bar"
jail_foo_rootdir="/j/foo"
jail_foo_hostname="foo.example.com"
jail_foo_ip="192.168.0.1"
jail_foo_devfs_enable="YES"
jail_foo_mount_enable="YES"
jail_foo_exec_start="/bin/sh /etc/rc"
jail_foo_exec_stop="/bin/sh /etc/rc.shutdown"
jail_bar_rootdir="/j/bar"
jail_bar_hostname="bar.example.com"
jail_bar_ip="192.168.0.2"
jail_bar_devfs_enable="YES"
jail_bar_mount_enable="YES"
jail_bar_exec_start="/path/to/kjailer -v"
jail_bar_exec_stop="/bin/sh -c 'killall kjailer && sleep 60'"
-----------------------------------------------------------
#  /etc/fstab.foo
/v/foo /j/foo/v/foo nullfs rw 0 0
-----------------------------------------------------------
#  /etc/fstab.bar
/v/bar /j/bar/v/bar nullfs rw 0 0
-----------------------------------------------------------

Reviewed by:	freebsd-hackers
MFC after:	2 weeks
2004-12-14 14:36:35 +00:00
simon
3bb1636412 Add snd_audiocs(4). 2004-12-14 13:12:29 +00:00
simon
c76ba9563e - Update usage to reflect the current reality.
- Fix a bug where manual pages which had a "_" in their name did not
  get proper architecture setting.

MFC after:	1 week
2004-12-14 13:07:58 +00:00
maxim
8e599b039a Add NetBSD 2.0. 2004-12-14 12:30:43 +00:00
jeff
c94fadce10 - Garbage collect several unused members of struct kse and struce ksegrp.
As best as I can tell, some of these were never used.
2004-12-14 10:53:55 +00:00
jeff
422a07b8e1 - In kseq_choose(), don't recalculate slice values for processes with a
nice of 0.  Doing so can cause an infinite loop because they should be
   running, but a nice -20 process could prevent them from doing so.
 - Add a new flag KEF_PRIOELEV to flag a thread that has had its priority
   elevated due to priority propagation.  If a thread has had its priority
   elevated, we assume that it must go on the current queue and it must
   get a slice.
 - In sched_userret() if our priority was elevated and we shouldn't have
   a timeslice, yield here until we should.

Found/Tested by:	glebius
2004-12-14 10:34:27 +00:00
phk
ccf97ed87f Be a bit more assertive about vnode bypass. 2004-12-14 09:32:18 +00:00
ru
2c72e53bd3 Minor mdoc(7) tweaks, excellent work Nate! 2004-12-14 09:24:48 +00:00
phk
8a94ce5ea1 Add a new kind of reference count (fd_holdcnt) to struct filedesc
which holds on to just the data structure and the mutex.  (The
existing refcount (fd_refcnt) holds onto the open files in the
descriptor.)

The fd_holdcnt is protected by fdesc_mtx, fd_refcnt by FILEDESC_LOCK.

Add fdhold(struct proc *) which gets a hold on the filedescriptors of
the specified proc..

Add fddrop(struct filedesc *) which drops the fd_holdcnt and if zero
destroys the mutex and frees the memory.

Initialize the fd_holdcnt to one in fdinit().  Normal operations on
the filedesc structure will not change it.

In fdfree() use fddrop() to dispose of the mutex and structure.  Hold
the FILEDESC_LOCK() until we have cleaned out the contents and carefully
set the fields to null values during cleanup.

Use fdhold()/fddrop() in mountcheckdirs() and sysctl_kern_file().
2004-12-14 09:09:51 +00:00
ru
8a05c599fb mdoc(7) nit: Removed redundant .Pp call. 2004-12-14 09:06:44 +00:00
phk
8986ab0ecf Make fdesc_mtx private to kern_descrip.c now that the flock has come home. 2004-12-14 08:44:51 +00:00
phk
b124f6c510 Move the checkdirs() function from vfs_mount.c to kern_descrip.c and
call it mountcheckdirs().
2004-12-14 08:23:18 +00:00
glebius
1aeacc6d75 - Use ng_callout() instead of timeout.
- Schedule next timeout *after* finishing job of the current one.
- Remove spl(9) calls.

Tested by:	ru
Reviewed by:	julian
2004-12-14 08:05:29 +00:00
phk
a410ae531e Make LINT compile.
When leaving functions for ddb use don't make them static: it makes
gcc think they are unused.

Shouldn't this be in #ifdef DDB anyway ?
2004-12-14 07:46:28 +00:00
phk
e622b9bcba Add new function fdunshare() which encapsulates the necessary light magic
for ensuring that a process' filedesc is not shared with anybody.

Use it in the two places which previously had private implmentations.

This collects all fd_refcnt handling in kern_descrip.c
2004-12-14 07:20:03 +00:00
julian
ccc36e1e1b A bunch more whitespace and formatting diff reductions for NetBSD.
Obtained from:	NetBSD
MFC after:	1 week
2004-12-14 04:47:24 +00:00
yongari
2b120c32d4 Add manual page for snd_audiocs(4).
Reminded by:	trhodes
MFC after:	1 week
2004-12-14 04:06:04 +00:00
julian
cc6f359e9f Don't abandon ship just because the number of companions doesn't seem correct.
Obtained from:	NetBSD
MFC after:	1 week
2004-12-14 04:05:10 +00:00
julian
8c60563127 Slightly reorganise part of the ohci_softintr() function
to better keep track of the total amoutn transferred during a
transfer. Seems similar to some code in the NetBSD version.
I notice they have incorporated matches from him so I don't know which
direction it went.

Submitted by:	damien.bergamini@free.fr
Obtained from:	patches to make the ueagle driver work
MFC after:	1 week
2004-12-14 03:59:24 +00:00
julian
6846f0b857 Small formatting change..
Move a declaration to the same place as in NetBSD.

Obtained from:	NetBSD
MFC after:	1 week
2004-12-14 03:54:08 +00:00
njl
d2032ba637 Checkpoint reworking the man page to be more useful to non-developers,
document some debug output variables, etc.  Mdoc assistance welcome.
2004-12-14 01:07:44 +00:00
njl
1af716f4fc Unify ACPI_DEBUG support for all OEM drivers under ACPI_OEM. Since more than
one will never be supported on the same platform, this does not hurt
debugging.

MFC after:	3 days
2004-12-13 23:31:46 +00:00
imp
6eba135a35 The format of the MLINKS entries is pairwise, not MLINKS += wise. So
list kernel_mount.9 the required number of times to allow make
installworld to complete.
2004-12-13 23:09:19 +00:00
rik
4940a86594 Make code MPSAFE.
You could turn this off by debug.mpsafenet=0 for full network
stack or via debug.{cp|cx|ctau}.mpsafenet for cp(4), cx(4) and
ctau(4) accordingly.

MFC after:	10 days
2004-12-13 22:07:23 +00:00
gallatin
6144e74fca Make kttcp work in -stable (and -current)
- Removed kttcp_sosend() and kttcp_soreceive() in favor of using
  sosend() / soreceive() with UIO_NOCOPY.  The locking changes in the
  socket layer make merging the kttcp_so* and the so* routines a real
  pain.  It was a lot easier to just use the integrated routines.

- Eliminated KTTCP_MAX_XMIT restrictions on send and receive sizes
  because I encountered no problems with streams larger than MAX_INT.
  MAX_INT bytes is only good for a few seconds at 4Gb/sec ;)

- Removed Giant from send / recv routines.

- Fixed character device protos, cdevsw init, etc, to work in 5.x /
  6.x

Reviewed by: sam
MFC after: 1 week
2004-12-13 20:40:16 +00:00
trhodes
ac3e7ba526 Add kernel_mount.9 and appropriate MLINKS to the build. 2004-12-13 19:29:40 +00:00
trhodes
050270163c Add a manual page to document phk's mount work.
Reviewed by:	phk (content), brueffer (grammar and markup)
2004-12-13 19:25:30 +00:00
sam
dfbb715550 correct module dependency 2004-12-13 18:26:13 +00:00
sam
18549dae69 correct module dependency 2004-12-13 18:12:26 +00:00
brian
075ae398bb Add ``enable echo''. 2004-12-13 17:54:30 +00:00
imp
862da7dd94 LINT defines things which compile in code that as referring to the old
a_desc element.  change this to the new a_gen.a_desc to reflect
changes to vnode_if.h generation.

Noticed by: tinderbox, phk
2004-12-13 17:53:20 +00:00
brian
e16d632c18 Mention the necessity for ``enable echo'' in ppp(8). 2004-12-13 17:52:10 +00:00
jeff
6ec1292f83 - If delivering a signal will result in killing a process that has a
nice value above 0, set it to 0 so that it may proceed with haste.
   This is especially important on ULE, where adjusting the priority
   does not guarantee that a thread will be granted a greater time slice.
2004-12-13 16:45:57 +00:00
ssouhlal
dce62f3086 Exporting of NTFS filesystem broke in rev 1.70. Fix it.
Approved by:	phk, grehan (mentor)
2004-12-13 16:21:48 +00:00
obrien
76068cb7f7 Back the warnings down from 9 to 6, since that is the highest we have. If
we added a WARNS 7 level, it shouldn't be assumed this code will pass it.
2004-12-13 15:42:46 +00:00
brian
ae06668733 Handle select() returning -1/EINTR - fairly common in these KSE days.
PR:		74972
MFC after:	3 days
2004-12-13 14:50:13 +00:00
jeff
00f132eec6 - Take up a 'slot' while we're on the assigned queue, waiting to be
posted to another processor.  Otherwise, kern_switch() gets confused
   and tries to sched_add(NULL).
2004-12-13 13:09:33 +00:00
pjd
7136589630 bioq_insert_head() function is already in subr_disk.c. 2004-12-13 13:02:06 +00:00
pjd
77ebddb33c Add bioq_insert_head() function.
OK'd by:	phk
2004-12-13 12:57:21 +00:00
brian
8c9a4071f7 Implement an ``enable/disable echo'' option, defaults to off.
This allows LCP ECHOs to be enabled independently of LQR reports.

Note: This introduces a change in the default behaviour (search for lqr and
echo in the man page).  I'll update UPDATING to reflect this.

PR:		74821
2004-12-13 12:51:19 +00:00
niels
2bae195f48 Add myself to the committers' birthday calendar
Approved by nectar (mentor)
2004-12-13 12:22:28 +00:00
phk
7bb3e163dd Don't forget to bypass vnodes in corner cases.
Found by:	kkenn and ports/shell/zsh
Thanks to:	jeffr
2004-12-13 10:07:57 +00:00
julian
b678066314 Might as well get the right $NetBSD$ string while we are at it.
MFC after:	1 week
2004-12-13 08:12:06 +00:00
julian
1cf882e7f6 Diff reduction to NetBSD.
Now only things that are different between us and NetBSD show up.
Means that these files are more of NetBSD style in some places but
since thay are NetBSD files, um, that's ok.

Obtained from:	NetBSD
MFC after: 1 week
2004-12-13 08:08:57 +00:00
julian
fa3c9e1494 MFNetBSD
Whitespace diff reduction, formatting fixes and one actual
arithmetic error that NetBSD have fixed.

Obtained from:	NetBSD
MFC after: 1 week
2004-12-13 07:45:02 +00:00
phk
4e2d779c7a Another FNONBLOCK -> O_NONBLOCK.
Don't unconditionally set IO_UNIT to device drivers in write:  nobody
checks it, and since it was always set it did not carry information anyway.
2004-12-13 07:41:19 +00:00
phk
381851ecfe Use O_NONBLOCK instead of FNONBLOCK alias. 2004-12-13 07:37:29 +00:00
imp
16b6daa45b Rather than casting through a (void *) to avoid the aliasing warning,
do things correctly from an aliasing perspective.  Put the
vop_generic_args element as the first element for all the vop_*_args
and adjust the code to take the address of that instead of the
structure.

OK'd based on a vague description by: phk
2004-12-13 07:23:34 +00:00