81510 Commits

Author SHA1 Message Date
fanf
945b6729d9 Last commit was slightly hasty: #include <string.h> is required on
-CURRENT to be WARNS-safe (but not -STABLE for some reason)
2002-10-09 20:42:40 +00:00
jhb
c7f1a97230 Use d_thread_t for cdevsw functions instead of struct thread * so that it
is easier to share this code with 4-stable.
2002-10-09 20:39:26 +00:00
jhb
405e3dcfbf Include <dev/acpica/acpivar.h> instead of <acpica/acpivar.h> like all the
other sys/dev/acpica files.
2002-10-09 20:38:21 +00:00
fanf
492a7532d8 Kill obsolete #include <memory.h> which I didn't spot earlier because
it's still in the NetBSD version.
2002-10-09 20:30:57 +00:00
ru
908ae3fbf2 <machine/atomic.h> requires <sys/types.h>.
Reviewed by:	jake, mike
2002-10-09 20:20:43 +00:00
fanf
b67dc726b1 Mdocify and fix a load of errors dating back to the dawn of time.
Don't mention hard limits for factor(6) since it now has bignum support.

Obtained from:	NetBSD (mdoc only -- their man page is still mostly wrong)
2002-10-09 20:00:25 +00:00
fanf
8adc3488ac Factorize bignums using the Pollard Rho algorithm. The code comes
from NetBSD, altered to retain the FreeBSD -h feature and various
stylistic improvements and avoid regressions. In the absence of
OpenSSL (and therefore bignums) the old code is used.

PR:		43831
Reviewed by:	kris, markm, obrien
Obtained from:	NetBSD
MFC after:	2 weeks
2002-10-09 19:55:04 +00:00
jhb
428b49c893 Use __packed. 2002-10-09 19:46:09 +00:00
fanf
b5ea937ee8 Style fixes to: #include ordering; use const and static; ANSI functions;
various usage synopses; bogus and/or unnecessary casting; exit values;
use LINE_MAX instead of magic numbers; declare extern variables in a
header; add $FreeBSD$ where missing.

Reviewed by:    markm, obrien
Obtained from:  NetBSD | fanf
2002-10-09 19:38:55 +00:00
jhb
7cc0ed53c2 - Move p_cpulimit to struct proc from struct plimit and protect it with
sched_lock.  This means that we no longer access p_limit in mi_switch()
  and the p_limit pointer can be protected by the proc lock.
- Remove PRS_ZOMBIE check from CPU limit test in mi_switch().  PRS_ZOMBIE
  processes don't call mi_switch(), and even if they did there is no longer
  the danger of p_limit being NULL (which is what the original zombie check
  was added for).
- When we bump the current processes soft CPU limit in ast(), just bump the
  private p_cpulimit instead of the shared rlimit.  This fixes an XXX for
  some value of fix.  There is still a (probably benign) bug in that this
  code doesn't check that the new soft limit exceeds the hard limit.

Inspired by:	bde (2)
2002-10-09 17:17:24 +00:00
jhb
984ea4a3cd Remove 'at' hints for npx and apm as both drivers have identify routines
that add an instance of themselves.  The npx(4) driver doesn't even check
the npx 'port' hint but hardcodes IO_NPX instead.  The npx(4) driver also
will use isa IRQ 13 (on x86, 8 on pc98) by default if no 'irq' hint is
specified, so we don't need that hint either.
2002-10-09 17:00:46 +00:00
mux
ddefc9d7d6 Fix build of 64 bit platforms. 2002-10-09 12:19:36 +00:00
nyan
fead2b9a12 Move the ed, fe, CD9660, MSDOSFS and NFSCLIENT into mfsroot floppy instead
of the pcn, sf, ste, tl and tx.
2002-10-09 12:01:43 +00:00
nyan
5c2ad74e45 - Remove the splash, ppc, ppbus, plip and em devices from small boot floppy.
- Remove the splash, ch and sa devices from normal boot floppy.
- The agp device does not exist.
2002-10-09 12:01:14 +00:00
peter
36126b0ba6 Fix build on alpha. It used to case an int to a pointer in order to do
pointer arithmetic.  Detour via uintptr_t, since we're generating an
offset not dereferencing them.
2002-10-09 09:30:57 +00:00
tjr
021d9a7471 Add definitions for the new international monetary formatting struct lconv
members to English (Australia) as an example.
2002-10-09 09:25:11 +00:00
tjr
c112e4d2cb Add support for the 6 new C99 struct lconv members dealing with formatting
international monetary values: int_p_cs_precedes, int_n_cs_precedes,
int_p_sep_by_space, int_n_sep_by_space, int_p_sign_posn, int_n_sign_posn.
This should not break existing binaries or LC_MONETARY data files.

Reviewed by:	ache
MFC after:	1 month
2002-10-09 09:19:28 +00:00
peter
9a5a0eace4 Change BUS_SPACE_UNRESTRICTED (~0ul) to plain ~0 when used in the
'int nsegments' argument to bus_dma_tag_create().  ~0ul does not fit in
an int on machines with 64 bit longs.
2002-10-09 08:54:32 +00:00
ru
b1adf94578 Print the OS name in the right place in the document title. 2002-10-09 08:51:52 +00:00
peter
483d6181f7 Change BUS_SPACE_UNRESTRICTED (~0ul) to plain ~0 when used in the
'int nsegments' argument to bus_dma_tag_create().  ~0ul does not fit in
an int.
2002-10-09 08:50:26 +00:00
ru
344968933a MFV:
- Suppress additional whitespace after the subsection header (.Ss).
  (This affects a tiny number of our manpages.)

- Allow for a layout customization of the OS name in the document
  title (.Dt).  (Needed for Russian and French manpages.)
2002-10-09 08:48:56 +00:00
ru
737a9b93ec From the ChangeLog:
: 2002-10-07  Werner LEMBERG  <wl@gnu.org>
:
: 	* tmac/doc-common (Ss): Add final `.ns' (similar to `.Sh') to
: 	suppress additional whitespace after the header.
:
: 2002-10-07  Ruslan Ermilov  <ru@FreeBSD.org>
:
: 	* tmac/doc-common (doc-volume-operating-system-ateol): New flag.
: 	(Dt): Use it to improve language localization (especially Russian
: 	and French).
2002-10-09 08:39:59 +00:00
peter
08cbf20fd9 Drop almost 3k from /bin/sync by moving errno to a seperate file
to avoid all syscalls pulling in sys_errlst[].

Noted by:  bde
2002-10-09 08:04:24 +00:00
sobomax
aee6c2c505 Don't kill itself in --fast-read mode if there is no decompressor started.
Reported by:	Gordon Tetlow <gordont@gnf.org>
Submitted by:	tjr
MFC after:	1 week
		(along with other --fast-read changes)
2002-10-09 07:33:29 +00:00
mckusick
e13d3e9276 When creating a snapshot, create a list of initially allocated blocks.
Whenever doing a copy-on-write check, first look in the list of
initially allocated blocks to see if it is there. If so, no further
check is needed. If not, fall through and do the full check. This
change eliminates one of two known deadlocks caused by snapshots.
Handling the second deadlock will be the subject of another check-in.
This change also reduces the cost of the copy-on-write check by
speeding up the verification of frequently checked blocks.

Sponsored by:	DARPA & NAI Labs.
2002-10-09 07:28:35 +00:00
phk
08c1778957 Add support g_clone_bio() and g_std_done() to spawn multiple children
of a bio and correctly gather status when done.

Sponsored by:	DARPA & NAI Labs.
2002-10-09 07:11:59 +00:00
phk
32bc10e82a Add a field for tallying the number of spawned bio's a bio has.
Rearrange and comment some GEOM related fields.

Sponsored by:	DARPA & NAI Labs.
2002-10-09 07:11:03 +00:00
jmallett
badf9d5c6c Update documentation for kldload(8)'s ability to load multiple modules.
Submitted by:	Daniel O'Connor <doconnor@gsoft.com.au>
2002-10-09 06:46:54 +00:00
mckusick
8cecf7b3e5 When creating a snapshot, create a list of initially allocated blocks.
Whenever doing a copy-on-write check, first look in the list of
initially allocated blocks to see if it is there. If so, no further
check is needed. If not, fall through and do the full check. This
change eliminates one of two known deadlocks caused by snapshots.
Handling the second deadlock will be the subject of another check-in.
This change also reduces the cost of the copy-on-write check by
speeding up the verification of frequently checked blocks.

Sponsored by:	DARPA & NAI Labs.
2002-10-09 06:13:48 +00:00
mckusick
d01b53c175 The appropriate units for disk block addresses are always DEV_BSIZE,
even when the underlying device has a larger sector size. Therefore,
the filesystem code should not (and with this patch does not) try to
use the underlying sector size when doing disk block address calculations.

This patch fixes problems in -current when using the swap-based
memory-disk device (mdconfig -a -t swap ...). This bugfix is not
relevant to -stable as -stable does not have the memory-disk device.

Sponsored by:	DARPA & NAI Labs.
2002-10-09 04:01:23 +00:00
jmallett
d466dc0ec0 Convert make(1) to use ANSI style function declarations. Variable
documentation already adequatedly existed in the description in most
cases.  Where it did not, it was added.  If no documentation existed
beforehand, then none was added.  Some unused dummies for use in the
traversal functions were marked as __unused during the conversion.
Occasionally, local style fixes were applied to lines already being
modified or influenced.

Now make(1) should always build with WARNS=3.
2002-10-09 03:42:10 +00:00
julian
6b6ba96b60 Round out the facilty for a 'bound' thread to loan out its KSE
in specific situations. The owner thread must be blocked, and the
borrower can not proceed back to user space with the borrowed KSE.
The borrower will return the KSE on the next context switch where
teh owner wants it back. This removes a lot of possible
race conditions and deadlocks. It is consceivable that the
borrower should inherit the priority of the owner too.
that's another discussion and would be simple to do.

Also, as part of this, the "preallocatd spare thread" is attached to the
thread doing a syscall rather than the KSE. This removes the need to lock
the scheduler when we want to access it, as it's now "at hand".

DDB now shows a lot mor info for threaded proceses though it may need
some optimisation to squeeze it all back into 80 chars again.
(possible JKH project)

Upcalls are now "bound" threads, but "KSE Lending" now means that
other completing syscalls can be completed using that KSE before the upcall
finally makes it back to the UTS. (getting threads OUT OF THE KERNEL is
one of the highest priorities in the KSE system.) The upcall when it happens
will present all the completed syscalls to the KSE for selection.
2002-10-09 02:33:36 +00:00
jmallett
03d461282b Use __FBSDID in the lst.lib files, to match to main make(1) files. It is
defined to __RCSID when bootstrapping, by the Makefile, but this change is
for consistency
2002-10-09 02:00:22 +00:00
jmallett
cc747c11c5 Remove extern declarations from functions and source files where they would
happily fit into headers.
2002-10-09 01:56:02 +00:00
jmallett
5788a2c1bb Remove unused local-locals, where upper-level locals may safely be used. 2002-10-09 01:51:00 +00:00
jmallett
731a2cb152 As back-out requests must be followed, back out the removal of wargames(6)
at mike@'s request.
2002-10-09 01:46:37 +00:00
archie
bdbdd1a6d4 Add note that there is a kernel-imposed limit on the number of threads
in a KSE group that may be simultaneously blocked in the kernel.
2002-10-08 22:42:42 +00:00
jmallett
71de896c12 Reference the correct local variable in all parts of a for loop, so we
operate on the correct data (properly).

Tracked down by:	Dan Nelson
2002-10-08 21:29:04 +00:00
jeff
29006c0306 - Remove LK_INTERLOCK from the vn_lock() in ffs_snapshot().
Pointy hat to:	me
Found by:	green
2002-10-08 21:00:52 +00:00
jmallett
9bfc1ff68c Remove the wargames(6) novelty [and not the fun kind]:
1) It never was very funny.
	2) It was a N line shell script where N is less than
	   X, where X is the number of lines of the Berkeley
	   copyright and license.
	3) I rewrote it in C with the intention of making it
	   more interactive, ala the movie, but never did.
	4) Because it really is possible for at least some
	   parts of a distribution to shrink between releases.

X-No-MFC:	This game will remain in RELENG_4 and previous.
X-Bikesheds-To:	markm@
Approved by:	The #bsdcode cabal.
Obtained from:	Professor Falken
2002-10-08 20:19:26 +00:00
jmallett
41b0e03e7c We're missing none of these games, they just aren't here. 2002-10-08 20:15:30 +00:00
jhb
5a64f9c84e Spell 'Temperature' correctly. 2002-10-08 19:41:12 +00:00
sos
bc46f827dc Fix for the panic when using a Promise TX2.
The problem is that the code does a check for the granparent of
the Promise chip, if this is a bridge of the right type, we have
a TX4 on our hands, and need to handle that ones "issues".
Now the grandparent check cause subtle bugs in the newbus system,
mainly that pci_get_devid doesn't return an error value.
This patch works around the issue by using BUS_READ_IVAR() instead.
2002-10-08 18:25:10 +00:00
jhb
4c2a550344 Revert MEM_USR back to 0xa000 for BTX clients. Instead, adjust boot2
to run at 0xc000 by changing its virtual start address from 0x1000 to
0x2000.

Tested by:	phk
2002-10-08 18:19:02 +00:00
archie
503c2bfc5f Add MLINKS to kse.2. 2002-10-08 17:43:40 +00:00
ken
13b9c6f277 Fix the location of the length bytes in the 12-byte read/write CDB
structure.  This has been broken since 1998, but probably hasn't been
noticed because it takes a read/write of 64K blocks (32MB with 512 byte
blocks) to trigger using the 12 byte read/write CDB in scsi_read_write().

Submitted by:	"Moore, Eric Dean" <emoore@lsil.com>
MFC after:	3 days
2002-10-08 17:12:44 +00:00
phk
07c608aac1 Now that ufsread.c doesn't do 64bit divide remainder operations,
don't bother with libkern.

Sponsored by:	DARPA & NAI Labs.
2002-10-08 15:49:35 +00:00
phk
a2f1fdc5bf Save a couple of bytes by not returning ints nobody care about.
Sponsored by:	DARPA & NAI labs
2002-10-08 15:48:43 +00:00
phk
8eaa35ca87 It seems that the only problem with UFS2 booting on i386 is the 64bit
divide/remainder calls.  For reasons not resolved, compiling the
relevant routines from libkern into boot2 results in stack corruption.

Do the simple thing: Don't use 64bit divide/remainder operations.

Sponsored by:	DARPA & NAI Labs
2002-10-08 15:46:45 +00:00
jhb
bda41137cf Don't panic for a bad ivar request, just return ENOENT. 2002-10-08 15:44:35 +00:00