Commit Graph

1697 Commits

Author SHA1 Message Date
Bruce Evans
baffceaddc Remove bogus and unused declaration and definition of Debugger(). 1994-11-15 14:49:56 +00:00
Bruce Evans
f8d920b2db Remove unused definition of Debugger(). 1994-11-15 14:49:12 +00:00
Bruce Evans
16bb31e361 Remove bogus declaration of Debugger(). Change the macro for Debugger()
to call the function instead of doing nothing.
1994-11-15 14:47:49 +00:00
Bruce Evans
d0c8f50566 Don't define KERNEL for compiling genassym. The prototype for the system
printf() is inconsistent with the prototype for the library printf() and
gets declared if DIAGNOSTIC is defined because <vm/vm_page.h> includes
<sys/systm.h>.
1994-11-15 14:43:45 +00:00
Bruce Evans
df708ff192 Include <sys/socket.h> for declaration of struct sockaddr. This helps
genassym compile when KERNEL is not defined.

Uniformize idempotency ifdef.
1994-11-15 14:41:38 +00:00
Bruce Evans
67f517330d Include <sys/time.h> so that we compile again provided <sys/param.h> is
included first (rtprio stuff broke this).

Add missing __dead2's.
1994-11-15 14:37:39 +00:00
Bruce Evans
84fac47641 Include <sys/disklabel.h> to prepare for slices. Don't include the
unused <sys/dkbad.h>.
1994-11-15 14:34:42 +00:00
Bruce Evans
5783a8ffe5 The SYMTAB_SPACE bloatometer was 40% out of date. 1994-11-15 14:28:46 +00:00
Bruce Evans
962cb277f0 Include <sys/systm.h> to get inlines for spl*() so that LINT kernel links. 1994-11-15 14:26:31 +00:00
Bruce Evans
e44e6415cf Disable prototypes that conflict with ones in <netinet/in_pcb.h>. The
conflicts stopped the LINT kernel from being buildable.
1994-11-15 14:23:06 +00:00
Bruce Evans
b0d1e6de04 Make gdt_segs[] public again for APM.
Make ldt[] public again and restore currentldt and _default_ldt for
USER_LDT.
1994-11-15 14:12:55 +00:00
Bruce Evans
dc4de4ca23 Fix type mismatches exposed by a recently added prototype. 1994-11-15 14:09:18 +00:00
Andreas Schulz
e9bc745de3 scsiconf.h:
Change the sc_link structure from 8 targets with 8 lun's to
16 targets with 8 lun's. Wide scsi and the ncr 825 does support 16 targets.
scsiconf.c:
move the addition of the trailing NUL's out of a then clause, they are also
needed in the else clause for an unknown device.
1994-11-14 23:39:33 +00:00
Andrey A. Chernov
775fca0065 Remove unused variable from previous commit 1994-11-14 19:32:11 +00:00
Andrey A. Chernov
c26acd6574 Add model autodetection code, idea from burgess@s069.infonet.net
This change affects probe printout, disklabel, devconf stuff
1994-11-14 19:25:43 +00:00
Bruce Evans
004bedeb68 Rewrite almost everything.
Alphabetize.

Write all i/o functions in sleep so that we don't use anything from
NetBSD.

Restore the correct type of u_int for ports.  This saves a whole cycle
per i/o on 486's.

Change `inline' back to __inline to avoid compiler warnings with
-Wreally-all.

Don't implement bdb() unless BDE_DEBUGGER is defined.  Declare bdb_exists
outside the function to avoid hundreds of compiler warnings.

Let the compiler pick the register in asms if possible.

Implement ffs() using inline asm().  gcc provides a slightly different
one.  It was broken in gcc-2.4.5 but works now.  Declaring a correct
version inline ensures getting a correct version.  FreeBSD-1.1.5 has
an slow inline version but FreeBSD-2.0 has a library version (which
probably never gets used).

Do inb() and outb() without using %edx for constant ports below 0x100.

Remove casts to the same type in queue functions.

Declare prototypes for everything implemented i386/*.s and also for
everything that is normally implemented as an inline here (I don't
like the current complete dependency on gcc).  Ifdef out the prototypes
that are declared elsewhere.  THere should be a separate header to
declare things implemented in i386/*.s, but then it would be harder
to override declarations with inlines.

${UII}
1994-11-14 15:04:06 +00:00
Bruce Evans
663f148514 Log processes that exit with an masked npx exception that would trap
with the current default exception (un)mask.  There should be no such
processes unless you change the mask.  Someday the mask should be
changed to the IEEE default of everything masked.  The npx state
gets saved so that it can be checked and this may have the side effect
of fixing a bug that was reported for 1.1.5.  (npx exceptions may
sometimes leak across exits and clobber another process.  I can't see
how this can happen.)

Get some missing/wrong declarations from headers now that the headers
have them.
1994-11-14 14:59:06 +00:00
Bruce Evans
1b099e1e02 Hide the declaration of ffs() if an inline ffs() is implemented.
I couldn't find a better way to avoid compiler warnings about
redundant and/or inconsistent declaration of ffs().  I'd like to
be able to declare prototypes in general headers without committing
to implementing them as `static inline' or `extern', but there
seems to be no way to do this with gcc-2.6.1.  E.g.,

	int foo(void);
	static __inline int foo(void) { return 1; }

causes a warning about the linkage mismatch, while the opposite
order causes a warning about the redundant declaration.
1994-11-14 14:56:46 +00:00
Bruce Evans
e77e2e6ca1 Oops, the previous commit got the diff for the log message instead of
the following.

Move declarations to and from <machine/segments.h>.  Make segment stuff
static if possible.

Remove unused (although initialized) global variables _default_ldt,
currentldt, _gsel_tss (rename the latter to the auto variable
gtel_tss).

Use "correct" and consistent types for interrupt handlers.

Remove a mailing address from the code.

Fix type mismatches found by adding prototypes.
1994-11-14 14:23:54 +00:00
Bruce Evans
30008dda2d (Bogus several hundred line diff for a log message deleted. See rev 1.91
for the intended log message. -DG)
1994-11-14 14:19:54 +00:00
Bruce Evans
095b0028db Move declarations of atdevbase and rtcin() to cpufunc.h (a less wrong
place).

Fix spelling error.

Uniformize idempotency ifdef.
1994-11-14 14:19:10 +00:00
Bruce Evans
040f100044 Remove 1.5+K of bloat for unused idt entries.
Partly support BDE_DEBUGGER.  Still broken by conflict with APM.  Does
nothing if BDE_DEBUGGER is not defined.

Clean up prototypes and data declarations.  Declare most of the segment
functions that are implemented in support.s.  Make data private in
machdep.c if possible.

Parenthesize expressions in macros properly!

${Uniformize idempotency ifdef}.
1994-11-14 14:18:15 +00:00
Bruce Evans
e00dc32993 Remove extra idempotency ifdef and uniformize the other one.
Comment about support for 4 different spellings of KERNEL.
1994-11-14 14:13:13 +00:00
Bruce Evans
3bbb00e1a3 Declare inline functions as __inline and with new-style parameter lists
to avoid compiler warnings.

Clean up prototypes: alphabetize; don't use redundant `extern' or
meaningless `extern inline'.

Uniformize idempotency ifdef.
1994-11-14 14:12:24 +00:00
Bruce Evans
080e34f38b Declare fuswintr() and suswintr() the same as fusword() and susword().
(These functions are implemented in assembler so the compiler can't
check the declarations.)

Clean up prototypes: restore CSRG's alphabetical order, arg names in
prototypes, formatting to fit in 80 columns
1994-11-14 14:09:38 +00:00
Bruce Evans
67df6ed30c if.h:
Declare a complete prototype for the function pointer *ifa_rtrequest.

radix.h:
Declare a complete prototype for the function pointer *rnh_walktree
and for the function rn_walktree.

Uniformize idempotency ifdef.
1994-11-14 14:06:06 +00:00
Bruce Evans
dedb3ba62d Update stupid declaration in comment to match code.
Declare all public syscntlfn's here.
1994-11-14 13:59:09 +00:00
Bruce Evans
6124ac44aa Move declarations of public functions to <sys/sysctl.h>.
Make some private data static.

Comment about MAXPATHLEN bytes of bloat for the kernel name.
1994-11-14 13:58:30 +00:00
Bruce Evans
bf40299d44 Declare a complete prototype for the function pointer *ext_free and the
function m_devget.

Uniformize idempotency ifdef.
1994-11-14 13:54:20 +00:00
Bruce Evans
80d08a820d Add prototype for vfinddev(). 1994-11-14 13:51:53 +00:00
Bruce Evans
ad7dee4d66 Remove unused `struct disklabel' (the declarations that used it went away).
Uniformize idempotency ifdef.
1994-11-14 13:50:15 +00:00
Bruce Evans
36633bf49d Undo a previous change. <sys/disklabel.h> was broken, not these files. 1994-11-14 13:22:52 +00:00
Bruce Evans
3d06c6b3f5 Declare `struct dkbad' with the correct scope so that everything including
<sys/disklabel.h> doesn't have to include <sys/dkbad.h> to avoid compiler
warnings.
1994-11-14 13:08:44 +00:00
Bruce Evans
4f21005bdd pmap.h:
Disable the bogus declaration of pmap_bootstrap().  Since its arg list
is machine-dependent, it must be declared in a machine-dependent header.

vm_page.h:
Change `inline' to `__inline' and old-style function parameter lists for
inlined functions to new-style.

`inline' and old-style function parameter lists should never be used in
system headers, even in very machine-dependent ones, because they cause
warnings from gcc -Wreally-all.
1994-11-14 08:19:08 +00:00
Bruce Evans
f0f78037fe Remove the bogus include of <sys/dkbad.h>. 1994-11-14 07:01:58 +00:00
Bruce Evans
2c02e8a20a Replace strtol() by strtoul() so that "negative" addresses and masks don't
get truncated to LONG_MAX.  Don't lobotomize the merged library source.

Make all private data static.

Use int_parms for the i/o "address" since the "address" is really a number
and is represented as an int.

Add command `flags' to allow changing device flags.

Fix scrolling of device listing.  Only scrolling of the current devtab
was controlled.  Reprint the header after scrolling.

Rename commands and change strings to match their config(8) keywords:

	io -> port
	IOaddr -> port
	mem -> iomem (abbreviation is io :-()
	MemAddr -> iomem
	case changes

Don't use NULL for ASCII NUL.

Call strtoul() with base 0 for both numbers and addresses so that input
is consistent and hex and octal can be used for numbers.

Fix entry of irq number.  Check the range at no extra cost.  It wasn't
possible to enter irq -1.

Format device listing better.  Large numbers (such as 0xffffffff for the
GENERIC lpt0 port) messed up the formatting.

Show the unit number in the device listing.  Comment about the fields
that aren't shown.
1994-11-14 03:22:28 +00:00
David Greenman
b0150bfc4b Set laundry flag when transitioning an inactive page from clean to dirty.
This fixes a performance bug where pages would sometimes not be paged
out when they could be.

Submitted by:	John Dyson
1994-11-14 02:57:40 +00:00
David Greenman
317205ca28 Fixed bug where a read-behind to a negative offset would occur if the
fault was at offset 0 in the object. This resulted in more overhead but
was othewise benign. Added incore() check in vnode_pager_has_page()
to work around a problem with LFS...other than slightly higher overhead,
this change has no affect on UFS.
1994-11-13 22:48:55 +00:00
Nate Williams
0dc02ef480 Fixed a mis-spelling. 1994-11-13 21:19:18 +00:00
Nate Williams
7145a92269 Changed output message in interrupt-driven lp device from
'TCP/IP interface' to 'TCP/IP capable interface' to avoid confusion.
1994-11-13 21:14:30 +00:00
Poul-Henning Kamp
55ff8fb132 Add a new "distribute" target. This is a variant of install, which will
put the stuff into the right "distribution".  As default things end up
in "bindist".

Normal (ie: most) makefiles know naught of this.

More commits will follow, which will direct various parts of the tree
into the distribution we want them in.

Some of the grief of being release-engineer is supposed to go away with this.
1994-11-13 21:05:28 +00:00
David Greenman
24ea4a9671 Fixed bugs in accounting of swap space that resulted in the pager thinking
it was out of space when it really wasn't.

Submitted by:	John Dyson
1994-11-13 15:36:48 +00:00
David Greenman
bfbfac11c9 Implemented swap locking via P_SWAPPING flag. It was possible for a process
to be chosen for swap-in while it was being swapped-out. This was BAD.

Submitted by:	John Dyson
1994-11-13 12:47:07 +00:00
David Greenman
0d15e0ac1e Added P_SWAPPING flag to implement a lock for swap in. It was possible for
a process to be chosen for swap-in while it was being swapped-out. This was
BAD.

Submitted by:	John Dyson
1994-11-13 12:46:08 +00:00
David Greenman
07d0d0fc9c Added support for SIOCSIFMTU ioctl. Fixed bug that caused panic at boot time
related to interrupts being enabled before the device attach. The interrupt
should be mapped *after* the device attach.
1994-11-13 12:39:38 +00:00
Justin T. Gibbs
e424e8bfac Add ep0 line to kernel config files. 1994-11-13 10:17:07 +00:00
Justin T. Gibbs
72f30c2bd3 Andres Vega Garcia's improvements to the ep driver. This driver is a merging
of the 1.1.5 driver, a recent version of the NetBSD driver, Andres'
transmission start threshold code, and all other relavent changes to the driver
since it was brought into 2.0.  The multicast support from NetBSD has not be
folded in yet.  I've tested it under high loads for two weeks and it is now
robust enough to be included in the GENERIC kernel.
Reviewed by: gibbs
Submitted by:	vega@sophia.inria.fr (Andres Vega Garcia)
1994-11-13 10:12:37 +00:00
Nate Williams
412ac969ed Add Matt Thomas' le0 DEPCA driver to the GENERIC kernel. This works
but I can't test to see if it walks on other ethernet drivers.  Can the
install folks add this driver to the install script?
1994-11-13 09:42:07 +00:00
David Greenman
ef53d2f8b6 Nuked ed2 - it was added for the common 16bit card case where the
irq is 10. This is auto-sensed/configured now in the 'ed' driver.
1994-11-13 07:20:03 +00:00
David Greenman
fed69e2fd2 In cases where it is possible, use the card's configured irq rather than
the one compiled into the kernel. Left in some commented-out shared memory
performance test code.
1994-11-13 07:17:46 +00:00