2403 Commits

Author SHA1 Message Date
ache
5fb7e070ff Implement tray closing and tray locking
Fix first open fails bug
1995-02-22 01:11:36 +00:00
bde
69d7415f4f Obtained from: memories of 1.1.5
Fix the sign of the timezone offset again.
1995-02-21 18:41:30 +00:00
jkh
3de20526b6 Remove FAT_CURSOR - it's deprecated.
Submitted by:	"Philippe Charnier" <charnier@lirmm.fr>
1995-02-21 13:42:57 +00:00
dg
872b32d0f2 Panic if u_map allocation fails. 1995-02-21 12:06:06 +00:00
bde
01efbfed9f Discard junk from partition tables when reading the tables for applications
the same as when initializing the in-core copies.  Adjust checksums in
labels after adjusting labels.  This finishes fudging the on-disk label to
make it coherent with the in-core label.

Handle EIO during initialization better.

Initialize the compatibility slice to the whole disk If there are no real
slices.

Don't warn about adjusting offsets in the label to make the 'c' partition
start at 0.  The 'c' offset is now always absolute on-disk and 0 in-core
so an adjustment is usually required.

Don't confuse LABEL_PART with RAW_PART so much.

Check for partitions being within slices differently.
1995-02-21 08:38:24 +00:00
bde
e63a89f186 Don't generate any errors here other than EIO. An invalid partition
table is not an error, it just causes a smaller slice table.
1995-02-21 08:37:09 +00:00
phk
361ca08e0d Speed md5 up around 30% by shorting out a couple of cumbersome
memcpy equivalent functions.
1995-02-21 06:01:49 +00:00
jkh
5bf42927dd Totally get rid of the snic driver.
Submitted by:	davidg
1995-02-21 04:26:35 +00:00
dg
0f29c0cebb vm_extern.h: removed vm_allocate_with_pager.
Removed vm_user.c...it's now completely deprecated.
1995-02-21 01:32:47 +00:00
dg
11aa58664f Removed vm_user.c. 1995-02-21 01:31:14 +00:00
dg
23db83ee1f Deprecated remaining use of vm_deallocate. Deprecated vm_allocate_with_
pager(). Almost completely rewrote vm_mmap(); when John gets done with
the bottom half, it will be a complete rewrite. Deprecated most use of
vm_object_setpager(). Removed side effect of setting object persist
in vm_object_enter and moved this into the pager(s). A few other
cosmetic changes.
1995-02-21 01:22:48 +00:00
dg
e48c881828 Set page alloced for map entries as valid. 1995-02-21 01:13:05 +00:00
dg
f314cd0cf8 Added missing extern declaration for 'maxprocperuid'. 1995-02-21 00:37:31 +00:00
dg
5dae5b00cc Removed vm_allocate(), vm_deallocate(), and vm_protect() functions. The
only function remaining in this file is vm_allocate_with_pager(), and this
will be going RSN. The file will be removed when this happens.
1995-02-20 23:58:10 +00:00
dg
1a5c916b36 Use of vm_allocate and vm_deallocate has been deprecated. 1995-02-20 23:52:39 +00:00
dg
528492b434 Moved ACT_MAX, ACT_ADVANCE, and ACT_DECLINE to vm_page.h. 1995-02-20 23:35:45 +00:00
dg
80d6bd6227 Use of vm_allocate() and vm_deallocate() has been deprecated. 1995-02-20 22:23:31 +00:00
bde
d59996f398 Fix restoring cpl in the swi_ast_phantom case. The system sometimes
returned to user mode without enabling ASTs.  The problem fixed itself
at the next syscall or non-FPU trap, if any.  It hung the system for
a test process that masked SIGFPE's and divided by zero.  The faulting
division was returned to endlessly and this gave plently of opportunities
for the swi_ast_phantom case to be reached; after it was reached the
system hung because the ASTs for preemption and SIGINT handling were
disabled.
1995-02-20 20:35:24 +00:00
guido
a5eaebecd0 Implement maxprocperuid and maxfilesperproc. They are tunable
via sysctl(8). The initial value of maxprocperuid is maxproc-1,
that of maxfilesperproc is maxfiles (untill maxfile will disappear)

Now it is at least possible to prohibit one user opening maxfiles

-Guido

Submitted by:
Obtained from:
1995-02-20 19:42:42 +00:00
dg
aa4f5398ad vm_inherit function has been deprecated. 1995-02-20 18:08:18 +00:00
dg
ad1de95806 Stop using vm_allocate and vm_deallocate. 1995-02-20 17:36:36 +00:00
dg
7017e898bd VM for the kernel stack and page tables doesn't need to be explicitly
deallocated as it isn't inherited across the fork.
Use vm_map_find not vm_allocate.

Submitted by:	John Dyson
1995-02-20 17:26:21 +00:00
dg
127fed2efa Make sure process isn't swapped when messing with it.
Added missing newline to log() call.
1995-02-20 15:53:33 +00:00
dg
2e01b70346 Added missing newlines to calls to log(). 1995-02-20 15:48:46 +00:00
dg
2095f1db10 Panic if object is deallocated too many times.
Slight change to reverse collapsing so that vm_object_deallocate doesn't
have to be called recursively.
Removed half of a previous fix - the renamed page during a collapse doesn't
need to be marked dirty because the pager backing store pointers are copied
- thus preserving the page's data. This assumes that pages without backing
store are always dirty (except perhaps for when they are first zeroed, but
this doesn't matter).
Switch order of two lines of code so that the correct pager is removed
from the hash list. The previous code bogusly passed a NULL pointer to
vm_object_remove(). The call to vm_object_remove() should be unnecessary
if named anonymous objects were being dealt with correctly. They are
currently marked as OBJ_INTERNAL, which really screws up things (such as
this).
1995-02-20 14:21:58 +00:00
dg
9d3b976e15 Don't allow act_count to exceed ACT_MAX when bumping it up.
Small optimization to vm_page_bits().

Submitted by:	John Dyson
1995-02-20 14:00:50 +00:00
dg
da5e5825f3 Fully initialize pages returned via vm_page_alloc_contig() so that the
memory can be later freed.
1995-02-20 13:58:14 +00:00
bde
fd0281dbd4 Don't flush the message buffer when it fills up. 1995-02-19 15:02:26 +00:00
jkh
46a9bdb15f Remove the SCSI idsn line - it's permanantly dead. 1995-02-19 14:07:28 +00:00
jkh
969c09e60c remove gnu/scsi/nic5000.c - it's deprecated. 1995-02-19 14:06:29 +00:00
gpalmer
982d50d0ee Bruces fixes for large filesystems
Submitted by:	Bruce Evans <bde@zeta.org.au>
1995-02-19 10:36:17 +00:00
dg
feb6238962 Truncate the pte address to a page boundry. This probably won't fix the
panic, but at least it's more correct.
1995-02-19 02:50:31 +00:00
bde
ed02ff46e4 Keep absolute offsets in on-disk labels for backwards compatibility. This
requires complications to adjust the offsets to relative when a block
containing the label is read and back to absolute when such a block is
written.  The adjustment is not made on the whole disk slice.

Don't allow setting the offset of partition C to nonzero in in-core labels.
This will cause some (nonstandard) disktab entries to fail.  They will
need to be changed to have relative offsets (and no partitions outside
of the slice).

Don't write protect the (nonexistent) label on the whole disk slice.

Writing labels and bootstraps should work right now (except if there is
no DOSpartition table).
1995-02-18 22:10:44 +00:00
bde
e9644cbcc3 New field b_biodone_chain to support nested b_iodone's. 1995-02-18 21:12:33 +00:00
wpaul
09b7a3d45c Do away with 'options SWAP_GENERIC' once and for all: I get ill
just thinking about it.

Two changes need to be made to allow 'config kernel swap generic' to
work properly without requiring any compile-time flags:

/usr/src/usr.sbin/config/mkswapconf.c: we need to define a dummy stub
for the setconf() function to replace the one in swapgeneric.c that
isn't available in non-generic configurations.

/usr/src/sys/i386/i386/autoconf.c: the -a boot flag causes setroot()
to be skipped and lets setconf() prompt the user for a root device.
If you skip setroot() in a non-generic kernel, you could get severely
hosed. To avoid this, we silently ignore the -a flag if rootdev != NODEV.
(rootdev is always initialized to NODEV in swapgeneric.c, so if
we find that rootdev is something other than NODEV, we know we're
not using a generic configuration.)
1995-02-18 18:05:35 +00:00
dg
e3f3d495a1 1) Added protection against collapsing OBJ_DEAD objects.
2) bump reference counts by 2 instead of 1 so that an object deallocate
   doesn't try to recursively collapse the object.
3) mark pages renamed during the collapse as dirty so that their contents
   are preserved.

Submitted by:	John and me.
1995-02-18 06:48:33 +00:00
dg
ae440731a6 Only clear B_VMIO in brelse() - a bunch of special processing is required
whenever this happens, and that wasn't occurring in some cases.
1995-02-18 02:55:09 +00:00
bde
8ea5243ca1 Undo the busy latch changes made in the previous revision. They broke
some 386/387 systems.

Don't print the IRQ number twice in the boot diagnostics.
1995-02-17 19:38:13 +00:00
se
0f764f43a1 Improve diagnostics:
Test for correct execution of cache test script by NCR,
and give meaningful error description if it fails.
(A cache problem was reported before.)
Don't wait forever for cache test to complete (to protect
against faulty hardware).

Submitted by:	wolf
1995-02-17 16:45:08 +00:00
jkh
8329459c37 Remove the ISDN dialer from LINT until it's working. 1995-02-17 09:33:29 +00:00
bde
ab963e28de Restore alphabetical order (except gnu is last). 1995-02-17 08:45:59 +00:00
phk
07489c563c This is the latest version of the APM stuff from HOSOKAWA, I have looked
briefly over it, and see some serious architectural issues in this stuff.

On the other hand, I doubt that we will have any solution to these issues
before 2.1, so we might as well leave this in.

Most of the stuff is bracketed by #ifdef's so it shouldn't matter too much
in the normal case.

Reviewed by:	phk
Submitted by:	HOSOKAWA, Tatsumi <hosokawa@mt.cs.keio.ac.jp>
1995-02-17 02:22:57 +00:00
wollman
cb466c876c Include missing <sys/kernel.h> for `hz'.
Submitted by:  David Greenman, Rod Grimes, Christoph Kukulies
1995-02-17 00:29:42 +00:00
bde
4e75b5962c Add compatibility cruft.
Slice 0 is now for the first BSD slice.  The first BSD slice is
the first DOSpartition with id 0xa5 or the whole disk if their
are no DOSpartitions (except the latter is not yet implemented).
Existing partitions on it work the same as in 2.0 except the
'd' partition is no longer special and partitions are relative
to the skice.

Slice 1 is now for the whole disk and gets a read-only label
describing the disk.  Previously, slice 0 was for the whole disk
and there was no label on it.

Slices 2-31 are for DOSpartitions.  Slice 0 is an alias for one
of these if there is a BSD slice.  Previously, slices 1-31 were
for DOSpartitions.

diskslice_machdep.c:
Expand whole disk slice to include all DOSpartitions.  More work
is required for >1024 cylinders and to rewrite the label iff the
driver is unsure about the geometry.

subr_diskslice.c:
New function dsisopen() to help handle media changes.
1995-02-16 15:19:19 +00:00
bde
83aff90f5e Adjust for rearranged slice numbers. 1995-02-16 15:06:09 +00:00
bde
8abfaf1d18 Adjust slice names in diskerr() for the rearranged slice numbers. The
mapping from numbers to names is messy for backwards compatibility.
E.g., for driver "sd", unit "0":

slice 0: omit the slice number for compatibility; names are sd0[a-h].
slice 1: omit the partition letter 'c' because the whole disk device
         shouldn't have anything to do with partitions; sd0 is the
         only name.
slices 2-31: subtract 1 from slice number to compensate for the
         compatibility slice 0; names are sd0s[1-30][a-h].
1995-02-16 14:47:38 +00:00
bde
fa2d46eb47 Rearrange slice numbers for compatibility. 1995-02-16 13:35:21 +00:00
bde
d8d8cd6867 Fix syntax errors in #ifdefed out code. 1995-02-16 13:21:47 +00:00
bde
2db3914936 Temporarily stop this compiling if the option TEST_LABELLING is defined
so that new slice support code can be installed without risk of
corrupting vn devices (if any).
1995-02-16 13:09:39 +00:00
jkh
05516a1f1d Update this a little, though we probably need to either nuke or rename it! 1995-02-16 12:02:08 +00:00