1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
Commit Graph

12798 Commits

Author SHA1 Message Date
Peter Wemm
d66a506616 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 Wemm
9a074e93b5 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 Wemm
d375be0e82 This file is "obsolete" and no longer used or referenced. 1996-03-02 18:55:41 +00:00
Peter Wemm
4bd4912865 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 Wemm
68da53c92e 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 Wemm
39d11944d4 Document the int -> size_t change to the m* syscalls 1996-03-02 17:34:28 +00:00
Peter Wemm
9154ee6aec 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 Wemm
bad4352830 reran makesyscalls.sh after "int len" -> "size_t len" changes. 1996-03-02 17:01:36 +00:00
Peter Wemm
ce06b86652 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 Wemm
3f7efdf30d 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
Jordan K. Hubbard
e07e86d046 Miscellaneous cleanup before big round of menu restructuring (to use new
libdialog features).
1996-03-02 07:31:58 +00:00
Jordan K. Hubbard
6380fb9d12 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
John Dyson
6538dda3dc 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
Paul Traina
9d2baf5cdf 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
John Dyson
91477adc6e Enable VMIO for non-VDIR metadata and block device. 1996-03-02 03:45:12 +00:00
John Dyson
de5f6a7765 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
John Dyson
33309c7fc0 More b_flags fixes. 1996-03-02 01:49:51 +00:00
Poul-Henning Kamp
d52b14d769 Use libmd.
Add support for negotiating (more like "informing peer") about DNS.
Various cleanup of warnings.
1996-03-01 19:29:44 +00:00
John Dyson
f5d1e6dae6 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
Jordan K. Hubbard
47f8b1da86 Properly save and restore the terminal characters! 1996-03-01 18:21:41 +00:00
Bruce Evans
7bb6870434 Removed temporary file. 1996-03-01 15:18:55 +00:00
Paul Traina
36c6c789f2 Import improved quickcam driver control utilities, and
un-installed histogram program for checking driver timing.
1996-03-01 06:14:47 +00:00
Wolfram Schneider
aa05514818 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
Bill Paul
11504a40aa 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
Bill Paul
45da6d16c1 In ypproc_master_2_svc(), don't leave result.peer uninitialized when
returning an error.
1996-02-29 23:10:38 +00:00
Adam David
6dc00a94a6 sense of 'mask' was reversed in default case of no securenets file. 1996-02-29 18:29:24 +00:00
David Greenman
0b87c9157d 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
Gary Palmer
5ccab2afa9 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
John Fieber
96aec9b60e Remove reference to Systems.FAQ 1996-02-28 20:08:48 +00:00
Garrett Wollman
30e9b7206e Clean up Makefile. Still needs -lcompat for insque/remque. 1996-02-28 18:47:46 +00:00
Justin T. Gibbs
6398c75dc7 Fix media type determination. 1996-02-28 17:19:04 +00:00
Adam David
fdb480825f "slow downs" --> "slowdowns" 1996-02-28 17:04:43 +00:00
Nate Williams
f2b04a2396 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
Poul-Henning Kamp
827bc33af4 Forgot to remove this file. 1996-02-28 13:30:14 +00:00
Wolfram Schneider
a333649d00 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
Jordan K. Hubbard
8f2b769fee Take slashes out of name for tab132 terminal entry. New ncurses doesn't
like that.
1996-02-28 02:04:14 +00:00
Mike Pritchard
2ee9964bf6 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
Paul Traina
90fd5bdfbf 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
Paul Traina
f1e396bc53 Fix conflicts and merge into mainline 1996-02-27 19:42:00 +00:00
Andrey A. Chernov
79dd972e3e Fix re-sense code
Remove unused part of close code
1996-02-27 19:08:39 +00:00
Andrey A. Chernov
f4cb715ffe 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
Garrett Wollman
08de0feca6 Correctly capitalize `Virgin'. 1996-02-27 17:48:44 +00:00
Garrett Wollman
47295a8a41 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
John Fieber
c15ce264b4 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
Bruce Evans
3420f4ab37 Spell tcp_listendrop consistently so that tcp_input.c and netstat compile. 1996-02-27 15:12:53 +00:00
Mike Pritchard
2232951535 Silence some cc -Wall warnings in quotacheck. 1996-02-27 08:04:48 +00:00
Mike Pritchard
86abf1c4b2 Add a prototype for the quotactl system call. 1996-02-27 07:57:57 +00:00
Jordan K. Hubbard
eeb6e504dd Add second Israel mirror. 1996-02-27 03:42:12 +00:00
Jordan K. Hubbard
3c20d3561a Get rid of the MIRROR.SITES file. It was a gratuitous duplication
of effort.
1996-02-27 03:40:40 +00:00
Paul Traina
ef5d438ed4 Import updated Berkeley DB into CSRG branch 1996-02-27 01:59:15 +00:00