Commit Graph

106436 Commits

Author SHA1 Message Date
Peter Grehan
391d4a3856 Bring PPC up to date with latest TLS changes. 2004-08-16 05:41:39 +00:00
David Xu
2eb43a641f Plug a memory leak in error case. 2004-08-16 05:20:12 +00:00
Garance A Drosehn
47208ac20a Document the fact that matching against a process command-name will
only work on the first MAXCOMLEN (19) characters of that name.

Noticed by:	Peter Holm
2004-08-16 04:49:43 +00:00
Robert Watson
40f2ac28a0 Always acquire the UNIX domain socket subsystem lock (UNP lock)
before dereferencing sotounpcb() and checking its value, as so_pcb
is protected by protocol locking, not subsystem locking.  This
prevents races during close() by one thread and use of ths socket
in another.

unp_bind() now assert the UNP lock, and uipc_bind() now acquires
the lock around calls to unp_bind().
2004-08-16 04:41:03 +00:00
David Xu
cd980d46c2 1. Use libpthread's exported symbols to calcuate offset in data structure
2. Enable TLS debugger support.
2004-08-16 03:30:16 +00:00
David Xu
a002d437ea 1. Add macro DTV_OFFSET to calculate dtv offset in tcb.
2. Export symbols needed by debugger.
2004-08-16 03:27:29 +00:00
David Xu
497c17e0ae Add a file to collection all symbols will be needed by debugger. 2004-08-16 03:25:07 +00:00
Marius Strobl
cc795cb4ce As with the non-rescue version don't build fore_dnld when NOATM is defined. 2004-08-16 03:16:48 +00:00
Bruce A. Mah
5c7be533e1 Fix installing from SCSI tape drives by catching up device names with
reality.

PR:		70279
Submitted by:	Gavin Atkinson <gavin.atkinson@ury.york.ac.uk>
2004-08-16 03:13:12 +00:00
Brian Feldman
fec07e9be0 Remove the BUGS entry for vslock(9) not actually holding user memory in place. 2004-08-16 03:12:10 +00:00
Brian Feldman
7c938963a4 Rather than bringing back all of the changes to make VM map deletion
wait for system wires to disappear, do so (much more trivially) by
instead only checking for system wires of user maps and not kernel maps.

Alternative by:	tor
Reviewed by:	alc
2004-08-16 03:11:09 +00:00
Brian Feldman
8912c44d9f Add the missing knote_fdclose(). 2004-08-16 03:09:01 +00:00
Brian Feldman
1c0f9af5b5 Allocate the marker, when scanning a kqueue, from the "heap" instead of the
stack.  When swapped out, a process's kernel stack would be unavailable,
and we could get a page fault when scanning the same kqueue.

PR:	kern/61849
2004-08-16 03:08:38 +00:00
Warner Losh
9fea47c8e6 Didn't intend to commit debugging code enabled 2004-08-16 01:57:06 +00:00
Robert Watson
ce5f32de11 Annotate the current UNIX domain socket locking strategies, order,
strengths, and weaknesses in a comment.  Assert a copyright over the
changes made as part of the locking work.
2004-08-16 01:52:04 +00:00
Bruce A. Mah
963181997b Various updates for installation documentation. Most notably:
o Update to match 5-CURRENT reality.
o Bump up minimum system requirements.
o Make examples work.

PR:		docs/70485
Submitted by:	Gavin Atkinson <gavin.atkinson@ury.york.ac.uk>
2004-08-16 01:42:43 +00:00
Mike Silbersack
5173e8f567 Major enhancements to pipe memory usage:
- pipespace is now able to resize non-empty pipes; this allows
  for many more resizing opportunities

- Backing is no longer pre-allocated for the reverse direction
  of pipes.  This direction is rarely (if ever) used, so this cuts the
  amount of map space allocated to a pipe in half.

- Pipe growth is now much more dynamic; a pipe will now grow when
  the total amount of data it contains and the size of the write are
  larger than the size of pipe.  Previously, only individual writes greater
  than the size of the pipe would cause growth.

- In low memory situations, pipes will now shrink during both read
  and write operations, where possible.  Once the memory shortage
  ends, the growth code will cause these pipes to grow back to an appropriate
  size.

- If the full PIPE_SIZE allocation fails when a new pipe is created, the
  allocation will be retried with SMALL_PIPE_SIZE.  This helps to deal
  with the situation of a fragmented map after a low memory period has
  ended.

- Minor documentation + code changes to support the above.

In total, these changes increase the total number of pipes that
can be allocated simultaneously, drastically reducing the chances that
pipe allocation will fail.

Performance appears unchanged due to dynamic resizing.
2004-08-16 01:27:24 +00:00
Martin Blapp
90c9edaaa4 MFNetBSD
Decrease log severity to debug if a protocol is not supported by the
kernel (rpcbind checks /etc/netconfig if a protocol is available).
This avoids "rpcbind: cannot create socket for tcp6" messages
at startup on IPv4-only kernels.
2004-08-16 00:20:31 +00:00
Nate Lawson
c5fe547333 Comment out the ability to enable/disable ACPI at runtime. This appears
to not work reliably and crash some systems.  It is not supported at all
on others.  Pending discussion, the underlying ioctls will be removed.
2004-08-15 23:39:37 +00:00
Warner Losh
1ff2328528 Tweak the compatibility macros a little so that the device printing is
moved into them.
2004-08-15 23:39:18 +00:00
Martin Blapp
c9dca5ca78 Resolve conflicts from dhclient 3.0.1 final import.
No functional changes in this import.
2004-08-15 23:37:10 +00:00
Martin Blapp
f511f66676 This commit was generated by cvs2svn to compensate for changes in r133783,
which included commits to RCS files with non-trunk default branches.
2004-08-15 23:33:13 +00:00
Martin Blapp
41893d8997 Import ISC DHCP 3.0.1 client. 2004-08-15 23:33:13 +00:00
Warner Losh
cc81f0c35e Other part of the cbb isa/pci split. This likely is causing problems
wrt cbb module.
2004-08-15 23:17:54 +00:00
Marius Strobl
9c0c82c161 Add a kludge for building SBus-only kernels, i.e. kernels without support
for EBus, ISA and PCI, by compiling ofw_isa.c and ofw_pci_if.m unconditio-
nally. The correct way is to rewrite OF_decode_addr() in ofw_machdep.c in
a bus-neutral way. That's certainly possible but we unfortunately didn't
make it for FreeBSD 5.3.

Approved by:	tmm
2004-08-15 22:59:34 +00:00
Simon L. B. Nielsen
54597ca9b2 - Handle the '\&' mdoc(7) escape sequence.
- Handle the .Sx macro and give a warning if it is used in the
  HARDWARE section, since that will probably produce odd text in the
  Hardware Notes.
2004-08-15 22:33:10 +00:00
Dag-Erling Smørgrav
13901dd25a Fix a couple of edge cases in which sb.st_size may be incorrect or
meaningless.  In particular, don't assume that it is left untouched if
stat(2) fails; that assumption happens to fail at high optimization
levels on some platforms.

MFC after:	1 week
2004-08-15 22:22:35 +00:00
Simon L. B. Nielsen
ac938691a5 - Auto generate device listings for the following drivers: mpt, trm,
rl, vr, dc, de, and gem.
- hme(4) is not sparc64 only anymore, so update dev.archlist.txt
  acordingly.
2004-08-15 22:14:29 +00:00
Simon L. B. Nielsen
022d39524e - Add a HARDWARE section which lists supported devices.
- Fix a few mdoc(7) markup / style nits when I'm here anyway.
2004-08-15 21:59:15 +00:00
Dag-Erling Smørgrav
c9b9a82654 Release the vnode cache mutex when calling vgone(), since vgone() may
sleep.  This makes pfs_exit() even less efficient than before, but on
the bright side, the vnode cache mutex no longer needs to be recursive.
2004-08-15 21:58:02 +00:00
Doug Rabson
e6f19330ce Add rtld-elf to the include path for the rtld to pthread TLS interface. 2004-08-15 21:51:18 +00:00
Marius Strobl
775f3c3c28 Correct some uses of the wrong members of the *min()/*max()-familiy, e.g.
min() on unsigned long. None of these are believed to have been fatal though.

Reviewed by:	tmm
2004-08-15 21:37:52 +00:00
Simon L. B. Nielsen
6d63e45834 Bump document date for last commit. 2004-08-15 21:02:48 +00:00
Alan Cox
87b9823ede - Make pmap_emulate_reference() MP and preemption safe. Previously, it
contained "sanity" checks that could be violated if another CPU modified
   the pmap between the emulation trap and locking the pmap in
   pmap_emulate_reference().  As a result, the pte could be inconsistent
   with the access that caused the emulation trap.  In such cases,
   pmap_emulate_reference() now flushes the current CPU's TLB entry and
   returns.
 - Make pmap_changebit() an inline function, reducing object code size.
2004-08-15 20:54:25 +00:00
Simon L. B. Nielsen
0df8576a68 - Add a HARDWARE section which lists supported devices.
- Add the manufacturer name to each item in the device list.
- Make the note about supporting "IBM e335" into a general list and
  change the entry to use the full product name ("IBM eServer xSeries
  335").
- Add Dell PowerEdge 1750 to the list of systems with mpt onboard.
2004-08-15 20:54:07 +00:00
Robert Watson
273ad9acbc Preemptive anti-footshooting: cause a #error if MP_WATCHDOG is compiled
with SCHED_ULE.
2004-08-15 20:32:40 +00:00
Marius Strobl
1d875a6ebd Shorten the description of NO_OPENSSL, which was split into two lines by a
patch of mine in revision 1.216, a bit so it fits in a single line again.
2004-08-15 20:32:06 +00:00
Marius Strobl
45ad3f1162 Save on one variable in ofwo_action(). Leftover from an older version of
this function which needed the handle of the /options node more than once.
2004-08-15 20:18:54 +00:00
Marius Strobl
ec0834c166 - Correct the description of the "local-mac-address?" variable. Not all NICs
use it, only those with FCode. Add references to dc(4), gem(4) and hme(4)
  for obtaining further information about such devices presently supported
  by FreeBSD.
- Correct the HISTORY section. There was an eeprom(8) utility in 4.4BSD and
  early versions of FreeBSD 2.x.
- Add an AUTHORS section.
2004-08-15 20:17:29 +00:00
Robert Watson
932431328b Spell MP_WATCHDIG right: I fixed the build without MP_WATCHDOG after
testing MP_WATCHDOG, and used an incorrect ifdef.
2004-08-15 19:57:14 +00:00
Simon L. B. Nielsen
246f31ed5c Change the HARDWARE section to have the same style as in the other
FreeBSD section 4 manual pages.
2004-08-15 19:48:27 +00:00
Robert Watson
e10d31a8f2 Add a useful snippet on limitations of inductive reasoning by Bertrand
Russell.
2004-08-15 19:24:17 +00:00
Don Lewis
b6915bdbe5 Yet another tweak to the shutdown messages in boot():
Don't count busy buffers before the initial call to sync() and
  don't skip the initial sync() if no busy buffers were called.
  Always call sync() at least once if syncing is requested.  This
  defers the "Syncing disks, buffers remaining..." message until
  after the initial sync() call and the first count of busy
  buffers.  This backs out changes in kern_shutdown 1.162.

  Print a different message when there are no busy buffers after the
  initial sync(), which is now the expected situation.

  Print an additional message when syncing has completed successfully
  in the unusual situation where the work of syncing was done by
  boot().

  Uppercase one message to make it consistent with all of the other
  kernel shutdown messages.

Discussed with:	bde (in a much earlier form, prior to 1.162)
Reviewed by:	njl (in an earlier form)
2004-08-15 19:17:23 +00:00
Robert Watson
e3edab4a91 Add a "fillchar" command line argument to dd(1) that permits the user
to specify an alternative padding character when using a conversion
mode, or when using noerror with sync and an input error occurs.  This
facilities reading old and error-prone media by allowing the user to
more effectively mark error blocks in the output stream.
2004-08-15 19:10:05 +00:00
Simon L. B. Nielsen
70a310e2dd - Add a HARDWARE section which lists supported devices. 2004-08-15 18:13:08 +00:00
Simon L. B. Nielsen
5f9bc18543 - Add a HARDWARE section which lists supported devices.
- Remove reference to the NOTES section in the entry for Sun DMFE,
  since ot doesn't work well with the auto generated Hardware Notes. [1]

OK'ed by:	marius [1]
2004-08-15 18:09:47 +00:00
Robert Watson
a632deec30 Add an "options MP_WATCHDOG" to i386. This option allows one of the
logical CPUs on a system to be used as a dedicated watchdog to cause a
drop to the debugger and/or generate an NMI to the boot processor if
the kernel ceases to respond.  A sysctl enables the watchdog running
out of the processor's idle thread; a callout is launched to reset a
timer in the watchdog.  If the callout fails to reset the timer for ten
seconds, the watchdog will fire.  The sysctl allows you to select which
CPU will run the watchdog.

A sample "debug.leak_schedlock" is included, which causes a sysctl to
spin holding sched_lock in order to trigger the watchdog.  On my Xeons,
the watchdog is able to detect this failure mode and break into the
debugger, which cannot otherwise be done without an NMI button.

This option does not currently work with sched_ule due to ule's push
notion of scheduling, similar to machdep.hlt_logical_cpus failing to
work with that scheduler.

On face value, this might seem somewhat inefficient, but there are a
lot of dual-processor Xeons with HTT around, so using one as a watchdog
for testing is not as inefficient as one might fear.
2004-08-15 18:02:09 +00:00
Simon L. B. Nielsen
c9e84ee705 - Make the naming of AMCC's 3ware cards consistent with the current
naming from AMCC.
- Update the list of devices supported by the drivers.

All of the above is based on information from AMCC via vkashyap.
2004-08-15 17:40:06 +00:00
Maxim Konovalov
4892c9a4c0 o Document net.inet.ip.random_id sysctl.
Reviewed by:	dwmalone, ru
2004-08-15 17:32:31 +00:00
Doug Rabson
99c8d0836d Add TLS support for i386 and amd64. 2004-08-15 16:28:05 +00:00