tsubai
0086d842d5
Rewrite stdarg/varargs.
2000-02-27 17:50:20 +00:00
chs
0e4b23600f
handle a NULL "done" pointer.
...
for the userspace versions, return EFAULT instead of EACCES
when the user address is bogus.
2000-02-19 23:29:16 +00:00
tsubai
e7edda84b7
Remove vmparam.h.
2000-02-18 08:50:25 +00:00
tsubai
a6343f76db
Unused. (PR 9424)
2000-02-16 14:02:13 +00:00
thorpej
fd8c03cf44
Allow arch-specific code to specify in4_cksum() like it can specify
...
in_cksum().
2000-02-14 21:42:50 +00:00
tsubai
90fe757934
Fix typo in comment.
2000-02-13 10:25:07 +00:00
thorpej
dded044fc2
Update for the NKMEMPAGES changes.
2000-02-11 19:25:12 +00:00
tsubai
0867c09dad
Change va_arg definition when __lint__ is defined.
2000-02-09 12:54:47 +00:00
kleink
36e6bc645e
Improve namespace test macros a bit.
2000-02-05 14:04:36 +00:00
kleink
82464e46d6
Add a C99-style va_copy macro.
2000-02-03 16:16:06 +00:00
sommerfeld
aa195e816f
Fix PR9240: comment above cpu_fork() out of synch with reality on most ports.
...
(comment change only, but was wrong for more than just i386).
2000-01-20 22:18:54 +00:00
danw
6c14ba0dba
Fill in the alignment trap handler a bit: now it can fix unaligned
...
floating point loads and stores (to work around a gcc bug), but will
still cause a bus error on other sorts of unaligned accesses.
2000-01-19 03:30:12 +00:00
kleink
693059feda
const -> __const and include <sys/cdefs.h> earlier; fixes PR lib/9052
...
by Takahiro Kambe.
2000-01-04 14:20:05 +00:00
kleink
11e6c54cfc
C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
...
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
thorpej
8fc6795a77
- Comment the BAT bits.
...
- Add defintions for the PowerPC 601 BATs.
- Change the BATU()/BATL() macros to be a bit more flexible; allow size,
permissions, etc. to be specified.
1999-12-18 01:36:06 +00:00
thorpej
05684a14e6
Comment the MSR bits, and note which ones are not present on the PowerPC 601.
1999-12-18 01:34:15 +00:00
thorpej
0352041467
Hardware Implementation Dependent registers for the PowerPC 601.
1999-12-18 01:33:45 +00:00
danw
83f1c31647
Fix "FPCSR" to "FPSCR". ("Floating Point Status and Control Register")
1999-12-07 15:14:56 +00:00
ragge
0513268399
CL* discarding.
1999-12-04 21:13:19 +00:00
tsubai
668b553d53
Need opt_compat_netbsd.h.
1999-11-22 13:26:59 +00:00
lonhyn
090c4d2e66
Program to convert back and forth between PPM and CHRP boot icon images.
1999-11-19 00:43:20 +00:00
kleink
eac5784583
Move signal management code common to all PowerPC platforms (sendsig(),
...
sigreturn(), sigcode) to a single place in the shared powerpc directory.
(The struct sigcontext etc. definitions were already being shared.)
1999-11-17 14:56:10 +00:00
thorpej
1946167939
Update for pmap_enter() API change. No functional difference.
1999-11-13 00:30:26 +00:00
kleink
522cbf0248
Update to match new SVR4-style definition names in <sys/exec_elf.h>.
1999-10-25 13:55:06 +00:00
jdolecek
7f589dba84
rename the MD Debugger() to cpu_Debugger()
...
add MI Debugger() which switches to console if wscons is used prior
to calling cpu_Debugger()
1999-10-12 17:08:56 +00:00
chs
3bfa86cbc0
fix breakage from PMAP_NEW cleanup.
1999-09-14 17:11:45 +00:00
chs
f3a668ed84
eliminate the PMAP_NEW option by making it required for all ports.
...
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +00:00
tsubai
30e635f6f3
Make sure that we use only inside of available memory region
...
in pmap_bootstrap.
1999-08-30 07:59:19 +00:00
simonb
3c185af5fd
Include <sys/endian.h> after defining whether where are little- or
...
big-endian. i386, pc532 and vax still include <machine/byte_swap.h>
and define macros for the {n,h}to{h,n}*() functions. mips also
defines some endian-independent assembly-code aliases for unaligned
memory accesses.
1999-08-21 05:53:50 +00:00
simonb
06a92524c2
Include <sys/bswap.h> for function prototypes. i386, pc532 and vax
...
still include <machine/byte_swap.h> and define macros for some of
the bswap*() functions.
1999-08-21 05:39:51 +00:00
tsubai
183ef12cd5
Adapt pmap_extract() change.
1999-07-11 17:44:08 +00:00
thorpej
3ebbe095e0
Change the pmap_extract() interface to:
...
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
danw
9d4f4eebdb
reorder the fp_rnd constants to match the values used by the
...
powerpc fpu
1999-07-07 01:52:26 +00:00
thorpej
0288ffb53a
pmap_change_wiring() -> pmap_unwire().
1999-06-17 19:23:20 +00:00
thorpej
f5a527bb4e
Remove pmap_pageable(); no pmap implements it, and it is not really useful,
...
because pmap_enter()/pmap_change_wiring() (soon to be pmap_unwire())
communicate the information in greater detail.
1999-06-17 18:21:21 +00:00
thorpej
beb8d06638
Generally update the comment above vunmapbuf().
1999-05-26 22:19:33 +00:00
thorpej
a2d06a4721
Generally update the comment above the vmapbuf() implementations.
1999-05-26 22:07:36 +00:00
thorpej
c10a926030
Allow the caller to specify a stack for the child process. If NULL,
...
the child inherits the stack pointer from the parent (traditional
behavior). Like the signal stack, the stack area is secified as
a low address and a size; machine-dependent code accounts for stack
direction.
This is required for clone(2).
1999-05-13 21:58:32 +00:00
tsubai
0e57d44e45
Add missing CPU_MAXID definition.
1999-05-05 11:20:54 +00:00
tsubai
6168467392
Add cpu.h.
1999-05-05 10:15:53 +00:00
tsubai
fdabab77f2
PT_{STEP,GETREGS,SETREGS} support.
1999-05-03 10:02:19 +00:00
kleink
5cbe23baad
Garbage-collect VM_MBUF_SIZE leftover.
1999-05-02 18:12:32 +00:00
ws
5423093850
Modify syncicache on PowerPC from an inline to a real function.
...
Support different cache line sizes with the same object code in userland.
While here, move the function to implementation name space.
1999-04-17 21:16:45 +00:00
thorpej
4b603c180a
Use the same hack as pmap_zero_page() and pmap_copy_page() to provide
...
direct-mapped pool pages.
1999-04-16 21:45:19 +00:00
chs
f455dd6596
add a `flags' argument to uvm_pagealloc_strat().
...
define a flag UVM_PGA_USERESERVE to allow non-kernel object
allocations to use pages from the reserve.
use the new flag for allocations in pmap modules.
1999-04-11 04:04:04 +00:00
mycroft
9c6b797796
Changes for modified pmap_enter() API:
...
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot. Also, DO NOT use
pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
access_type = 0. This should probably be revisited.
1999-03-26 23:41:25 +00:00
tsubai
82b3b0209f
In copyin() and copyout(), clear the pcb_onfault variable in the EFAULT
...
case. (pr 7243)
1999-03-26 08:32:15 +00:00
tsubai
38a92c9752
A successful kernel page fault should just return so that signal delivery
...
et al. should not executed. (pr7240)
1999-03-26 08:15:23 +00:00
mrg
d2397ac5f7
completely remove Mach VM support. all that is left is the all the
...
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
thorpej
63b6321834
VM_MBUF_SIZE is in terms of MCLBYTES, not CLBYTES.
1999-03-23 00:31:59 +00:00
chs
31839fe71d
fix previous, I got carried away with cut+paste.
1999-03-22 08:44:37 +00:00
thorpej
a77ccfe460
Garbage-collect.
1999-03-20 01:40:25 +00:00
chs
ab7269f62a
if uvm_fault() fails with KERN_RESOURCE_SHORTAGE, send a SIGKILL
...
and print a message about it. this will be used to recover from
out-of-swap conditions.
1999-03-18 04:56:01 +00:00
tsubai
b4374e3ce0
Implement badaddr() and trap machine-check in badaddr.
1999-03-15 01:29:07 +00:00
tsubai
61fbe51007
First-cut of profiling support.
...
XXX userland only, for now.
1999-03-05 07:59:13 +00:00
tsubai
96f0fb14a1
Add RSS accounting.
1999-03-05 06:10:48 +00:00
tsubai
01614b7217
Implement pmap_procwr().
...
(Not tested. gdb doesn't work on powerpc yet.)
1999-02-26 14:40:45 +00:00
hubertf
100778d54a
RCS ID police
1999-02-15 04:25:28 +00:00
kleink
f69591d12d
Use of casts as lvalues is a GNU C extension; rearrange slightly.
1999-02-10 17:03:26 +00:00
tsubai
46660b394f
Make ptable really aligned to HTABSIZE.
1999-02-04 12:45:31 +00:00
mycroft
897a8a7f29
Mark [hn]to[nh][ls]() with __const__, so they are subject to CSE.
1999-01-24 12:55:01 +00:00
tsubai
3e7448240b
Add missing backslash.
1999-01-17 12:51:03 +00:00
chuck
9cb41178b7
MNN is no longer optional, remove old code
1999-01-16 20:39:03 +00:00
bouyer
dc306354b0
Move the bswap functions from libutil to libc (this bups the
...
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
tsubai
c2bb308ef9
Use (fast!) dcbz asm instruction in pmap_zero_page().
1999-01-12 11:03:04 +00:00
tsubai
4293e4ff3c
Use the last available page(s) for msgbuf.
1999-01-12 10:26:18 +00:00
tsubai
ae67dbc85d
Fix void * arithmetic.
1999-01-10 10:24:16 +00:00
tsubai
0280ba028c
Fix void * arithmetic.
1999-01-10 10:13:15 +00:00
sakamoto
64ba00be2c
Change r_type bit field size 5 to 6 and reduce unused bit(2 to 1).
...
Suggested by Mirian Crzig Lennox.
1998-12-03 05:15:06 +00:00
tsubai
4cb00b9fe2
Adapt to gcc change (calling sequence).
1998-12-02 14:23:03 +00:00
thorpej
a6f7e0c05a
Implement WARN_REFERENCES().
1998-12-02 00:58:42 +00:00
thorpej
8458248eec
copyin() and copyout() should return EFAULT if a fault occurs, not
...
EACCESS.
1998-11-26 21:06:21 +00:00
tsubai
35f82ac3eb
Save and restore pcb_onfault in kcopy().
1998-11-26 20:48:45 +00:00
tsubai
ac7d3e6487
Add PIC definitions.
1998-11-24 11:17:17 +00:00
ws
82fe9b4f90
The last fix in trap.c missed R2.
...
And correct the size of the fault buffer while being here.
1998-11-22 21:21:32 +00:00
tsubai
491966b273
When DSI occurs and pcb_onfault != 0, registers are incorrectly restored.
...
Fix this.
1998-11-21 20:18:47 +00:00
mrg
db3051d720
fix problems in many d_mmap routines:
...
- returned EOPNOTSUPP rather than -1.
- no check for negative offset.
many of these fix potential security problems in these drivers.
XXX XXX XXX
the d_mmap cdev routine should be changed to have a prototype like:
paddr_t (*d_mmap) __P((dev_t, off_t, int));
by someone!
1998-11-19 15:38:20 +00:00
mycroft
09093330b1
Add {LONG,WORD}_BIT and {DBL,FLT}_{DIG,MAX,MIN}.
1998-11-16 04:12:29 +00:00
tsubai
dd918881b6
Restrict the length of return value within buflen.
1998-11-15 19:53:25 +00:00
thorpej
cabecee13c
Changes to support fork_kthread():
...
- cpu_set_kpc() now takes void *arg third argument, passed to the
entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.
1998-11-11 06:43:49 +00:00
tsubai
ffb3220169
Don't panic when pmap_remove_pv even if pa is not managed.
...
(i.e. I/O device. framebuffer etc.)
1998-10-13 11:30:47 +00:00
sakamoto
6857706407
powerpc/bcopy.c is unnecessary.
1998-09-18 06:04:19 +00:00
thorpej
7083b63277
Back out previous; I'm punting PowerPC to tsubai or sakamoto.
1998-09-16 23:51:27 +00:00
thorpej
ef3f4d39df
Need 103 longs for jmp_buf now (128-bit signal mask, at the front of the
...
jump buffer).
1998-09-16 23:33:18 +00:00
thorpej
cbfc257eda
sigset13_t -> int.
1998-09-14 02:48:33 +00:00
thorpej
c7d391b23c
Make signal delivery work again.
1998-09-13 09:15:51 +00:00
thorpej
70e641047c
In cpu_coredump(), use MID_MACHINE rather than MID_* (whatever it expands
...
to).
1998-09-09 11:17:24 +00:00
thorpej
8abe0d6b1c
Adjust for the new "reaper" kernel thread: do not free the vmspace and
...
u-area in machine-dependent code. Instead, call exit2() to schedule
the reaper to free them for us, once it is safe to do so (i.e. we are
no longer running on the dead proc's vmspace and stack).
1998-09-09 00:07:48 +00:00
tsubai
3a8ad815c4
Add some prototypes.
1998-09-01 16:35:50 +00:00
tsubai
b9a44d6b63
vm_offset_t --> [pv]addr_t
1998-08-31 14:43:39 +00:00
tsubai
378fc0778a
Change db_expr_t from int to long like other ports.
1998-08-31 14:16:48 +00:00
kleink
708c5f826e
Add missing wint_t (currently unused).
1998-08-16 17:16:56 +00:00
wrstuden
0e4dc30457
As ovbcopy & bcopy are now done in terms of mem* routines, it makes
...
no sense to "#define ovbcopy bcopy".
1998-08-16 02:15:50 +00:00
eeh
a2dd74ed79
Merge paddr_t changes into the main branch.
1998-08-13 02:10:37 +00:00
kleink
546365a27e
_POSIX_SOURCE -> _POSIX_C_SOURCE
1998-08-06 11:25:04 +00:00
mycroft
a24dbc8065
(Always) (practice) (safe) (macro expansion).
1998-07-31 15:07:41 +00:00
thorpej
c8f1cea511
Provide SSIZE_MAX.
1998-07-28 23:20:54 +00:00
tsubai
db105fc687
Make vtophys() return non-zero even if the addr < end.
1998-07-25 15:06:28 +00:00
thorpej
d47ea67c1f
Define one page free list, and put all pages on it.
1998-07-08 04:43:18 +00:00
jonathan
466e784ee1
defopt DDB.
1998-07-04 22:18:13 +00:00