Commit Graph

1173 Commits

Author SHA1 Message Date
Poul-Henning Kamp
905d9e84dd Fixed the problem where "make depend" was mandatory for building kernel.
moved vnode_if.o up before ${OBJS} in the SYSTEM_OBJS list.
1994-09-23 07:01:59 +00:00
David Greenman
a6cd0a2477 Increased SHMMAXPGS from 512 to 1024 now that there is plenty of kernel
virtual memory.
1994-09-23 07:00:12 +00:00
David Greenman
16b49b3e73 Removed last vestige of MULTICAST option. 1994-09-23 06:22:58 +00:00
Garrett Wollman
e98e6beea3 Add PPP. NB: this is VERY VERY VERY green code, added to make it easier
to test things out.  It compiles, but I don't know if it works (yet).
1994-09-23 00:14:11 +00:00
Garrett Wollman
45d17740c2 Make the kernel side of PPP compile. 1994-09-23 00:13:22 +00:00
Garrett Wollman
2980d1306a Initial revision 1994-09-23 00:10:32 +00:00
Garrett Wollman
42477d75d0 Create NFS LKM. 1994-09-22 22:12:59 +00:00
Garrett Wollman
e21fa31a8e Make NFS loadable. 1994-09-22 22:10:49 +00:00
Andrey A. Chernov
b6b51eb3b0 make 8bit clean defaults 1994-09-22 19:51:43 +00:00
Garrett Wollman
c9b1d6048d More loadable VFS changes:
- Make a number of filesystems work again when they are statically compiled
  (blush)

- FIFOs are no longer optional; ``options FIFO'' removed from distributed
  config files.
1994-09-22 19:38:41 +00:00
David Greenman
6ce81dd1b2 From 1.1.5:
>revision 1.8
>date: 1994/06/03 06:42:30;  author: davidg;  state: Exp;  lines: +2 -2
>Patch from Bruce Evans: npxintr() needs to mask softclock().
1994-09-22 14:44:16 +00:00
Garrett Wollman
862cdb8eb6 Call ffs ``ufs'' for the benefit of poor, confused user-land programs. 1994-09-22 01:57:27 +00:00
Garrett Wollman
dff55bb5c2 mount.h: Declare getvfs* functions from libc.
vfs_init.c: Fix fs_sysctl() so that getvfs* functions actually work.
1994-09-22 01:05:09 +00:00
Garrett Wollman
4b1e44f14a Build LKMs for all ``easy'' filesystems. (lfs can be done, but it's more
work; ditto NFS and it's even more work.)
1994-09-21 23:27:16 +00:00
Garrett Wollman
67bfdf835b Fix a few niggling little bugs:
- set args->lkm_offset correctly so that VFS modules can be unloaded
- initialize _fs_vfsops.vfc_refcount correctly so that VFS modules can
  be unloaded
- include kernel.h in a few placves to get the correct definition of DATA_SET
1994-09-21 23:22:52 +00:00
Bruce Evans
f6d370a798 Fix the consistent mistranslation of Linux's get_fs_word() and
put_fs_word() to fuword() and suword().  Linux words are 16 bits
but BSD words are 32-bits, at least on vax's.  Writing a too-large
word trashed the neighbouring short word.

Bruce
1994-09-21 22:22:48 +00:00
Bruce Evans
ccadde2151 Fix compiler warnings. 1994-09-21 21:58:39 +00:00
David Greenman
36317691a4 #if 0'd evil dynamic fifo trigger level adjustment; it just bit me and
a couple of other people again.
1994-09-21 19:39:25 +00:00
David Greenman
354c733261 From 1.1.5:
>date: 1994/05/27 01:09:16;  author: ache;  state: Exp;  lines: +3 -3
>Russian keymap: Ctrl-Alt-Del with NumLock on fixed
1994-09-21 18:43:08 +00:00
David Greenman
11fe0935dd From 1.1.5:
>date: 1994/06/15 14:35:30;  author: paul;  state: Exp;  lines: +3 -3
>CHanged MAXMEM to ISMAXMEM for safety
1994-09-21 18:33:23 +00:00
David Greenman
868424648b Fixed up a couple of comments. 1994-09-21 18:17:56 +00:00
Garrett Wollman
1aa57be361 Make it easier to create filesystem LKMs by doing most of the
work in the Makefile.  Just define VFS_LKM and you're off!
1994-09-21 03:49:59 +00:00
Garrett Wollman
c901836c14 Implemented loadable VFS modules, and made most existing filesystems
loadable.  (NFS is a notable exception.)
1994-09-21 03:47:43 +00:00
Jordan K. Hubbard
84cc2dc332 Add entry for transputer (cdev 8).
Reviewed by:	jkh
Submitted by:	luigi
1994-09-21 01:33:00 +00:00
Jordan K. Hubbard
db814a26b3 Add entries for transputer driver.
Reviewed by:	jkh
Submitted by:	luigi
1994-09-21 01:30:15 +00:00
Jordan K. Hubbard
27552c6f58 Add the transputer driver from Christoph Niemann, Luigi Rizzo and
Lorenzo Vicisano
Reviewed by:	jkh
Submitted by:	luigi
1994-09-21 01:29:41 +00:00
Bruce Evans
8793135f2d Don't provide bogus source operands in some asms. This probably shouldn't
matter, but similar bogusness in npx.c causes compiling without -O to fail.

Use __volatile in all asms.

Parenthesize macro args.

Change the names of the macros to avoid namespace pollution.

Remove unnecessary "#ifdef __i386__".

Sort #defines.

Add comments.
1994-09-20 22:26:37 +00:00
Adam David
f89971dfe7 Better documentation, 1ms calibration, default 5 seconds BOOTWAIT
Reviewed by:	adam
Submitted by:	rgrimes
1994-09-20 22:25:00 +00:00
Bruce Evans
2c5bafb1f8 Parenthesize macro args.
Comment #endif's.
1994-09-20 22:24:26 +00:00
Bruce Evans
38a03467df Don't supply the `usermode' arg to softclock(). The 2.0 softclock() doesn't
take an arg.
1994-09-20 21:35:49 +00:00
Bruce Evans
7fecb8e845 Don't lose the RTC interrupt in resettodr(). 1994-09-20 21:20:46 +00:00
David Greenman
db3170abc8 Sorted. 1994-09-20 15:55:09 +00:00
Bruce Evans
1819efa6e7 Use `1' for a boolean value instead of something irrelevant (MNT_WAIT)
that happens to be nonzero.
1994-09-20 05:53:24 +00:00
Bruce Evans
0b53fbe8da Don't use SIG_DFL or SIG_IGN for case label expressions. ANSI requires
such expressions to have integral type.  "gcc -ansi -pedantic -W..."
fails to diagnose this constraint error.
1994-09-20 05:42:46 +00:00
Bruce Evans
2b3d0249bd Remove the alias splnone() for spl0(). It was used only once. 1994-09-20 05:07:32 +00:00
Andrey A. Chernov
e79033e4cf resettodr() now exists, enable it 1994-09-20 00:32:40 +00:00
Andrey A. Chernov
7b915aa631 resettodr() implemented, inittodr() fixed
Submitted by: me & chris@gnome.co.uk
1994-09-20 00:31:07 +00:00
Garrett Wollman
075e8696f8 Put back missing .text before swi_net. This could probably be made faster;
I invite Bruce to look at it.
1994-09-19 22:24:31 +00:00
Andrey A. Chernov
a40a3595b7 oget/sethostname: add missing argument to kern_sysctl
Reviewed by:
Submitted by:
Obtained from:
1994-09-19 21:15:14 +00:00
Andrey A. Chernov
e9e2a85282 sysctl incorrectly check name[2] instead of name[1] 1994-09-19 21:07:00 +00:00
Adam David
fcf8309d74 Default wait approx 10 seconds for keypress during boot
Added comment about multiplication factor
1994-09-19 19:54:49 +00:00
Doug Rabson
2eed683f10 Changed some NetBSD backwards compatibility code which was confusing mountd. 1994-09-19 19:24:44 +00:00
Andrey A. Chernov
1e35c6c787 Add vm/vm.h for complete sysctl type.
Remove wrong time declaration, already have correct in kernel.h
(kern_ntptime not compiled without this changes)
1994-09-19 17:39:21 +00:00
Doug Rabson
834d25cdf1 Reversed last revision which was a mistake. 1994-09-19 15:49:46 +00:00
Doug Rabson
3f9a698275 Added MSDOSFS option. 1994-09-19 15:45:02 +00:00
Doug Rabson
27a0bc89a4 Added msdosfs.
Obtained from: NetBSD
1994-09-19 15:41:57 +00:00
Bruce Evans
8ebeb948c5 The previous revision got the wrong log message (for clock.c). It should
have got the following:

Back out the changes in the previous revision.  Function-like macros
were replaced by compound statements that work in less contexts.

Unoformize idempotency #ifdef.
1994-09-18 23:18:32 +00:00
Bruce Evans
eb51e37703 Remove some unnecessary #includes.
Restore the simple leap year calculation as a macro and document it so
that it doesn't become complicated again.  The simple version works
for all leap years covered by 32-bit time_t's.  The complicated version
doesn't work for all leap years covered by 64-bit time_t's since among
other reasons, the solar system is not stable for long enough.

Fix declarations.

Nuke spinwait().
1994-09-18 23:08:56 +00:00
Bruce Evans
6485b5ff77 Use new-style declarations for min/max functions so that
"gcc -Wstrict-prototypes" doesn't emit warnings about them.

Write each min/max functions on a single line so that the similarity and
triviality of the functions is more obvious.

Put the quad min/max functions in the correct place (aphabetical order).

The u_quad min/max functions are missing.  Only 3 or 4 of the min/max
functions are actually used.  sys/socketvar.h ``should use "lmin" but
it doesn't exist now''.  lmin does exist now, but isn't used.  Since we
depend on gcc for `inline', perhaps we should depend on it for __typeof
and function-expressions and use only macros min() and max() that work
for any types (I'm not sure how to handle mixed types).
1994-09-18 23:04:25 +00:00
Bruce Evans
6052572ac4 Replace unsigned' by u_int' so that it is not necessary to include
<sys/types.h> before including this header.  This header is now
idempotent.

Uniformize idempotency #ifdef.
1994-09-18 22:05:22 +00:00
Bruce Evans
e4b7e53da8 Clean up #includes. <machine/spl.h> has to be included by almost everything
in case an spl inline is used, so this is not the place to include it.

Uniformize idempotency #ifdef.
1994-09-18 21:37:56 +00:00
Bruce Evans
a58a9ef8c0 Remove "#ifdef notdef" around declaration of fuibyte(). fuibyte() _is_
actually used.

Remove "#ifdef __GNUC__" around some __dead* declarations.  __dead* is
harmless if __GNUC__ is not defined.

Uniformize idempotency #ifdef.
1994-09-18 21:30:30 +00:00
Stefan Eßer
d49fc97c3c Removed obsolete example of specifying PCI IntA to IRQ mapping for NCR. 1994-09-18 21:18:49 +00:00
Garrett Wollman
3f31c649d1 Redo Kernel NTP PLL support, kernel side.
This code is mostly taken from the 1.1 port (which was in turn taken from
Dave Mills's kern.tar.Z example).  A few significant differences:

1) ntp_gettime() is now a MIB variable rather than a system call.  A few
fiddles are done in libc to make it behave the same.

2) mono_time does not participate in the PLL adjustments.

3) A new interface has been defined (in <machine/clock.h>) for doing
possibly machine-dependent things around the time of the clock update.
This is used in Pentium kernels to disable interrupts, set `time', and
reset the CPU cycle counter as quickly as possible to avoid jitter in
microtime().  Measurements show an apparent resolution of a bit more than
8.14usec, which is reasonable given system-call overhead.
1994-09-18 20:40:01 +00:00
Steven Wallace
893f3712e5 Put LDDESTDIR before library listing. 1994-09-18 19:10:11 +00:00
Steven Wallace
dfc5d1d4eb Makefile: add ${LDDESTDIR} to linking of boot code so ${DESTDIR}/usr/lib
is used instead of /usr/lib

io.c: add #include <machine/cpufunc.h> as instructed by David Greenman to
avoid inb/outb linking errors.
NOTE:  I just discovered that if GNUC is not used the inline functions will not be expanded from the include file and real inb/outb functions would
be needed.
1994-09-18 07:39:55 +00:00
Poul-Henning Kamp
0999b624b0 Parallel-port TCP/IP interface can now take any MTU. 1994-09-18 06:12:45 +00:00
Joerg Wunsch
6b7bd95b6d Fixed the problem where the floppy has incorrectly failed probing
when the drive had been left on a cylinder > 67 after kernel boot. The
most common case for this is booting a kernel that is located on
the inner cylinders of a floppy.

Also removed all occurences of spinwait(), replaced by DELAY.
Nuked a return line saying nothing, this might make Bruce happy 8^)

Submitted by:	partially by Bruce Evans
1994-09-17 18:08:36 +00:00
David Greenman
3a2f7427fe Updated driver to the 1.1.5 version:
date: 1994/05/22 12:35:38;  author: joerg;  state: Exp;  lines: +6 -6
First round of floppy changes. Try making `fd' more robust.

New features:
  .  ioctl command for setting the drive type (density etc.); restricted
     to the super-user
  .  ioctl for getting/seting `drive options'; currently only option
     is FDOPT_NORETRY: inhibit the usual retries; used when verifying
     a newly formatted track

Fixes:
  .  function prototypes
  .  made all internal functions `static'
  .  cleaned up & corrected .h files
  .  restructured, to make the chaotic function sequence more rational
  .  compiled with -Wall, and cleared all warnings
  .  introduced a mirror for the (write-only) `digital output register',
     to avoid the current kludge
  .  device probing completed by seeking/recalibrating, and looking
     for track 0 being found
  .  holding the controller down in reset state while it is idle (and
     thus saving allot of headaches)
  .  make requests fail that are not a multiple of the (physical)
     sector size
  .  removed the fixed physical sector size (512 bytes), allowing for any
     size the controller could handle (128/256/512/1024 bytes)
  .  replaced some silly messages
  .  fixed the TRACE* macro usage, debugging reports should be complete
     now again (debugging output is HUGE! though)
  .  removed fd_timeout for SEEK command; seeks are always reported by
     the controller to succeed, since the `success' only refers to the
     controller's idea of success - there is no hardware line to tell about
     the seek end (other than the `track 0' line)
  .  catch SENSEI's that report about a `terminated due to READY changed'
     status - could happen after a controller reset
  .  converted ``hz / <something>'' divide operations to divisors that are
     powers of two, so gcc can optimize them into shifts
  .  write/format operations are checked against a write-protected medium
     now *prior* starting the operation
  .  error reports of `invalid command' and `wrong cylinder' will cause
     shortcuts in the retrier() now
  .  fixed a bug in the retrier() causing bogus block numbers to be reported
  .  fdformat() does care for errors now

Known Bugs:
  .  no attempts have been made (yet) to improve the performance
  .  sometimes, bogus ``seek/recalib failed'' messages are logged; this
     is still a bug in the driver, but it's not harmful since it's
     usually caught by the retrier()

Reviewed by:
Submitted by:
Obtained from:
1994-09-17 16:56:10 +00:00
Stefan Eßer
56c74915f8 Include <i386/include/cpufunc.h> to have outb() defined ... 1994-09-17 16:51:47 +00:00
David Greenman
789668e2a4 Got rid of compiler warnings. 1994-09-17 13:24:29 +00:00
Stefan Eßer
ac48588ac5 Changed CDOUTSTANDING back to a value of 2 (from 1), since this is now only
an upper limit, not a fixed value (ignoring the host adapter capabilities)
as before.
1994-09-16 23:43:28 +00:00
Garrett Wollman
0eec3684ff Per discussion on the mailing-lists, move LKMs from /sbin to /lkm, and
arrange for that directory to get created by mtree.  Also, process secure
directory after all the others, because the programs there may overlay
ones installed from the main part of the tree.
1994-09-16 20:24:29 +00:00
Garrett Wollman
ae32fff835 Delete unlikely-to-be-used filesystems from GENERIC kernels. 1994-09-16 20:14:03 +00:00
Doug Rabson
8bec092122 Added code for FreeBSD-1.1.5 backwards compatibility. 1994-09-16 17:43:22 +00:00
David Greenman
df9ab3049d Removed inclusion of pio.h and cpufunc.h (cpufunc.h is included from
systm.h). Merged functionality of pio.h into cpufunc.h. Cleaned up some
related code.
1994-09-16 13:33:56 +00:00
Paul Richards
5e2f961078 Moved include of cdefs.h outside of ifndef KERNEL so it always
gets included.
1994-09-16 11:44:45 +00:00
Jordan K. Hubbard
f6e8d525a8 Deal with outw being defined - the declaration clashes. 1994-09-16 11:22:33 +00:00
Jordan K. Hubbard
12cada7161 Add SYSV shm stuff back to LINT.
chflags noschg /kernel in Makefile.i386 so if our previous kernel
was installed by make install, the second won't fall over.
1994-09-16 10:23:46 +00:00
Poul-Henning Kamp
fe95e21fed Made the kernel compile even without "ether". 1994-09-16 05:47:06 +00:00
Andrey A. Chernov
3e2f490ab4 Remove all ADJKERNTZ references, now all this stuff in cpu.h 1994-09-16 01:09:42 +00:00
Andrey A. Chernov
dd067f0809 CPU_ADJKERNTZ added for resettodtr() 1994-09-16 01:05:24 +00:00
Andrey A. Chernov
3826e6e5f0 CPU_ADJKERNTZ added to cpu_sysctl 1994-09-16 01:00:38 +00:00
Andrey A. Chernov
7a808ab73b KERN_ADJKERNTZ removed from here to cpu_sysctl MACHDEP section 1994-09-16 00:53:58 +00:00
Andrey A. Chernov
2eaac317bd KERN_ADJKERNTZ moved to MACHDEP section 1994-09-16 00:50:02 +00:00
Stefan Eßer
4a078e7d90 Submitted by: Wolfgang Stanglmeier <wolf@dentaro.GUN.de> + <se>
Improved bus probing, symbolic names for registers..
Chip set parameters get dumped for intel PCI chip sets
(82424+82434 only, for now).
1994-09-16 00:33:29 +00:00
Stefan Eßer
45271d26ef Submitted by: Wolfgang Stanglmeier <wolf@dentaro.GUN.de>
New version with support for the NCR 53c810 and 53c825.
Support for WIDE SCSI devices.
1994-09-16 00:22:32 +00:00
Bruce Evans
d8f10c1117 Add some prototypes. 1994-09-15 20:24:29 +00:00
Bruce Evans
0ad076d56a Supply prototypes for some functions that were implicitly declared and
fix the resulting warnings.
1994-09-15 19:47:47 +00:00
Bruce Evans
1dbaf90cdb Obtained from:
Remove the unnecessary inclusion of disklabel.h in cd9660_vfsops.c so
that I don't have to worry about the latter when changing disklabel.h.

Supply prototypes for some functions that were implicitly declared and
fix the resulting warnings and errors (timevals were punned to timespecs).
1994-09-15 19:46:03 +00:00
Paul Richards
e69c40d865 Include pio.h so that all those drivers that only include cpufunc.h
get the faster io macros/inline code rather than call the routines
in support.s

This whole area needs some going over.....
1994-09-15 17:55:47 +00:00
Doug Rabson
3b8a29aebc Added back the SYSV ipc files which somehow got removed. 1994-09-15 16:47:50 +00:00
Paul Richards
ff89e6613e Removed some macros that are now in cpufunc.h
Reviewed by:	Bruce
1994-09-15 16:32:07 +00:00
Paul Richards
8db02de884 Added MCOUNT_ENTER and MCOUNT_EXIT macros to profile.h
Removed inb function since it's more correctly in pio.h

Copied write_eflags and read_eflags over from npx.c

(Some changes to the macros suggested by Bruce were not made at this
time since his suggestions probably apply to all the macros and
these inlined/macro definitions need a lot of cleaning up at some
point in the future.)

Reviewed by:	Bruce
1994-09-15 16:27:14 +00:00
Paul Richards
03b6d659e5 Added -DKERNEL and added support for kernel profiling.
Reviewed by:	Bruce
1994-09-15 15:41:48 +00:00
David Greenman
ab443e53b6 Brought over from 1.1.5:
From Bruce Evans:
Protect against reentering Debugger().
1994-09-15 11:38:59 +00:00
David Greenman
59ffd2e209 Change brought over from 1.1.5:
date: 1994/06/05 19:31:45;  author: ats;  state: Exp;  lines: +19 -9
  Changed some wrong comments from my last commit and document some more
  opcodes.
1994-09-15 10:58:35 +00:00
David Greenman
3443a7b245 Brought over from 1.1.5:
Fix from Bruce Evans. There were missing sets of parantheses:

1. The checks for the standard data selectors were botched, so %ss == 0
   and probably %cs == 0 were allowed.  A fix is enclosed.  The checks
   for the standard selectors could be omitted without losing anything
   since the standard selectors pass the valid_ldt_sel() tests.
1994-09-15 10:52:46 +00:00
David Greenman
610ee2f9b5 Made TCPDEBUG truely optional. Based on changes I made in FreeBSD 1.1.5.
Fixed somebody's idea of a joke - about the first half of the lines in
in_proto.c were spaced over by one space.
1994-09-15 10:36:56 +00:00
Søren Schmidt
4f683116b4 Added support for many more videomodes, including graphic modes up til
320x200 256col VGA. This is nessesary for the iBCS stuff to work right.
(And we get the benefit of more video modes). Uses the videocard BIOS
to optain mode tables.
Added a "green" saver, switches off the syncs for "green" monitors.

Reviewed by:
Submitted by:
Obtained from:
1994-09-15 07:26:40 +00:00
Poul-Henning Kamp
ee30a1ebc3 Fixed a warning from the compiler, which just crashed my laptop. When do
I start to listen to wise ol' compilers sound advice... sigh.

Also made lp0 a Point-to-point interface.
1994-09-15 02:37:11 +00:00
Garrett Wollman
82a2eb57c0 Beginnings of support for loadable protocol domains. In particular,
don't hard-code netisr values in icu.s, but rather, use an array of
function pointers and set them all up in machdep.c for statically-linked
protocol families.  (This will eventually be done differently.)
1994-09-14 23:56:08 +00:00
Andrey A. Chernov
b93df24683 KERN_ADJKERNTZ added in preparation of resettodr() implementation 1994-09-14 23:21:00 +00:00
Andrey A. Chernov
82a4cf2359 1. adjkerntz variable added for preparation to resettodr() implementation
2. Leap year calculations fixed
1994-09-14 23:09:06 +00:00
Andrey A. Chernov
af3a0ca593 KERN_ADJKERNTZ added in preparation for resettodr() implementation 1994-09-14 22:49:29 +00:00
Garrett Wollman
639a2e5035 A make system file for building LKMs, derived from bsd.prog.mk. 1994-09-14 21:59:28 +00:00
Garrett Wollman
dea246f55a Add code to make multicast routing be an LKM. 1994-09-14 21:21:29 +00:00
Andrey A. Chernov
2471ac957c Increase transfer speed by waiting much less than 10ms after request
Submitted by: stark@sbstark.cs.sunysb.edu & slightly modifyed by me
1994-09-14 20:28:25 +00:00
David Greenman
d74643df99 Added missing #ifdef SYSVSHM. 1994-09-14 05:52:13 +00:00
Garrett Wollman
5e9ae478ac Shuffle some functions and variables around to make it possible for
multicast routing to be implemented as an LKM.  (There's still a bit of
work to do in this area.)
1994-09-14 03:10:15 +00:00