Commit Graph

75231 Commits

Author SHA1 Message Date
John Baldwin
0e54ddadd9 Fix an old cut 'n' paste bug inherited from BSD/OS: don't increment 'i'
twice once we are in the long wait stage of spinning on a spin mutex.
2002-05-21 21:27:05 +00:00
Andrew R. Reiter
1515cd22e1 - OR the flag variable with M_ZERO so that the uma_zalloc() handles the
zero'ing out of the allocated memory.  Also removed the logical bzero
  that followed.
2002-05-21 21:18:41 +00:00
John Baldwin
e6302957fe Whitespace fixup, properly indent the body of an else clause. 2002-05-21 21:13:27 +00:00
John Baldwin
2498cf8c42 Add code to make default mutexes adaptive if the ADAPTIVE_MUTEXES kernel
option is used (not on by default).

- In the case of trying to lock a mutex, if the MTX_CONTESTED flag is set,
  then we can safely read the thread pointer from the mtx_lock member while
  holding sched_lock.  We then examine the thread to see if it is currently
  executing on another CPU.  If it is, then we keep looping instead of
  blocking.
- In the case of trying to unlock a mutex, it is now possible for a mutex
  to have MTX_CONTESTED set in mtx_lock but to not have any threads
  actually blocked on it, so we need to handle that case.  In that case,
  we just release the lock as if MTX_CONTESTED was not set and return.
- We do not adaptively spin on Giant as Giant is held for long times and
  it slows SMP systems down to a crawl (it was taking several minutes,
  like 5-10 or so for my test alpha and sparc64 SMP boxes to boot up when
  they adaptively spinned on Giant).
- We only compile in the code to do this for SMP kernels, it doesn't make
  sense for UP kernels.

Tested on:	i386, alpha, sparc64
2002-05-21 20:47:11 +00:00
Poul-Henning Kamp
a05068c0d6 Update to match kernel side.
Sponsored by: DARPA & NAI Labs.
2002-05-21 20:42:51 +00:00
John Baldwin
e8fdcfb57a Optimize spin mutexes for UP kernels without debugging to just enter and
exit critical sections.  We only contest on a spin mutex on an SMP kernel
running on an SMP machine.
2002-05-21 20:34:28 +00:00
Poul-Henning Kamp
07107de9bc Introduce the concept of "magic spaces", and implement them in most of
the relevant classes.

Some methods may implement various "magic spaces", this is reserved
or magic areas on the disk, set a side for various and sundry purposes.
A good example is the BSD disklabel and boot code on i386 which occupies
a total of four magic spaces: boot1, the disklabel, the padding behind
the disklabel and boot2.  The reason we don't simply tell people to
write the appropriate stuff on the underlying device is that (some of)
the magic spaces might be real-time modifiable.  It is for instance
possible to change a disklabel while partitions are open, provided
the open partitions do not get trampled in the process.

Sponsored by:	DARPA & NAI Labs.
2002-05-21 20:33:49 +00:00
Juli Mallett
21b8b7cb3c Make ReadMakefile() operate using the realpath(3) name for the file handed to
it, which means that relative paths will be expanded to absolute paths, and
filenames without a path will end up with their absolute path included as
well.  This aids tremendously in debugging a build using our make(1) with
multiple Makefile's, such as when there is a syntax error in a file in a
sub-directory as per <bsd.subdir.mk>.  Normally we'd end up with just
"Makefile" known about the Makefile in question, which means that an error
would be useless for someone trying to debug their build system, now we
end up with a complete real pathname for the Makefile.

So mostly this is useful in a debugging context, but possibly others too
(I haven't thought of them yet, but they probably are more useful if you
make Dir_FindFile use realpath(3), but that's another story).

Reviewed by:	-current
MFC after:	2 weeks
2002-05-21 20:24:46 +00:00
John Baldwin
bb0d293f15 Add an inline function cpu_pause() for the IA32 'pause' instruction. 2002-05-21 20:21:53 +00:00
Poul-Henning Kamp
3abe4a80a5 Remove the "-class" suffix from classes, they will not be ambiguous.
Sponsored by:	DARPA & NAI Labs.
2002-05-21 19:50:04 +00:00
Andrew R. Reiter
db40007d42 - Change the newly turned INVARIANTS #ifdef blocks (they were changed from
DIAGNOSTIC yesterday) into KASSERT()'s as these help to increase code
  readability.
2002-05-21 18:52:24 +00:00
Hajimu UMEMOTO
720bbc8244 Allow prefix/prefixlen syntax for IPv6 to have consistency
with IPv4.
2002-05-21 18:11:31 +00:00
Semen Ustimenko
96b825e7ca Fix null_lock() not unlocking vp->v_interlock if LK_THISLAYER.
Reviewed by:	bp@FreeBSD.org
MFC after:	1 week
2002-05-21 18:07:33 +00:00
Tom Rhodes
69cc776cd6 Reword a small part of the uniq(1) manual page to help reduce word
duplication (ie: fields fields).

PR:		38161
Reviewed by:	keramida
MFC after:	3 days
2002-05-21 16:54:58 +00:00
Ruslan Ermilov
66c795d4f4 Added support for ia64 and sparc64. 2002-05-21 15:36:29 +00:00
Yoshihiro Takahashi
93bb160832 Fixed to conflict labels.
Submitted by:	Kaho Toshikazu <kaho@elam.kais.kyoto-u.ac.jp>
2002-05-21 12:53:48 +00:00
Yoshihiro Takahashi
9b96eed728 Remove unneeded ## for GCC 3.1 2002-05-21 12:50:20 +00:00
Hajimu UMEMOTO
188450c746 Have RTF_HOST for /128 destionation. 2002-05-21 11:43:53 +00:00
Brian Somers
3eaa768da0 Mention our support of the authentication side of rfc2548 2002-05-21 10:54:07 +00:00
Yoshihiro Takahashi
b827692436 MFi386: revision 1.22 2002-05-21 09:44:52 +00:00
Mark Murray
95f435e76a Remove ptx. It is not used anywhere in the base system, has not been
maintained for years and is very old code. If there is any need for
it, I suspect that ports would be a better place.

No objection from:	current@freebsd.org
2002-05-21 09:20:34 +00:00
Peter Wemm
1f777d8747 Do not guess what a bool is, just use it. 2002-05-21 08:34:18 +00:00
Peter Wemm
42d4025c74 Make this a little easier to build standalone. (same change as libpanel) 2002-05-21 07:08:30 +00:00
Peter Wemm
3e1a1dd23d This commit was generated by cvs2svn to compensate for changes in r97055,
which included commits to RCS files with non-trunk default branches.
2002-05-21 06:52:47 +00:00
Peter Wemm
c8930be1de Initial update of bmake glue for ncurses-5.2-20020518 2002-05-21 05:41:07 +00:00
Peter Wemm
e43996e59a Initial update of bmake glue for ncurses-5.2-20020518. More to come. 2002-05-21 05:40:28 +00:00
Peter Wemm
a17d2cb23c Merge ncurses-5.2-20010512 -> ncurses-5.2-20020518 changes onto mainline. 2002-05-21 05:38:04 +00:00
Peter Wemm
7467abe828 This commit was generated by cvs2svn to compensate for changes in r97049,
which included commits to RCS files with non-trunk default branches.
2002-05-21 05:30:25 +00:00
Peter Wemm
39f2269fcb Import ncurses-5.2-20020518 onto the vendor branch.
Obtained from: ftp://dickey.his.com/ncurses/
2002-05-21 05:30:25 +00:00
Benno Rice
87efda010f Spread the word of PowerPC. 2002-05-21 04:25:24 +00:00
Noriaki Mitsunaga
15e19cbbe8 MFi386: 1.398-1.399 (${MACHINE_ARCH}_dump.c -> dump_machdep.c) 2002-05-21 04:13:08 +00:00
Benno Rice
7191eaa757 Spread the word of PowerPC. 2002-05-21 04:00:47 +00:00
Benno Rice
56c18ed0ed Let this code know about PowerPC. 2002-05-21 03:40:42 +00:00
Bruce A. Mah
9152d4d39c New release notes: ls(1) -m/-p/-x, sh(1) -C/-u, tabs(1).
Deleted release note:  IFS.
2002-05-21 03:26:42 +00:00
Tim J. Robbins
4ef27b1a49 Mark argc as __unused to silence GCC. 2002-05-21 02:48:55 +00:00
Seigo Tanimura
102638407c Lock the writer socket across sorwakeup(fip->fi_writesock).
Spotted by:	peter
2002-05-21 02:37:56 +00:00
Tim J. Robbins
743f138e8d Build the tabs(1) utility.
PR:		36126
2002-05-21 02:36:12 +00:00
Tim J. Robbins
890a73ed39 Add an implementation of the tabs(1) utility, as required by SUSv3.
PR:		36126
2002-05-21 02:33:25 +00:00
Jake Burkholder
8a9bbbc50a Catch up to tte.h changes. 2002-05-21 02:22:49 +00:00
Jake Burkholder
2dbb68a495 Update tsb_tte_enter prototype per tsb.c rev 1.20. 2002-05-21 02:15:37 +00:00
Jake Burkholder
38c04dc163 Rewrite pmap_enter to avoid copying ttes in all cases.
Pass the tte data to tsb_tte_enter instead of a whole tte, also to avoid
copying.
2002-05-21 02:14:11 +00:00
Gregory Neil Shapiro
b943c00ef4 There are still many broken nameservers out there in the wild. Even
though I would personally prefer to see the broken nameservers fixed
instead of standards compliant applications work around them, I can't
force FreeBSD users to help fight that battle.

Submitted by:	Damon Anton Permezel <dap@damon.com>
MFC after:	2 days
		pending RE approval
2002-05-21 02:02:23 +00:00
Garance A Drosehn
d77254e807 Change parts of the source code to make it closer to style(9), mainly
changing indentation and some comments.  Main goal is not perfect style,
but just to reduce differences with NetBSD.  The object code is exactly
the same after this change as before it (except for assert() statements
which have moved).

Reviewed by:	/sbin/md5 on i386
Obtained from:	NetBSD
2002-05-21 00:44:18 +00:00
Jake Burkholder
f631b588f5 Redefine the tte accessor macros to take a pointer to a tte, instead of the
value of the tag or data field.
Add macros for getting the page shift, size and mask for the physical page
that a tte maps (which may be one of several sizes).
Use the new cache functions for invalidating single pages.
2002-05-21 00:29:02 +00:00
Marcel Moolenaar
5c8e25383a Include machine/ia64_cpu.h because we use ia64_mf().
Submitted by: ru
2002-05-21 00:04:08 +00:00
David E. O'Brien
34f67e88e6 Add gx(4) to the SEE ALSO. 2002-05-20 23:39:25 +00:00
Ian Dowse
d497e87891 Avoid exposing struct if_clone and the sys/queue.h macros to userland
programs by restricting these to the case where _KERNEL is defined.

Reviewed by:	brooks (ages ago)
2002-05-20 22:48:39 +00:00
Bruce A. Mah
551ea47838 Fix whitespace nits, no content changes. 2002-05-20 22:23:12 +00:00
Bruce A. Mah
422f2e3d98 New release notes: SA-02:24, SA-02:25. 2002-05-20 22:17:18 +00:00
Andrew R. Reiter
4cb674c960 - Turn a few DIAGNOSTIC into INVARIANTS since they are really sanity
checks.
2002-05-20 22:05:13 +00:00