Commit Graph

678 Commits

Author SHA1 Message Date
Julian Elischer
e7a301c64f Submitted by: jb@cimlogic.com.au (John Birrell)
Obtained from:  NetBSD as well (He submitted it there too)

make sure that teh shm region is beyond the sum of the text and data segs
as it was big progs could collide with the shm region.
1995-11-30 07:58:50 +00:00
Julian Elischer
de1676f933 A pair of really tiny patches that not only allow it all to compile
but also IT ACTUALLY WORKS!
FreeBSD with options  JREMOD now runs with no entries in the devsw tables
prior to the devices puting their own entries there..

Thanks to bde and terry for thoughts and comments.
next stop 'Real' devfs support in devices.
1995-11-30 05:59:09 +00:00
Garrett Wollman
8e050b2e86 Disallow LKM manipulations when in seure mode.
Noticed by: bde
1995-11-29 17:45:59 +00:00
Julian Elischer
7198bf4725 If you're going to mechanically replicate something in 50 files
it's best to not have a (compiles cleanly) typo in it! (sigh)
1995-11-29 14:41:20 +00:00
Julian Elischer
adb2dc299a #ifdef out nearly the entire file of conf.c when JREMOD is defined
add a few safety checks in specfs because
now it's possible to get entries in [cd]devsw[] which are ALL NULL
so it's better to discover this BEFORE jumping into the d_open() entry..

more check to come later.. this getsthe code to the stage where I
can start testing it, even if I haven't caught every little error case...
I guess I'll find them quick enough..
1995-11-29 12:38:49 +00:00
Poul-Henning Kamp
2d0b1d708c A test was backwards.
Noticed by:	Cheng, Hsiao-Yang <sycheng@cis.ufl.edu>
1995-11-29 11:28:00 +00:00
Julian Elischer
53ac6efbd8 OK, that's it..
That's EVERY SINGLE driver that has an entry in conf.c..
my next trick will be to define cdevsw[] and bdevsw[]
as empty arrays and remove all those DAMNED defines as well..

Each of these drivers has a SYSINIT linker set entry
that comes in very early.. and asks teh driver to add it's own
entry to the two devsw[] tables.

some slight reworking of the commits from yesterday (added the SYSINIT
stuff and some usually wrong but token DEVFS entries to all these
devices.

BTW does anyone know where the 'ata' entries in conf.c actually reside?
seems we don't actually have a 'ataopen() etc...

If you want to add a new device in conf.c
please  make sure I know
so I can keep it up to date too..

as before, this is all dependent on #if defined(JREMOD)
(and #ifdef DEVFS in parts)
1995-11-29 10:49:16 +00:00
Bruce Evans
43cbfcb357 Removed all #includes of the unused file <sys/device.h>. 1995-11-28 07:29:59 +00:00
Peter Wemm
6884d2aae7 Implement read/write to kernel space - I use this for a self-loading/
self-decompressing ram disk that I'm fiddling with..

(Note, this depends on the various syscalls having correctly set uio_segflag
 before calling physio - I've checked and they look correct.)
1995-11-28 02:40:38 +00:00
John Dyson
dc4a0cee58 Update the wd.c driver to use the new TAILQ scheme for device
buffer queue.  Also, create a new subroutine 'tqdisksort' that
is an improved version of the original disksort that also uses
TAILQs.
1995-11-23 07:24:41 +00:00
Poul-Henning Kamp
4b2af45f4b Mega commit for sysctl.
Convert the remaining sysctl stuff to the new way of doing things.
the devconf stuff is the reason for the large number of files.
Cleaned up some compiler warnings while I were there.
1995-11-20 12:42:39 +00:00
Poul-Henning Kamp
48cee07655 Put cbstat() under #ifdef DDB 1995-11-20 12:15:45 +00:00
Poul-Henning Kamp
78535df223 Remove unused var. 1995-11-20 12:14:40 +00:00
Poul-Henning Kamp
a5d3a44198 Close the "unused" warning for things in linker-sets.
This will also allow us to catch typos in the setname by running a
nm through a grep.
1995-11-20 12:08:08 +00:00
John Dyson
fec16d9994 Yet another small block FS bug fix. 1995-11-20 04:53:45 +00:00
John Dyson
10c8eaff67 Fix more clustering bugs for FSes with block sizes < PAGE_SIZE. 1995-11-20 03:55:48 +00:00
John Dyson
fb9ca17e1e Changed an incorrect splhigh to splbio. 1995-11-19 20:42:25 +00:00
John Dyson
5fe17eeb8a General fixes to the vfs clustring code:
1) Make cluster buffer list be a non-malloced chain.  This eliminates
yet another 'evil' M_WAITOK and generally cleans up the code.
2) Fix write clustering for ext2fs.  It was just broken.  Also, ffs
clustering had an efficiency problem that more bawrites were happening
than should have been.
3) Make changes to buf.h to support the above, plus remove b_pfcent
at the request of David Greenman.
Reviewed by: davidg (partially)
1995-11-19 19:54:31 +00:00
Bruce Evans
0808c591da Fixed settimeofday():
- don't allow invalid timevals.
- normalize timevals as they are built - don't call timevaladd() with
  a possibly invalid timeval and normalize the result.

Fixed a warning.
1995-11-19 00:59:22 +00:00
John Dyson
0ada0d6748 Added a missing splx(s). 1995-11-18 23:33:48 +00:00
Bruce Evans
75a85811c1 Fixed the errno returned by rename("dir1", "dir2/."). It was EISDIR
(duh); translate it to EINVAL which is the errno for other renames
to ".".
1995-11-18 11:35:05 +00:00
Bruce Evans
3b9a76f03c Improved formatting.
Added a comment about possibly better handling of INPCK.

Added a prototype.
1995-11-18 11:07:00 +00:00
Bruce Evans
7bcb7905fd Cleaned up SA_NODEFER changes.
Added prototypes.
1995-11-18 10:01:38 +00:00
Poul-Henning Kamp
5204129576 All net.* sysctl converted now. 1995-11-16 19:00:27 +00:00
Bruce Evans
986f4ce75e Fixed support for DIAGNOSTIC option. SYSCTL_INT() depends on kernel.h. 1995-11-16 09:45:23 +00:00
Poul-Henning Kamp
43f242265a Do what is generally belived to be the right thing, though it may not be :-) 1995-11-14 20:43:29 +00:00
Poul-Henning Kamp
d457bade76 Final part of this bunch of sysctl commits: cleanup. 1995-11-14 09:42:22 +00:00
Poul-Henning Kamp
af8364b0ad Get rid of the last debug sysctl variables of the old style. 1995-11-14 09:40:06 +00:00
Poul-Henning Kamp
9565c0e60d Get rid of hostnamelen variable. 1995-11-14 09:37:22 +00:00
Poul-Henning Kamp
a9ad941c7a Move all the VM sysctl stuff home where it belongs. 1995-11-14 09:29:34 +00:00
Poul-Henning Kamp
16cd04a3b8 A couple of nitpicks. 1995-11-14 09:26:17 +00:00
Poul-Henning Kamp
f7152c81a0 Convert dumpdev & securelevel. 1995-11-14 09:22:15 +00:00
Poul-Henning Kamp
395e673587 Change some of the debug sysctl vars. The semantics of these will change. 1995-11-14 09:19:16 +00:00
Poul-Henning Kamp
549a075acc KERN_MAXFILESPERPROC, KERN_MAXFILES went to another file. 1995-11-14 09:17:32 +00:00
Poul-Henning Kamp
972f9b209d Hmm, I seem to have got all my patches screwed up anyway. Too bad.
this is where the proctable stuff went.
1995-11-14 09:16:27 +00:00
Poul-Henning Kamp
27aef04699 Get rid of domainnamelen. 1995-11-14 09:10:54 +00:00
Poul-Henning Kamp
a52752a457 Move KERN_NTP to a more suitable file. 1995-11-14 09:07:14 +00:00
Poul-Henning Kamp
45a4ad1146 Move the process-table stuff to a more suitable file.
Remove filetable stuff from kern_sysctl.c
1995-11-14 09:05:40 +00:00
Poul-Henning Kamp
18e6fe0250 Add new-style sysctl for KERN_FILE here. 1995-11-14 08:58:35 +00:00
Poul-Henning Kamp
deae269ab1 Try to make my new scheme work more along the lines of the manual.
There are still some gray areas here and there.
1995-11-13 13:54:09 +00:00
David Greenman
c2f9f36bae Use kmem_alloc_pageable/kmem_free to allocate memory instead of individual
VM map functions.
1995-11-13 10:45:22 +00:00
Bruce Evans
c8cbd8682f Fixed a cast in olseek().
Fixed confusing order of declarations of getvnode()'s args.
1995-11-13 08:22:21 +00:00
Poul-Henning Kamp
ae0eb976c5 The entire sysctl callback to read/write version. I havn't tested this as
much as I'd like to, but the malloc stunt I tried for an interim for
sure does worse.
Now we can read and write from any kind of address-space, not only
user and kernel, using callbacks.
This may be over-generalization for now, but it's actually simpler.
1995-11-12 19:52:09 +00:00
Bruce Evans
f35a53bf11 Restored the (buggy) historical behaviour of getdomainname().
Negative name lengths for getdomainname() and setdomainname() were
converted to large positive ones by misdeclaring the args struct.
1995-11-12 07:04:30 +00:00
Bruce Evans
d2d3e8751c Included <sys/sysproto.h> to get central declarations for syscall args
structs and prototypes for syscalls.

Ifdefed duplicated decentralized declarations of args structs.  It's
convenient to have this visible but they are hard to maintain.  Some
are already different from the central declarations.  4.4lite2 puts
them in comments in the function headers but I wanted to avoid the
large changes for that.
1995-11-12 06:43:28 +00:00
Bruce Evans
c484c256a5 Updated machine-generated files. 1995-11-12 04:29:37 +00:00
Bruce Evans
93915a2ac4 Fixed the args list for mount(). We're not ready for the BSD4.4lite2/
NetBSD interface.

Increased the bogusness of the args list for mmap().  The args lists for
most of the memory mapping functions are bogus.  The args lists in
syscalls.master are a little better than the ones in the args structs
currently being used, but the improvement for mmap() changed the object
code and I don't want to worry about that now.

Increased the bogusness of the args list for fcntl.  BSD4.4lite2/NetBSD
uses `void *' instead of int for the third arg.  This has the advantage
of working when `void *'s are longer than ints, but requires extra bogus
casts that I hope to avoid.

Fixed the args list for uname.  `struct outsname' seems to be a typo,
not an old interface.

Added comments about bogus args lists for open, mount, msync, munmap,
mprotect, madvise, mincore, fcntl, semsys, msgsys and shmsys.
1995-11-12 04:24:53 +00:00
Bruce Evans
7147b19de5 Fixed the type of readv(). An args struct member name conflicted with the
machine-generated one in <sys/sysproto.h>.
1995-11-11 06:57:34 +00:00
Bruce Evans
82970b81a9 Fixed type of setsid(). It used used the bogus `getsid_args'. 1995-11-11 06:53:08 +00:00
Bruce Evans
b2f9e8b1ee Removed unreachable code.
Changed `#if defined()' back to `#ifdef' to finish removing COMPAT_IBCS2.
1995-11-11 05:49:22 +00:00