672 Commits

Author SHA1 Message Date
dyson
711711e9f3 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
phk
d0c66446cc 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
phk
073917f90b Put cbstat() under #ifdef DDB 1995-11-20 12:15:45 +00:00
phk
1bec817e70 Remove unused var. 1995-11-20 12:14:40 +00:00
phk
d8a08a76c9 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
dyson
86054ca4f4 Yet another small block FS bug fix. 1995-11-20 04:53:45 +00:00
dyson
ec06551d10 Fix more clustering bugs for FSes with block sizes < PAGE_SIZE. 1995-11-20 03:55:48 +00:00
dyson
19d6126f96 Changed an incorrect splhigh to splbio. 1995-11-19 20:42:25 +00:00
dyson
a2735c1b93 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
bde
89f4ad04ae 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
dyson
abc5479800 Added a missing splx(s). 1995-11-18 23:33:48 +00:00
bde
fc2b88c806 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
bde
c8a9e0e378 Improved formatting.
Added a comment about possibly better handling of INPCK.

Added a prototype.
1995-11-18 11:07:00 +00:00
bde
a22b1aac63 Cleaned up SA_NODEFER changes.
Added prototypes.
1995-11-18 10:01:38 +00:00
phk
7631637fd4 All net.* sysctl converted now. 1995-11-16 19:00:27 +00:00
bde
a7a396155f Fixed support for DIAGNOSTIC option. SYSCTL_INT() depends on kernel.h. 1995-11-16 09:45:23 +00:00
phk
39e0ab2a22 Do what is generally belived to be the right thing, though it may not be :-) 1995-11-14 20:43:29 +00:00
phk
8d3e9824b0 Final part of this bunch of sysctl commits: cleanup. 1995-11-14 09:42:22 +00:00
phk
df7c5ad2a5 Get rid of the last debug sysctl variables of the old style. 1995-11-14 09:40:06 +00:00
phk
ec15d167b9 Get rid of hostnamelen variable. 1995-11-14 09:37:22 +00:00
phk
0cd6c033b7 Move all the VM sysctl stuff home where it belongs. 1995-11-14 09:29:34 +00:00
phk
c04786d47c A couple of nitpicks. 1995-11-14 09:26:17 +00:00
phk
fb71a2c5dd Convert dumpdev & securelevel. 1995-11-14 09:22:15 +00:00
phk
dd42080c0c Change some of the debug sysctl vars. The semantics of these will change. 1995-11-14 09:19:16 +00:00
phk
f8d7b213d8 KERN_MAXFILESPERPROC, KERN_MAXFILES went to another file. 1995-11-14 09:17:32 +00:00
phk
021045a4b6 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
phk
c23e20dc57 Get rid of domainnamelen. 1995-11-14 09:10:54 +00:00
phk
08ab771c4d Move KERN_NTP to a more suitable file. 1995-11-14 09:07:14 +00:00
phk
32605f2bff 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
phk
926091b331 Add new-style sysctl for KERN_FILE here. 1995-11-14 08:58:35 +00:00
phk
d5b9afd781 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
dg
20567ae86a Use kmem_alloc_pageable/kmem_free to allocate memory instead of individual
VM map functions.
1995-11-13 10:45:22 +00:00
bde
bc3a8c9dbf Fixed a cast in olseek().
Fixed confusing order of declarations of getvnode()'s args.
1995-11-13 08:22:21 +00:00
phk
5f9f53ab5b 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
bde
b0670e8e6a 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
bde
aa9a60640e 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
bde
d301e2ac1a Updated machine-generated files. 1995-11-12 04:29:37 +00:00
bde
d2a4678160 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
bde
86ec25fe42 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
bde
6bc322c601 Fixed type of setsid(). It used used the bogus `getsid_args'. 1995-11-11 06:53:08 +00:00
bde
ee54834eff Removed unreachable code.
Changed `#if defined()' back to `#ifdef' to finish removing COMPAT_IBCS2.
1995-11-11 05:49:22 +00:00
bde
b4e9b8c6d2 Fixed types of rtprio(), osetrlimit() and setrlimit(). The args struct
tag and/or member names conflicted with the machine generated ones in
<sys/sysproto.h>.
1995-11-11 01:48:17 +00:00
bde
ff296fcaed Fixed types of ogethostid() and osethostid(). The args struct names
conflicted with the machine generated ones in <sys/sysproto.h>.

Fixed type of oquota().  It didn't even use an args struct.
1995-11-11 01:04:42 +00:00
bde
a1927f222e Fixed type of vfs_free_netcred().
Removed redundant declaration of insmntque().
1995-11-11 00:27:00 +00:00
bde
aa46d44f8b Fixed type of sysctl_order_cmp().
KNFized sysctl_order_cmp().
Staticized definition of kern_sysctl() to match its declaration.
1995-11-11 00:09:21 +00:00
phk
b9906694f7 Fix a minor buglet. 1995-11-10 16:22:41 +00:00
phk
ae24e22b4b convert more sysctl variables. 1995-11-10 09:58:53 +00:00
phk
1eeb24475e Make the old compat functions use the sysctl front door, rather than
crashing through the walls.
This should save Peters blood pressure and netscapes uname call.
1995-11-09 20:22:12 +00:00
bde
d892c3c42b Introduced lkm_nullcmd(), which will be used instead of nosys() in
some places to fix type mismatches.

Added prototypes and bogus casts.
1995-11-09 09:43:32 +00:00
bde
449a11eb88 Introduced a type `vop_t' for vnode operation functions and used
it 1138 times (:-() in casts and a few more times in declarations.
This change is null for the i386.

The type has to be `typedef int vop_t(void *)' and not `typedef
int vop_t()' because `gcc -Wstrict-prototypes' warns about the
latter.  Since vnode op functions are called with args of different
(struct pointer) types, neither of these function types is any use
for type checking of the arg, so it would be preferable not to use
the complete function type, especially since using the complete
type requires adding 1138 casts to avoid compiler warnings and
another 40+ casts to reverse the function pointer conversions before
calling the functions.
1995-11-09 08:17:23 +00:00