Commit graph

74055 commits

Author SHA1 Message Date
Alan Cox bc91c5107a o Change the implementation of vm_map locking to use exclusive locks
exclusively.  The interface still, however, distinguishes
   between a shared lock and an exclusive lock.
2002-05-02 17:32:27 +00:00
Dag-Erling Smørgrav cff135d87c Join the pissing contest: generate LINT with a single sed(1) command.
Smaller script, smaller (though equivalent) output.
2002-05-02 16:34:47 +00:00
Julian Elischer 8ac00c2767 Add missing UNLOCKs
Submitted by: dirkx@covalent.net
2002-05-02 15:58:04 +00:00
John Baldwin 3fc755c118 - Protect randompid and nprocs with the allproc_lock.
- Reorder fork1() to do malloc() and other blocking operations prior to
  acquiring the needed process locks.
- The new process inherit's the credentials of curthread, not the
  credentials of the old process.
- Document a really weird race that will come up with KSE allows multiple
  kernel threads per process.
2002-05-02 15:13:45 +00:00
John Baldwin d7aadbf9ce - Reorder a few things so that when we lock the process at the end of
exit1() we don't have to release it until we acquire schd_lock to
  call cpu_throw().
- Since we can switch at any time due to preemption or a lock release
  prior to acquiring sched_lock, don't update switchtime and switchticks
  until the very end of exit1() after we have acquired sched_lock.
- Interlock the proctree_lock and proc lock in wait1() and exit1() to
  avoid lost wakeups when a parent blocks waiting for a child to exit at
  the bottom of wait1().  In exit1() the proc lock interlocked with
  proctree_lock (and released after acquiring sched_lock) is that of
  the parent process.
- In wait1() use an exclusive lock of proctree lock while we are
  looking for a process to harvest.  This allows us to completely
  remove all references to the process once we've found one (i.e.,
  disconnect it from pgrp's, session's, zombproc list, and it's parent's
  children list) "atomically" without needing to worry about a lock
  upgrade.
- We don't need sched_lock to test if p_stat is SZOMB or SSTOP when holding
  the proc lock since the proc lock is always held with p_stat is set to
  SZOMB or SSTOP.
- Protect nprocs with an xlock of the allproc_lock.
2002-05-02 15:09:58 +00:00
John Baldwin 9b3b1c5fdf - Reorder execve() so that it performs blocking operations before it
locks the process.
- Defer other blocking operations such as vrele()'s until after we
  release locks.
- execsigs() now requires the proc lock to be held when it is called
  rather than locking the process internally.
2002-05-02 15:00:14 +00:00
Poul-Henning Kamp dafa52b753 Un-rot the VOP_ table generator. 2002-05-02 13:51:04 +00:00
Maxim Sobolev 3d5c1511ca Make pkg_info working again when argument is a file not in the current
directory.

PR:		37571
Submitted by:	Dirk Meyer <dirk.meyer@dinoex.sub.org>
MFC after:	1 week
2002-05-02 13:09:33 +00:00
Maxim Sobolev 5583155096 Make `-g' working for symlinks.
PR:		33857
Submitted by:	darren <igla@batterybackups.net>
MFC after:	1 week
2002-05-02 12:52:42 +00:00
Maxim Sobolev 3465d2ab40 Kill local variable which shadows global one. This fixes creation of bzip2
compressed packages broken in the previous commit.

Pointy hat to:	obrien
2002-05-02 10:19:13 +00:00
Jeff Roberson 8f70816cf2 Hide a pointer to the malloc_type bucket at the end of the freed memory. If
this memory is modified after it has been freed we can now report it's
previous owner.
2002-05-02 09:07:04 +00:00
Jeff Roberson b9ba893179 Move around the dbg code a bit so it's always under a lock. This stops a
weird potential race if we were preempted right as we were doing the dbg
checks.
2002-05-02 09:05:36 +00:00
Doug Rabson 1cae166218 The width of segsz_t should be 64, not 32 on ia64. 2002-05-02 09:04:29 +00:00
Tim J. Robbins c459e06c78 Add the csplit(1) utility, which splits files based on context, as specified
by SUSv3.

This Makefile got left out of the previous commit.

PR:             36191
Reviewed by:    mike
2002-05-02 07:54:04 +00:00
Tim J. Robbins ea9e961cb2 Add the csplit(1) utility, which splits files based on context, as specified
by SUSv3.

PR:		36191
Reviewed by:	mike
2002-05-02 07:46:36 +00:00
Andrew R. Reiter c3bdc05fb9 - Changed the size element of uma_zctor_args to be size_t instead of int.
- Changed uma_zcreate to accept the size argument as a size_t intead of
  int.

Approved by:	jeff
2002-05-02 07:36:30 +00:00
Andrew R. Reiter 2647924585 - Replaced the Atm_connection storage pool with an uma_zone of
Atm_connection items.
- Replaced the Atm_connvc storage pool with an uma_zone of Atm_connvc
  items.
- Created void atm_cm_init(void *) and added it to the netatm init code.
  I'm thinking that there will definetly be more ``subsystem'' init
  functions to be added so I'll probably change these calls to be a for
  loop through init routines (or something).
2002-05-02 07:27:29 +00:00
Jeff Roberson 5a34a9f089 malloc/free(9) no longer require Giant. Use the malloc_mtx to protect the
mallochash.  Mallochash is going to go away as soon as I introduce the
kfree/kmalloc api and partially overhaul the malloc wrapper.  This can't happen
until all users of the malloc api that expect memory to be aligned on the size
of the allocation are fixed.
2002-05-02 07:22:19 +00:00
Jun Kuriyama 23dc40e1dd Use shell script version (using awk and sed) of makeLINT.pl. 2002-05-02 06:10:09 +00:00
Juli Mallett 3d674c947c Don't cast incorrectly to malloc(3), and don't use errx(3) if malloc(3)
returns NULL, as malloc(3) sets errno.  Use err(3).
2002-05-02 05:46:37 +00:00
Marcel Moolenaar 2a688cec16 In pmap_pinit0, remove duplicate initialization. 2002-05-02 05:35:02 +00:00
Marcel Moolenaar b905ae4ef9 PCPU(current_pmap) is initialized in pmap_bootstrap. No need to
do it again.
2002-05-02 05:30:42 +00:00
Juli Mallett 8f12fc049c Remove redundant declarations of getopt(3) externals (since <unistd.h> does
take care of them), and add __FreeBSD__ to the defined() checks for the
_PATH_DIVNAME.
2002-05-02 05:25:23 +00:00
Juli Mallett eee11f05b4 __COPYRIGHT() and __SCCSID(). 2002-05-02 05:21:35 +00:00
Juli Mallett 76ccb81ef2 An explicit cast to size_t for an inline integer, since the two are not the
same on Alpha and lint(1) pointed that out.

lint(1) on the same architecture pointed out how silly a cast to (u_int) to
malloc(3)'s argument was.  Change that to size_t.
2002-05-02 05:07:13 +00:00
Dag-Erling Smørgrav 7f5e4ed359 PAMify rexecd(8).
Sponsored by:	DARPA, NAI Labs
2002-05-02 05:06:32 +00:00
Dag-Erling Smørgrav 05ade9be70 Add a PAM policy for rexecd(8).
Sponsored by:	DARPA, NAI Labs
2002-05-02 05:05:28 +00:00
Scott Long cd1b1a1d35 In udf_bmap(), return the physical block number, not the logical
block number.  This fixes things like cp (ouch!) which use mmap.
2002-05-02 05:01:14 +00:00
Dag-Erling Smørgrav 48988cd4bd xdm plays horrid tricks with PAM, and dumps core if it's allowed to call
pam_lastlog, so add a dummy session chain to avoid using the one from
pam.d/other.  I assume gdm does something similar, so give it a dummy
session chain as well.

Sponsored by:	DARPA, NAI Labs.
2002-05-02 05:00:40 +00:00
Dag-Erling Smørgrav 597aaec942 Add openpam_nullconv.c to SRCS. 2002-05-02 04:42:59 +00:00
Dag-Erling Smørgrav 3bd84c66bd This commit was generated by cvs2svn to compensate for changes in r95908,
which included commits to RCS files with non-trunk default branches.
2002-05-02 04:40:21 +00:00
Dag-Erling Smørgrav ac7e3b9d95 Vendor import of OpenPAM Cinnamon. 2002-05-02 04:40:21 +00:00
Juli Mallett 943e841433 A markup fix, and document -R as non-standard. 2002-05-02 03:29:38 +00:00
Juli Mallett b50a72861d Make -J a proper flag internal to the code (rather than just check for
use of replstr and lack of Iflag), and add -R, which when given with
-I controls the number of arguments on which replacement will be done.

Some people happen to think it's idiotic to limit to 5 arguments, so
let the user override it if they like.
2002-05-02 02:42:34 +00:00
Alan Cox 569687d02f o Remove dead and lockmgr()-specific debugging code. 2002-05-02 02:32:09 +00:00
Juli Mallett 299ea75ab7 *str is spelled 's1' inside the body of the code.
Make 'this' not a local variable, since it isn't necessary or complex enough
to warrant such.
2002-05-02 02:15:06 +00:00
Jeff Roberson 639c9550fb Remove the temporary alignment check in free().
Implement the following checks on freed memory in the bucket path:
	- Slab membership
	- Alignment
	- Duplicate free

This previously was only done if we skipped the buckets.  This code will slow
down INVARIANTS a bit, but it is smp safe.  The checks were moved out of the
normal path and into hooks supplied in uma_dbg.
2002-05-02 02:08:48 +00:00
Juli Mallett 0fa5e8dc42 Rework some of the -I support so I can't find a way to make xargs(1) core or
corrupt memory.  Simplifies the code in one or two places, also removes some
code that looks like it was bogus or incomplete.

Update strnsubst to have one or two extra conditions which maybe would make
it more efficient, or at least more versatile.  This is likely a no-op.
2002-05-02 02:06:03 +00:00
Kirk McKusick 088f357d12 Minor bug fixes uncovered while working on UFS2.
They should have no effect on existing systems.
2002-05-02 01:03:06 +00:00
David E. O'Brien b20b5a8b09 Add some NOTES on the Comtrol Rocketport and the Digiboard drivers. 2002-05-01 23:03:31 +00:00
David E. O'Brien 259bbc7376 Usual after-import fixup of SCM IDs. 2002-05-01 22:39:53 +00:00
Marcel Moolenaar b9492ca0a4 Save the MCA info specific to the AP as part of the AP launch. 2002-05-01 22:19:03 +00:00
Marcel Moolenaar 0e09ff93a3 Make ia64_mca_save_state MP safe. Protect access to the info block,
updating the sysctl tree and clearing the SAL state by a spin lock.
2002-05-01 22:10:03 +00:00
Matt Jacob f77e6d9569 If we get a DATA UNDERRUN error from QLogic FC cards, but the RQCS_RU bit
is not set in the scsi completion status, or if the residual is clearly
nonsense, then this was a command that suffered the loss of one or more
FC frames in the middle of the exchange.

Set HBA_BOTCH and hope it will get retried. It's the only thing we can do.

MFC after:	1 day
2002-05-01 21:58:36 +00:00
Peter Wemm 47a45d1b17 Try using genwakecode.sh instead of the perl version. 2002-05-01 21:54:07 +00:00
Peter Wemm 9b4e33b6ba Add a shell script to do what genwakecode.pl does.
Obtained from:	ade
2002-05-01 21:52:34 +00:00
Juli Mallett 26849aba03 Add some spurious veritcal whitespace to reduce diffs to OpenBSD. 2002-05-01 21:45:22 +00:00
Juli Mallett bd2bfb5846 Merge local changes again, against ANSIfied m4(1). 2002-05-01 21:37:29 +00:00
Alfred Perlstein f132072368 Redo the sigio locking.
Turn the sigio sx into a mutex.

Sigio lock is really only needed to protect interrupts from dereferencing
the sigio pointer in an object when the sigio itself is being destroyed.

In order to do this in the most unintrusive manner change pgsigio's
sigio * argument into a **, that way we can lock internally to the
function.
2002-05-01 20:44:46 +00:00
Warner Losh 3498b5ed09 We don't need no stinkin' echos here.
Instead, don't run kldxref if you don't have one on your system.
2002-05-01 19:24:26 +00:00