cgd
b8403d582b
don't be so quick to cast macro arguments to unsigned; if the
...
arguments are really off_t's (e.g. to btodb), then you can lose
information. This was the "> 4G file systems don't work" bug; physio
uses btodb, which was broken.
1995-03-18 07:22:43 +00:00
christos
bbcbf6ccbf
Added defines for svr4_sysarch()
1995-02-01 01:40:25 +00:00
jtc
830a53e394
ANSI says that <stdarg.h>'s va_end macro must expand to a void expression.
...
For consistancy, I'm changing <varargs.h> too.
1995-01-28 01:51:46 +00:00
mycroft
7b87637bb3
Rearrange struct reg to match what the rest of the world expects.
1995-01-26 18:12:03 +00:00
christos
cf1d6b55f3
Modify the floating point part of our context to reflect reality.
1995-01-25 04:18:52 +00:00
jtc
9540190d45
This file, which will be included by <sys/cdefs.h>, will contain macros
...
such as __warn_references() and __weak_reference() which are actually
machine dependant. This will make it easier for ports that are being
bootstraped with ELF and ECOFF based toolchains.
This change also introduces a new macro, _C_LABEL(x). _C_LABEL expands
its argument, an identifier, to a character string of the identifier
name as it is represented in an object file.
For most ports, _C_LABEL(x) will expand to "_x", for ELF based ports
_C_LABEL(x) will expand to "x".
1995-01-19 01:38:36 +00:00
mycroft
ecef8fddfa
Remove PSL_USERCLR, and add a PSL_USERSTATIC. Change the bit descriptions to
...
more closely match the 386 manual. (Probably the mnemonics should be changed,
too.)
1995-01-15 00:57:50 +00:00
jtc
d7a8b2964f
Only define sig_atomic_t when _ANSI_SOURCE is defined.
1995-01-10 19:01:00 +00:00
christos
b006bf7e68
Added missing forward declaration
1995-01-09 01:05:24 +00:00
christos
e1c97cde06
New file for signal handling and {g,s}etcontext().
1995-01-08 21:23:31 +00:00
mycroft
d16dcced99
Add interrupt sharing types.
1995-01-03 01:19:19 +00:00
cgd
7b8535b554
do the right thing with strange-sized varargs objects.
1994-12-28 22:45:42 +00:00
cgd
e5049f4d59
make the definition of _JBLEN mach. dep. header-dependent.
1994-12-20 10:36:27 +00:00
mycroft
d2d4dc4654
Use immediate constants for port numbers < 0x100.
1994-11-20 21:36:44 +00:00
christos
f63115591a
Included <sys/cdefs.h> since this file is now using __signed.
...
It broke non gnu compilers.
1994-11-20 18:50:18 +00:00
mycroft
e075f8c13d
Convert port, IRQ, and DRQ numbers to ints.
1994-11-18 22:18:35 +00:00
mycroft
1c5ac2e88c
pcb.h requires segments.h now.
1994-11-08 23:09:21 +00:00
mycroft
205d425f2f
As pointed out by Bruce, splsoftclock() needs to process pending interrupts
...
when lowering the priority. Do this by simply calling splx(). For the
benefit of NFS (for now), modify splx() to return a value so that
splsoftclock() does. This work is optimized out for every use of splx()
that ignores the value, so it only affects relevant code.
Also, clean up this file a little.
1994-11-06 01:37:47 +00:00
mycroft
c2191a2ad0
Fully prototype ssdtosd() and sdtossd().
1994-11-05 03:20:36 +00:00
mycroft
34c4570d61
Only use ssdtosd() when creating, expanding, or copying the LDT. Keep a copy
...
of the result in the PCB so it can be loaded quickly on context switches.
1994-11-05 03:17:33 +00:00
andrew
20cc8b6c5c
Increase NKPDE to cope with 64MB RAM.
1994-10-31 06:30:52 +00:00
cgd
022ee8f7fe
new RCS ID format.
1994-10-27 04:14:23 +00:00
cgd
77e4fe47ef
update for new syscall args description mechanism
1994-10-20 04:43:21 +00:00
cgd
f501e4e128
make <stdarg.h> a symlink, and clean up ports' stdarg.h and varargs.h files.
1994-10-15 04:57:29 +00:00
cgd
49c34d3337
move arch dependence to archs. clean up a bit. deal with weird MAXPARTITONS.
1994-10-14 18:26:22 +00:00
mycroft
c3fa5122d6
#include cpufunc.h from pmap.h.
1994-10-09 15:00:38 +00:00
mycroft
e19b0472c8
Make multiple-inclusion protection consistent.
1994-10-09 13:33:53 +00:00
mycroft
c87fbde918
Fix typo.
1994-10-09 13:31:19 +00:00
mycroft
701c0f0058
Eliminate i386_saved_state.
1994-10-09 13:27:07 +00:00
mycroft
8295e4b8f2
Nuke dirty().
1994-10-09 13:23:21 +00:00
mycroft
ebbc8e0476
Make the conversion macros more consistent.
1994-10-09 13:20:37 +00:00
mycroft
18830ce0ea
Define pmap_update() using tlbflush().
1994-10-09 13:11:18 +00:00
mycroft
47db98b4d9
Eliminate register restrictions where possible.
1994-10-09 13:02:56 +00:00
mycroft
112dac786c
Make reg, frame, and sigcontext more similar.
1994-10-09 12:39:05 +00:00
mycroft
13c1794b82
Eliminate tf_isp.
1994-10-09 09:20:28 +00:00
jtc
badcc17a6d
Add constants required by XPG3
1994-10-05 17:16:29 +00:00
jtc
62db8972b1
Updated bde's comments wrt. i387 control word settings so that they
...
describe NetBSD, rather than 386BSD 0.1.
Removed 386BSD and BDE control word constants, since we don't need and
will never use them. However, The iBCS control word constant is kept,
since we might want to use it in the iBCS binary compatibility code.
1994-09-22 00:37:13 +00:00
mycroft
1c8e17fb63
Prototype spllower().
1994-09-19 05:05:15 +00:00
jtc
bdd26b125c
asm -> __asm (PR #463 ).
1994-09-10 01:07:08 +00:00
mycroft
0d3651018e
Make kernel_pmap a macro that points directly to kernel_pmap_store.
1994-09-09 23:58:48 +00:00
mycroft
4116a4243e
Various changes:
...
* Inline some functions.
* Eliminate redundant calls to pmap_page_index().
* Reduce the number of TLB flushes in accordance with the i386 SSWG.
* Inline pmap_remove() in pmap_remove_all(). (Most if it is unnecessary.)
* Allocate pv_entry's in pages, and keep a list of free entries in each page,
and a list of pages with free entries. (Trying to reduce malloc() overhead,
and improve locality of reference.)
* Remove a couple of macros that aren't really useful.
* Remove pmap_kernel() completely.
1994-09-07 20:48:52 +00:00
jtc
b3b55d02f1
Misc changes to make this file more like the asm.h headers used by other
...
architectures:
Renamed _C_FUNC() to _C_LABEL()
Renamed _ASM_FUNC() to _ASM_LABEL()
Merged _BEGIN_ENTRY with _ENTRY
Renamed _END_ENTRY to _PROF_PROLOGUE
When assembling with profiling enabled, set up stack frame before calling
mcount() in _PROF_PROLOGUE. Also omit emitting .long 0's, as they are no
longer used by the profiling code.
1994-09-02 05:02:47 +00:00
mycroft
d20de15399
Add USPACE.
1994-08-24 19:32:36 +00:00
mycroft
01c2a3243e
Add flags for iBCS2 compat.
1994-08-15 22:19:44 +00:00
mycroft
5f27568164
Eliminate struct pte and struct pde.
1994-08-15 14:46:45 +00:00
mycroft
60280d9735
Don't allow VM86 mode, for now.
1994-08-13 06:55:47 +00:00
deraadt
ffb9d6e173
document cyrix configuration registers
1994-08-03 21:39:16 +00:00
cgd
3fbc338a62
define __BIT_TYPES_DEFINED__ for compatibility with things like BIND and nvi
1994-07-20 05:44:19 +00:00
mycroft
551f7bc780
Since we're no longer using xchg instructions, there's no reason to prefer
...
a q reg over and other. Also, fix some types in the case of _POSIX_SOURCE.
1994-07-15 21:10:21 +00:00
deraadt
50b13742e4
_MACHINE_VARGS_H_
1994-06-29 00:45:01 +00:00
mycroft
470742fbc0
profile_tick() is no longer needed.
1994-06-14 19:37:39 +00:00
mycroft
9a87e0deef
Increase default NKPDE.
1994-06-02 09:29:01 +00:00
mycroft
65a32ed04c
Add cpu_set_init_frame().
1994-05-27 11:22:58 +00:00
mycroft
736870802e
Add some more constants.
1994-05-24 11:54:24 +00:00
deraadt
f90fda8fd6
cyrix CPU_486DLC
1994-05-24 07:24:37 +00:00
cgd
979f061754
use __signed instead of signed, per Lite
1994-05-24 00:51:36 +00:00
cgd
4d7a245049
can't use u_long
1994-05-23 07:41:24 +00:00
cgd
d158bd71a6
add cpu_swapin
1994-05-23 03:00:56 +00:00
cgd
30f3283f7d
cast to quiet warning
1994-05-23 02:59:44 +00:00
cgd
81193600f0
update from lite
1994-05-21 06:48:13 +00:00
cgd
9e66548df2
struct md_coredump
1994-05-21 06:48:05 +00:00
cgd
aa81f487b0
new way of naming things
1994-05-21 06:47:54 +00:00
cgd
7e860c9159
make cpu_wait a macro, and define cpu_coredump
1994-05-19 08:09:49 +00:00
cgd
c9d464003e
USL copyright foo
1994-05-16 10:58:26 +00:00
mycroft
8d17074a03
Duh.
1994-05-13 11:12:38 +00:00
mycroft
a4ea4bf624
Need some more macros not in the 4.4-Lite version.
1994-05-13 10:47:57 +00:00
mycroft
65d3a66647
Do this better.
1994-05-13 10:40:19 +00:00
mycroft
365ea433a5
Needed for new profiling code.
1994-05-13 09:37:23 +00:00
cgd
70b556d027
new defn's
1994-05-09 03:23:03 +00:00
cgd
2636f2c86a
cpu-dependent sysctl structs
1994-05-07 00:53:14 +00:00
mycroft
62b418de75
Correct comment.
1994-05-06 12:23:10 +00:00
mycroft
895e9ed71a
Mostly stylistic change.
1994-05-05 07:39:28 +00:00
cgd
a0a7429482
lots of changes: prototype migration, move lots of variables, definitions,
...
and structure elements around. kill some unnecessary type and macro
definitions. standardize clock handling. More changes than you'd want.
1994-05-05 05:35:42 +00:00
cgd
4bbabd8e7a
Rename a lot of process flags.
1994-05-04 03:41:12 +00:00
mycroft
fb12ba70e2
Only #include other stuff #ifdef KERNEL.
1994-04-08 04:24:16 +00:00
mycroft
3f5e4f423f
Implement dynamic IRQ configuration and IRQ sharing. Inline spl*() calls.
...
Reorganize and clean up the relevant code.
1994-04-07 06:48:19 +00:00
mycroft
beb5680d81
This is #included multiple times.
1994-04-03 22:36:41 +00:00
mycroft
0234c30a00
Clean up #includes.
1994-04-03 22:28:23 +00:00
mycroft
3a8dd5d6b1
Clean up #includes.
1994-04-03 18:58:55 +00:00
mycroft
3ce26e4f42
Make sure we get psl.h.
1994-04-03 18:54:21 +00:00
mycroft
c075fee1b2
Clean this up a little.
1994-04-03 18:53:53 +00:00
jtc
91906bc019
Inline assembly [hn]to[nh][sl] functions used xchgb %h1,%b1 instead of the
...
faster (on the i486 & i586) rorw $8, %w1. The inline assembly for GCC 1.X
already used rorw. Using rorw is one byte longer, but we wouldn't be
inlining at all if we weren't optimizing for speed.
1994-03-16 17:20:24 +00:00
cgd
6c218e563f
add basic integral types (a la sparc port) that new nvi wants.
1994-03-14 02:10:40 +00:00
jtc
427a14083c
Added RCSID macro, for RCS ID's (what else?).
1994-03-12 01:23:21 +00:00
mycroft
3a57542a30
Back out previous change for now.
1994-03-09 07:58:39 +00:00
mycroft
a692d2185a
Inline spl*() calls.
1994-03-08 13:24:46 +00:00
mycroft
917559fb12
Add `com' softintr.
1994-03-08 06:57:28 +00:00
hpeyerl
6d35bd3f7f
Move some machine dependant disklabel stuff in here.
1994-02-22 17:16:41 +00:00
cgd
efa03b9a6c
fix from Thomas Eberhardt <thomas@mathematik.uni-Bremen.de>:
...
byte swap macros used a variable "X" internally, which would get
screwed up if user programs #defined "X". change uses of X to __x.
1994-02-12 07:23:49 +00:00
jtc
5235180083
Fix spelling error in Copyright notice
1994-01-28 23:43:26 +00:00
cgd
5444802ec5
getting and setting FP regs aren't appropriate yet
1994-01-28 07:06:32 +00:00
pk
24e4cb4bad
move varargs stuff to arch/<machine>/include.
1994-01-27 00:18:18 +00:00
jtc
2a51c00a70
FPU control word of 0x137f doesn't work well in "real" world applications
...
so I've changed it to 0x127f. 64 bit precision causes errors in paranoia
and our math library, changing to 53 bit precision solves these problems.
I've been told that long double support in Gcc 2.5 requires 64 bit mode,
so a comprehensive FP strategy (compiler, library, FPU, emulator) will
have to be addressed in the future.
1994-01-25 19:58:30 +00:00
jtc
c4b7945dca
My previous checkin didn't really change the FPU Exception Mask -- it was
...
trapped inside an #ifdef -- this commit changes it as I had originally
intended.
1994-01-17 18:10:01 +00:00
mycroft
900084ce24
Clean up deleted files.
1994-01-16 02:00:01 +00:00
cgd
ea52295d11
SHMMAXPGS now pegged at 1024, where it belongs
1994-01-16 01:36:07 +00:00
mycroft
c8b8051b89
Gratuitous formatting changes.
1994-01-11 13:30:40 +00:00
cgd
cb875046b8
LBL "/dev/audio" include file.
...
probably will need to be hacked if "the right things" are done to bsd_audio.c
1994-01-09 19:30:17 +00:00
cgd
8cdc8d997d
define PT_STEP, and clean up some
1994-01-09 16:53:03 +00:00
mycroft
4eb1bbfb0b
Use PSL_MBO and PSL_MBZ in the more traditional way.
1994-01-09 14:58:14 +00:00
cgd
23c144e8b3
code reorg
1994-01-08 11:13:52 +00:00
jtc
ceb7f9888d
Change default NetBSD NPX control word to 0x137f.
...
This masks all FP exceptions (like every other UNIX system), and makes
it possible for gcc 2.5's long double support to work.
1994-01-08 01:19:06 +00:00
pk
6f81dd8136
Add .type directive to ENRTY().
...
Move PIC_ macros over here from SYS.h
1994-01-07 00:46:20 +00:00
mycroft
d5bb16fdb2
Move kernel to 0xf8000000.
1994-01-05 16:02:36 +00:00
mycroft
e254def3cf
Fix VM_{MIN,MAX}_KERNEL_ADDRESS.
1994-01-04 00:44:03 +00:00
mycroft
c0e772492e
Inline all the [lr]cr[023]() `functions' in cpufunc.h.
1994-01-03 16:21:48 +00:00
mycroft
7131e8517e
Garbage collection.
1994-01-03 16:20:47 +00:00
mycroft
e75be43c5d
Make sure we get the correct `rep' prefix per the Intel manual (though really
...
GAS should figure this out itself).
1993-12-31 21:11:32 +00:00
deraadt
89ea303b7c
fix __asm() clobber list for some instructions. fix from
...
Lennart Augustsson <augustss@cs.chalmers.se>
1993-12-30 05:16:43 +00:00
cgd
fd9de878ef
add NPTEPG back in. gdb wants it. Thanks to Rich Murphey for pointing it out.
1993-12-22 17:39:45 +00:00
cgd
d2ad7a00c2
should be 'struct reg' not 'struct regs' -- it's in reg.h, after all!
...
also, delete r_fs and r_gs; looking at the code and comments
describing/using this struct, they don't belong here
(though if support for them is ever put in here, they should be,
but for i486-en only... how do you do that 'reasonably,' though?
interface issues...)
1993-12-22 12:57:24 +00:00
cgd
7fbfc4bac0
add (possibly iffy) definitions of PSL_USERSET and PSL_USERCLR,
...
"standard" PSL masks.
1993-12-22 12:56:08 +00:00
cgd
dced52af6c
bump MAXSSIZ back down to 8M (from 256M, where charles put it).
...
execve() currently allocated MAXSSIZ of address space (AND PAGE TABLES)
for the stack. until that's changed, and the stack-handling code is
updated to match, MAXSSIZ==256M will make execve() significantly slower
than MAXSSIZ==8M.
1993-12-22 12:30:59 +00:00
mycroft
6c32b87568
Remove two unused fields.
1993-12-21 09:47:45 +00:00
mycroft
0cd3f0fdd2
Remove some things which should not be here.
1993-12-20 09:08:11 +00:00
mycroft
de04e7e727
New, more complete version.
1993-12-20 09:07:22 +00:00
mycroft
2250fff236
Cleanup and garbage collection; nothing significant. From magnum branch.
1993-12-20 05:25:02 +00:00
mycroft
546d92cec9
Forgot to decrement these.
1993-12-19 07:54:52 +00:00
mycroft
c857af00dc
Clean up trap handling and macroize interrupt entry and exit code. From
...
magnum branch.
1993-12-19 06:58:12 +00:00
mycroft
8b7ff01b9e
Clean up deleted files.
1993-12-19 03:42:13 +00:00
mycroft
90b25c90a1
Cleanup from magnum branch.
1993-12-19 03:41:30 +00:00
mycroft
ea13c12adc
From magnum branch:
...
Remove Jolitz's netisr kluge. Make sure cpl == 0 really means base priority.
Other minor cleanup.
1993-12-17 00:10:06 +00:00
mycroft
1cc1b73beb
Cleanup of startup and signal handling code from magnum branch.
1993-12-15 09:31:29 +00:00
mycroft
fccc819b20
Fold in most of the magnum vm changes.
1993-12-14 05:31:17 +00:00
deraadt
9a48e42157
__386BSD__ -> __NetBSD__
1993-12-07 12:51:58 +00:00
cgd
b26f063ecf
add MACHINE_ARCH as i386
1993-12-04 02:04:31 +00:00
cgd
183fd1b02f
cut down SHMMAXPGS (temporary)
1993-11-15 11:41:54 +00:00
cgd
4878a43c3d
Add the System V message queue and semaphore facilities. Implemented
...
by Daniel Boulet <danny@BouletFermat.ab.ca>
1993-11-14 13:21:59 +00:00
brezak
b92626678c
Cleanup LDT/GDT defines
1993-10-26 15:53:54 +00:00
pk
14e6ea89aa
Put definition of __LDPGSZ and `struct relocation_info' where they belong:
...
in <machine/exec.h>.
1993-10-18 09:46:56 +00:00
cgd
7b64280a28
patch from rod grimes:
...
Fix definitions to be in terms of a minimum number of constants by
using the SHIFT value as the basis for the other values, for example
instead of:
#define NBPG 4096
#define PGSHIFT 12
use:
#define PGSHIFT 12
#define NBPG (1 << PGSHIFT)
1993-10-09 01:35:50 +00:00
andrew
ef83446787
Exports the pccons ioctls.
1993-09-28 03:26:17 +00:00
jtc
e7ecd24ac3
Do not provide quad constants if compiling in a strict ansi or a strict
...
posix environment.
1993-09-24 18:22:31 +00:00
brezak
4212e64961
Include sys/signal.h instead of machine/signal.h
1993-09-21 20:51:12 +00:00
brezak
90add535c9
Add tISP offset
1993-09-19 18:59:35 +00:00
brezak
a3e9fd6947
Add per-process LDT slot.
1993-09-19 18:59:17 +00:00
brezak
044ac34c5a
Define signal frame here.
1993-09-19 18:58:39 +00:00
brezak
66f540572a
Defines architecure dependant syscalls.
1993-09-19 18:58:14 +00:00
brezak
5413da0ff5
Machine dependant signal.h. Defines sigcontext and sig_atomic_t for i386 port.
1993-09-19 18:57:48 +00:00
cgd
0145d113ae
get rid of the #ifndef KERNEL around the include of sys/cdefs.h,
...
a la 4.4, because it seriously breaks things otherwise, given
inclusion of endian.h in types.h
1993-09-17 01:44:08 +00:00
mycroft
a46b224043
Add constants for quad support.
1993-09-16 06:01:11 +00:00
mycroft
111aecd0a9
Add an #ifndef _POSIX_SOURCE...
1993-09-16 05:59:43 +00:00
brezak
cb098b5eb0
Changes to use a trap frame for syscalls.
1993-09-16 03:24:13 +00:00
mycroft
606544f20d
Add _QUAD_HIGHWORD and _QUAD_LOWWORD for Torek's quad stuff.
1993-09-16 02:25:45 +00:00
jtc
c3f643cd8a
Remove NEED_* defines, as they are now satisfied by libkern.
1993-09-11 00:16:40 +00:00
jtc
aabddf622f
STDC -> __STDC__
1993-09-08 16:55:17 +00:00
sef
b477be52eb
Yet more of the ptrace() reorg; now ptrace_setregs() and ptrace_getregs()
...
are present, along with PT_GETREGS and PT_SETREGS ptrace commands.
1993-09-05 03:53:52 +00:00
cgd
59a008c712
change maximum stack size to 8M.
1993-09-04 22:21:28 +00:00
cgd
2403a33987
decouple MAXDSIZ and MAXSSIZ. MAXSSIZ now is 2M; shouldn't need more,
...
and saves time in exec.
1993-09-04 00:38:47 +00:00
cgd
c10d5aa752
get rid of bogus #define of resettodr(); now setting time actually works!
1993-09-02 02:10:35 +00:00