Commit Graph

104936 Commits

Author SHA1 Message Date
tjr
6eb4fe608d Report input errors instead of ignoring them. 2004-07-09 05:15:46 +00:00
imp
808004143b Fix mismerge of fdc. Also, OLDCARD never was supported on amd64, so
remove fdc attachment for it.
2004-07-09 05:05:13 +00:00
das
d1dd9f2691 Document these functions as being in libm, not libc. Some of them
*are* in libc for historical reasons, but programmers should not rely
on that fact.

Also remove a BUGS section that is not relevant here.
2004-07-09 03:33:00 +00:00
das
85f7dd7629 Implement the classification macros isfinite(), isinf(), isnan(), and
isnormal() the hard way, rather than relying on fpclassify().  This is
a lose in the sense that we need a total of 12 functions, but it is
necessary for binary compatibility because we have never bumped libm's
major version number.  In particular, isinf(), isnan(), and isnanf()
were BSD libc functions before they were C99 macros, so we can't
reimplement them in terms of fpclassify() without adding a dependency
on libc.so.5.  I have tried to arrange things so that programs that
could be compiled in FreeBSD 4.X will generate the same external
references when compiled in 5.X.  At the same time, the new macros
should remain C99-compliant.

The isinf() and isnan() functions remain in libc for historical
reasons; however, I have moved the functions that implement the macros
isfinite() and isnormal() to libm where they belong.  Moreover,
half a dozen MD versions of isinf() and isnan() have been replaced
with MI versions that work equally well.

Prodded by:	kris
2004-07-09 03:32:40 +00:00
das
ae7917a48c Define the following macros in terms of [gi]cc builtins when the
builtins are available: HUGE_VAL, HUGE_VALF, HUGE_VALL, INFINITY,
and NAN.  These macros now expand to floating-point constant
expressions rather than external references, as required by C99.
Other compilers will retain the historical behavior.  Note that
it is not possible say, e.g.
#define	HUGE_VAL	1.0e9999
because the above may result in diagnostics at translation time
and spurious exceptions at runtime.  Hence the need for compiler
support for these features.

Also use builtins to implement the macros isgreater(),
isgreaterequal(), isless(), islessequal(), islessgreater(),
and isunordered() when such builtins are available.
Although the old macros are correct, the builtin versions
are much faster, and they avoid double-expansion problems.
2004-07-09 03:31:09 +00:00
bms
71516e5d3d Document compile-time switches here as I'm going to yank them from
if_de.c.
2004-07-09 02:38:25 +00:00
tjr
f99092105e Update for multibyte character support: remove BUGS and change the
description of the -c option to refer to "values" instead of "byte values".
2004-07-09 02:33:46 +00:00
bms
55f022a9b2 Further improve locking in xl(4):
- Avoid an additional lock acquire/release when leaving xl_intr(), by
   changing xl_start*() to xl_start*_locked(), and calling the appropriate
   routine by chip revision (as the DMA descriptors are different).

 - Simplify the appropriate routines now that they are called with the
   lock held.

This should save a significant amount of CPU cycles spent on servicing
each interrupt for both UP and SMP whilst remaining MPSAFE.

Tested by:	rwatson
2004-07-09 02:28:23 +00:00
bms
6cb6d1bbcd Apply the long-overdue hatchet of style(9) death to this file. 2004-07-09 02:19:07 +00:00
tjr
00d94fc60e Add support for multibyte characters. The challenge here was to use
data structures that scale better with large character sets, instead of
arrays indexed by character value:
- Sets of characters to delete/squeeze are stored in a new "cset" structure,
which is implemented as a splay tree of extents. This structure has the
ability to store character classes (ala wctype(3)), but this is not
currently fully utilized.
- Mappings between characters are stored in a new "cmap" structure, which
is also a splay tree.
- The parser no longer builds arrays containing all the characters in a
particular class; instead, next() determines them on-the-fly using
nextwctype(3).
2004-07-09 02:08:07 +00:00
rwatson
14f950b256 Remove spl()'s from do_sendfile(). 2004-07-09 01:46:03 +00:00
bms
c21379ea20 Further locking improvements for vr(4):
- Add *_locked() entry points as needed to avoid unnecessary lock thrashing.
 - Use these entry points wisely.
 - Only acquire the lock once when servicing an interrupt.
 - Check 'suspended' on interrupt to avoid racing detach.
 - Correct a mis-spelled comment.
 - Don't take the lock in vr_reset() to avoid lock thrashing in attach.
  - Comment this.

Reviewed by:	-net (silence)
2004-07-09 00:17:14 +00:00
bms
8661f63341 Add a 'suspended' flag to softc so that we can avoid races on detach. 2004-07-09 00:12:41 +00:00
bms
a157b010f3 Actually turn on driver locking in xl(4). 2004-07-09 00:11:25 +00:00
bms
06a37782bc Further rl(4) locking improvements:
- Avoid unnecessary re-acquisition elsewhere by adding *_locked()
   entry points as needed.
 - Correct locking for the DEVICE_POLLING case.
 - Hold the driver lock for the entire duration of interrupt servicing,
   to avoid unneeded, expensive re-acquisition; use *_locked() entry
   points as needed.

Reviewed by:	-net (silence)
2004-07-09 00:07:06 +00:00
brian
5436cdcb7a Change the following environment variables to kernel options:
bootp -> BOOTP
    bootp.nfsroot -> BOOTP_NFSROOT
    bootp.nfsv3 -> BOOTP_NFSV3
    bootp.compat -> BOOTP_COMPAT
    bootp.wired_to -> BOOTP_WIRED_TO

- i.e. back out the previous commit.  It's already possible to
pxeboot(8) with a GENERIC kernel.

Pointed out by: dwmalone
2004-07-08 22:35:36 +00:00
jhb
ef717f6785 - Move contents of sched_add() into a sched_add_internal() function that
takes an argument to specify if it should preempt or not.  Don't preempt
  when sched_add_internal() is called from kseq_idled() or kseq_assign()
  as in those cases we are about to call mi_switch() anyways.  Also, doing
  so during the first context switch on an AP leads to a NULL pointer deref
  because curthread is NULL.
- Reenable preemption for ULE.

Submitted by:	Taku YAMAMOTO taku at tackymt.homeip.net
2004-07-08 21:45:04 +00:00
marcel
b82ce85c5b MFamd64 (1.275):
Reduce the scope of the Giant lock being held for non-mpsafe syscalls.
There was way too much code being covered.
2004-07-08 21:08:07 +00:00
cognet
3e9bf7a7c9 Define NSFBUFS and use it. 2004-07-08 21:03:35 +00:00
wollman
1099dc47c8 Eliminate some magic numbers and correct description of _PC_NO_TRUNC.
Slight emendation to _PC_CHOWN_RESTRICTED, which is in a very similar
boat.
2004-07-08 20:27:38 +00:00
trhodes
b4a8905e78 Remove support for gemdos, John removed it from the driver awhile ago.
Glanced at by:	jhb
2004-07-08 18:06:44 +00:00
harti
de8f3e232a Add the new call control layer to the library and install the man page
for the service access point (SAP) stuff now that it is really available.
2004-07-08 17:09:55 +00:00
harti
be3dc5e5c4 Remove the g++ include directory - it has been gone a long time
ago and add it's new incarnation c++ instead.
2004-07-08 17:07:30 +00:00
obrien
a2aab3b620 MAJOR cleanup of the Bmake framework.
This includes removing all vestiges of the old not-really supported
ability to build cross tools targeting non-FreeBSD systems, such as
m68k Lynx and NetBSD.  Move as much duplicated code from platform
Makefiles into the shared Makefiles.  Add a simple mechanism for
specifying ELF 'ldscripts'.  Also share as many .h files as possible
(now a single bfd.h vs. one per platform).
2004-07-08 17:05:34 +00:00
harti
5f6c3ef0e4 Add a description what is in the sub-directories of /usr/include/netnatm. 2004-07-08 16:54:39 +00:00
harti
a268ce68fc Add a directory for the API include files. 2004-07-08 16:48:43 +00:00
keramida
a4946f8211 Build upon the nice work of Alfred and add sorting capabilities to
the -m "io" mode of top.

Approved by:	alfred
2004-07-08 16:45:55 +00:00
harti
43a26a9ece This commit was generated by cvs2svn to compensate for changes in r131826,
which included commits to RCS files with non-trunk default branches.
2004-07-08 16:39:03 +00:00
harti
00f69125b4 Virgin import of NgATM share kernel/user part 1.0 2004-07-08 16:39:03 +00:00
harti
3031b2f96c This commit was generated by cvs2svn to compensate for changes in r131823,
which included commits to RCS files with non-trunk default branches.
2004-07-08 16:38:36 +00:00
harti
8fe16f09eb Virgin import of NgATM user part 1.0 2004-07-08 16:38:36 +00:00
trhodes
0206f02f67 Note that the implementation notes were not only derived from NetBSD but
also applies to other Arcnet drivers.  Note that it should eventually
be moved to a more generic section.
2004-07-08 16:33:01 +00:00
marcel
b04b40d529 Better handle the break instruction trap. The runtime specification
has outlined which break numbers are software interrupts, debugger
breakpoints and ABI specific breaks. We mostly treated all break
numbers we didn't care about as debugger breakpoints.
2004-07-08 16:30:42 +00:00
phk
7db7b24a67 Make withering water tight.
When we orphan/wither a provider, an attached geom+consumer could
end up being withered as a result and it may be in front of us in
the normal object scanning order so we need to do multi-pass.  On
the other hand, there may be withering stuff we can't get rid off
(yet), so we need to keep track of both the existence of withering
stuff and if there is more we can do at this time.
2004-07-08 16:17:14 +00:00
nyan
a311e07bc6 - Merged from sys/dev/fdc/fdc.c revision 1.275.
- Break out the cbus front end from fd.c.
- Remove the pccard support because it was broken.
2004-07-08 13:56:17 +00:00
keramida
020ead41a5 Fix some grammar-wording knit.
PR:		docs/66540
Submitted by:	Michel Lavondes <fox@vader.aacc.cc.md.us>
MFC after:	3 days
2004-07-08 13:49:39 +00:00
nyan
6a0e9c6200 MFi386: revision 1.16. 2004-07-08 13:48:49 +00:00
nyan
71366e5a9a Remove obsolete defines. 2004-07-08 13:47:56 +00:00
nyan
9b5a517807 MFi386: revision 1.1164. 2004-07-08 13:47:01 +00:00
brian
8e8f31e494 Change the following kernel options to environment variables:
BOOTP -> bootp
    BOOTP_NFSROOT -> bootp.nfsroot
    BOOTP_NFSV3 -> bootp.nfsv3
    BOOTP_COMPAT -> bootp.compat
    BOOTP_WIRED_TO -> bootp.wired_to

This lets you PXE boot with a GENERIC kernel by putting this sort of thing
in loader.conf:

    bootp="YES"
    bootp.nfsroot="YES"
    bootp.nfsv3="YES"
    bootp.wired_to="bge1"

or even setting the variables manually from the OK prompt.
2004-07-08 13:40:33 +00:00
ru
29e2e5157a Markup overhaul. 2004-07-08 13:24:58 +00:00
ru
376b1589f4 Markup nits. 2004-07-08 12:55:24 +00:00
grehan
f34f5508e5 Use a linker script for the loader. This avoids issues with
command-line options, such as misaligning the data segment.
Exposed by the limited PearPC OFW ELF loader, but a good thing in
general.
2004-07-08 12:52:35 +00:00
ru
2d5f0f1861 Markup laundry. 2004-07-08 12:52:33 +00:00
ru
3873338d9a Use the commonly used list type to enumerate supported devices. 2004-07-08 12:48:16 +00:00
grehan
e9a2c89c23 G4 requires isync after 256Mb ibat/dbat update, G3 requires
isync after each bat update. Otherwise, pmap_bootstrap causes
an ISI exception. A fall-out of loader BAT removal.
2004-07-08 12:47:36 +00:00
ru
99e193c324 Slight markup fixes. 2004-07-08 12:45:46 +00:00
ru
1d1296ee07 Make the list type match the common type used to enumerate supported devices. 2004-07-08 12:40:42 +00:00
ru
85752d6c7a Added missing markup bits. 2004-07-08 12:37:18 +00:00
ru
5c65d45625 Protect "e.g." from being interpreted as end of sentence. 2004-07-08 12:36:20 +00:00