Commit Graph

13041 Commits

Author SHA1 Message Date
peter
8465726bda Mega-commit for Linux emulator update.. This has been stress tested under
netscape-2.0 for Linux running all the Java stuff.  The scrollbars are now
working, at least on my machine. (whew! :-)

I'm uncomfortable with the size of this commit, but it's too
inter-dependant to easily seperate out.

The main changes:

COMPAT_LINUX is *GONE*.  Most of the code has been moved out of the i386
machine dependent section into the linux emulator itself.  The int 0x80
syscall code was almost identical to the lcall 7,0 code and a minor tweak
allows them to both be used with the same C code.  All kernels can now
just modload the lkm and it'll DTRT without having to rebuild the kernel
first.  Like IBCS2, you can statically compile it in with "options LINUX".

A pile of new syscalls implemented, including getdents(), llseek(),
readv(), writev(), msync(), personality().  The Linux-ELF libraries want
to use some of these.

linux_select() now obeys Linux semantics, ie: returns the time remaining
of the timeout value rather than leaving it the original value.

Quite a few bugs removed, including incorrect arguments being used in
syscalls..  eg:  mixups between passing the sigset as an int, vs passing
it as a pointer and doing a copyin(), missing return values, unhandled
cases, SIOC* ioctls, etc.

The build for the code has changed.  i386/conf/files now knows how
to build linux_genassym and generate linux_assym.h on the fly.

Supporting changes elsewhere in the kernel:

The user-mode signal trampoline has moved from the U area to immediately
below the top of the stack (below PS_STRINGS).  This allows the different
binary emulations to have their own signal trampoline code (which gets rid
of the hardwired syscall 103 (sigreturn on BSD, syslog on Linux)) and so
that the emulator can provide the exact "struct sigcontext *" argument to
the program's signal handlers.

The sigstack's "ss_flags" now uses SS_DISABLE and SS_ONSTACK flags, which
have the same values as the re-used SA_DISABLE and SA_ONSTACK which are
intended for sigaction only.  This enables the support of a SA_RESETHAND
flag to sigaction to implement the gross SYSV and Linux SA_ONESHOT signal
semantics where the signal handler is reset when it's triggered.

makesyscalls.sh no longer appends the struct sysentvec on the end of the
generated init_sysent.c code.  It's a lot saner to have it in a seperate
file rather than trying to update the structure inside the awk script. :-)

At exec time, the dozen bytes or so of signal trampoline code are copied
to the top of the user's stack, rather than obtaining the trampoline code
the old way by getting a clone of the parent's user area.  This allows
Linux and native binaries to freely exec each other without getting
trampolines mixed up.
1996-03-02 19:38:20 +00:00
peter
8283a18c8b A new syscalls table for the Linux emulator. This is processed by
makesyscalls.sh to generate the rest of the tables.
1996-03-02 19:04:16 +00:00
peter
c782dac168 This file is "obsolete" and no longer used or referenced. 1996-03-02 18:55:41 +00:00
peter
13a0014ac8 Add more options into the conf/options and i386/conf/options.i386 files
and the #include hooks so that 'make depend' is more useful.  This
covers most of the options I regularly use (but not all) and some other
easy ones.
1996-03-02 18:24:13 +00:00
peter
234155271a Remove redundant comment about the 'int len' variables that should be
changed to size_t's.
1996-03-02 17:42:34 +00:00
peter
b8de61845f Document the int -> size_t change to the m* syscalls 1996-03-02 17:34:28 +00:00
peter
7a5076f346 Oops.. I nearly forgot the actual core of the length/rounding/etc fixes
that Bruce asked for.

These still are not quite perfect, and in particular, it can get
upset on extreme boundary cases (addr = 0xfff, len = 0xffffffff,
which would end up mapping a single page rather than failing), but
this is better code that I committed before.

(note, the VM system does not (apparently) support single mmap segment
sizes above 0x80000000 anyway)
1996-03-02 17:14:09 +00:00
peter
880e9d4f5c reran makesyscalls.sh after "int len" -> "size_t len" changes. 1996-03-02 17:01:36 +00:00
peter
56c5438768 Change madvise prototype from 'int len' to 'size_t len'. All the other
m* syscalls were prototyped as size_t already.  Add missing mincore() and
minherit() prototypes, as suggested by bde.
1996-03-02 16:55:26 +00:00
peter
e85d8354c6 Change the 'int len' args in the mmap/msync/mincore/etc class syscalls
to 'size_t' as per bde's request.
1996-03-02 16:51:25 +00:00
jkh
ce1a5be689 Miscellaneous cleanup before big round of menu restructuring (to use new
libdialog features).
1996-03-02 07:31:58 +00:00
jkh
27eac390dd Hopefully, this will fix the problems that some people have been having with
the S-Video input.  It also has code in the driver for the meteor RGB support
and some other bug fixes.  I don't have a meteor RGB but I have been told
that it works.
Submitted by:	Jim Lowe <james@miller.cs.uwm.edu>
1996-03-02 06:08:53 +00:00
dyson
34e31b98c7 1) Fix a bug that a buffer is removed from a queue, but the
queue type is not set to QUEUE_NONE.  This appears to have
	caused a hang bug that has been lurking.
2)	Fix bugs that brelse'ing locked buffers do not "free" them, but the
	code assumes so.  This can cause hangs when LFS is used.
3)	Use malloced memory for directories when applicable.  The amount
	of malloced memory is seriously limited, but should decrease the
	amount of memory used by an average directory to 1/4 - 1/2 previous.
	This capability is fully tunable.  (Note that there is no config
	parameter, and might never be.)
4)	Bias slightly the buffer cache usage towards non-VMIO buffers.  Since
	the data in VMIO buffers is not lost when the buffer is reclaimed, this
	will help performance.  This is adjustable also.
1996-03-02 04:40:56 +00:00
pst
7627292939 Update the Connectix QuickCam driver to match my current work.
- split driver into FreeBSD specific and camera specific portions
  (qcamio.c can run in user mode, with a Linux "driver top" etc,
   and qcam.c should be trivial to port to NetBSD and BSDI.)
- support for 4bppand bidirectional transfers working better
- start of interleaved data-transfers byte-stream decodes (some of this
  stuff has been pulled out for the moment to make it easier to debug)

At this point, anyone who wants to port it to other platforms should feel
free to do so.  Please feed changes directly back to me so that I can produce
a unified distribution.
1996-03-02 03:48:19 +00:00
dyson
b7119381dd Enable VMIO for non-VDIR metadata and block device. 1996-03-02 03:45:12 +00:00
dyson
ed1fa57da8 1) Eliminate unnecessary bzero of UPAGES.
2) Eliminate unnecessary copying of pages during/after forks.
3) Add user map simplification.
1996-03-02 02:54:24 +00:00
dyson
5f6f44df5a More b_flags fixes. 1996-03-02 01:49:51 +00:00
phk
8bc36c3dbc Use libmd.
Add support for negotiating (more like "informing peer") about DNS.
Various cleanup of warnings.
1996-03-01 19:29:44 +00:00
dyson
0d3859fc48 Fix a bug that b_flags was getting unnecessarily modified by
the slice code.  The effect up to now has been insignficant, but
improved buffer allocation code will break with this problem.
1996-03-01 19:01:04 +00:00
jkh
2dac23e9f4 Properly save and restore the terminal characters! 1996-03-01 18:21:41 +00:00
bde
e01d4a02fc Removed temporary file. 1996-03-01 15:18:55 +00:00
pst
28abcfcb35 This commit was generated by cvs2svn to compensate for changes in r14306,
which included commits to RCS files with non-trunk default branches.
1996-03-01 06:14:47 +00:00
pst
6074a89ffd Import improved quickcam driver control utilities, and
un-installed histogram program for checking driver timing.
1996-03-01 06:14:47 +00:00
wosch
c7a6efe933 delete unused label endarg
correct indent of last new code
fix usage string, option -f before option -i (alphabetic order)
1996-03-01 06:14:13 +00:00
wpaul
b95fe018c1 Initialize a few more 'result' members in a few places (both in the v2
and v2 service procedures). Also fixed the formatting in a few places
to keep everything under 80 columns.
1996-03-01 03:49:47 +00:00
wpaul
8f1aea64e1 In ypproc_master_2_svc(), don't leave result.peer uninitialized when
returning an error.
1996-02-29 23:10:38 +00:00
adam
76b7e18f09 sense of 'mask' was reversed in default case of no securenets file. 1996-02-29 18:29:24 +00:00
dg
be0c3a28c5 Make the -w option actually useful to people. Instead of it creating a
messy 130 column collage, output the system totals -or- info for a
specific interface if -I is given. Also wait for <interval> before
outputting the first sample so that it represents meaningful data (as
opposed to the total since the system was booted - most busy systems
wrap around many times during their operation, so these numbers are
only misleading).
1996-02-29 07:44:37 +00:00
gpalmer
1dec7bc8c6 Add a new option: DDB_UNATTENDED. Stops machine dropping into DDB
when it panics, but leaving activation of DDB from the console
unaffected.
1996-02-28 21:42:15 +00:00
jfieber
8dc4ec2da7 Remove reference to Systems.FAQ 1996-02-28 20:08:48 +00:00
wollman
c49f72f046 Clean up Makefile. Still needs -lcompat for insque/remque. 1996-02-28 18:47:46 +00:00
gibbs
b41fe501d7 Fix media type determination. 1996-02-28 17:19:04 +00:00
adam
d14fef7819 "slow downs" --> "slowdowns" 1996-02-28 17:04:43 +00:00
nate
5d62a45baa Fix for 3C589C model. This patch allows people with the new models to work and
doesn't break support for the older models (tested with my 3C589B).

Reviewed by:    Joshua Gahm <jgahm@BBN.COM>
Submitted by:   hosokawa@mt.cs.keio.ac.jp (HOSOKAWA Tatsumi)
1996-02-28 16:23:36 +00:00
phk
f327e1fb69 Forgot to remove this file. 1996-02-28 13:30:14 +00:00
wosch
aeb68abf6d Convert "time zone" to "timezone" in section NAME
Submitted by:	brien@cs.ucdavis.edu (David E. O'Brien)
1996-02-28 11:59:50 +00:00
jkh
10d777db51 Take slashes out of name for tab132 terminal entry. New ncurses doesn't
like that.
1996-02-28 02:04:14 +00:00
mpp
c1b1e0c3b0 Fix a bunch of the "mailto" lines so that they actually work.
A bunch of them read "mailto;user@address" instead of the
proper "mailto:user@address".
1996-02-27 20:52:26 +00:00
pst
4659e82deb Fix conflicts and merge into mainline (this may get cvs admined out and redone properly by Peter later) 1996-02-27 19:42:44 +00:00
pst
912836fc11 Fix conflicts and merge into mainline 1996-02-27 19:42:00 +00:00
ache
221f5fcda8 Fix re-sense code
Remove unused part of close code
1996-02-27 19:08:39 +00:00
ache
be74b2bfc2 rmcd0c: now several ioctls (eject/close/debug/reset/etc.) works
even not CD sensed. Open of this device without CD sensed allowed too.
Other ioctls re-sense CD for this device.
1996-02-27 18:53:50 +00:00
wollman
fa2bc4c0de Correctly capitalize `Virgin'. 1996-02-27 17:48:44 +00:00
wollman
f85726589f Don't list Greenland under Denmark; the Greenanders apparently
don't like that.

Obtained from: tz mailing list
1996-02-27 17:22:48 +00:00
jfieber
a8c8923a37 Fix a variety of bogons.
Remember:
`&' is a magic character, use &amp;
`$' is a magic character (but shouldn't be), use &dollar;
use ``...'' instead of "..."
1996-02-27 15:57:51 +00:00
bde
da4d15fbc1 Spell tcp_listendrop consistently so that tcp_input.c and netstat compile. 1996-02-27 15:12:53 +00:00
mpp
3c0c46721e Silence some cc -Wall warnings in quotacheck. 1996-02-27 08:04:48 +00:00
mpp
e1d2af37f6 Add a prototype for the quotactl system call. 1996-02-27 07:57:57 +00:00
jkh
c245068cb5 Add second Israel mirror. 1996-02-27 03:42:12 +00:00
jkh
a47fe7dccd Get rid of the MIRROR.SITES file. It was a gratuitous duplication
of effort.
1996-02-27 03:40:40 +00:00