pk
b54ea24924
Merge in4_cksum().
2001-03-21 00:38:47 +00:00
chs
e533061fce
in mem_access_fault*(), when invoking the pcb_onfault mechanism, pass the
...
return value of uvm_fault() to the onfault routine via %o0. users of
pcb_onfault now return this value to their callers rather than always
returning EFAULT. this allows i/o errors in VOP_GETPAGES() to be returned
back to read(), etc.
2001-03-18 17:11:22 +00:00
mrg
3bb2b205f9
show the cpu a process is running on in proc
2001-03-18 14:24:10 +00:00
mrg
45d39a2030
redo previous slightly differently.
2001-03-18 14:10:34 +00:00
mrg
e82b5bb630
"mach slock" for simple_locks
2001-03-18 14:06:10 +00:00
mrg
0fcd32a415
"mach cpu" is MP only.
2001-03-17 01:54:17 +00:00
mrg
e44f962032
steal a few mach commands from sparc64. add a #if 0'ed "mach cpu"
2001-03-16 10:28:53 +00:00
mrg
48fc32e16e
#ifdef DDB, add new function cpu_debug_dump(). define CPU_INFO_ITERATOR and
...
CPU_INFO_FOREACH.
2001-03-16 10:26:11 +00:00
chs
ac3bc537bd
eliminate the KERN_* error codes in favor of the traditional E* codes.
...
the mapping is:
KERN_SUCCESS 0
KERN_INVALID_ADDRESS EFAULT
KERN_PROTECTION_FAILURE EACCES
KERN_NO_SPACE ENOMEM
KERN_INVALID_ARGUMENT EINVAL
KERN_FAILURE various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE ENOMEM
KERN_NOT_RECEIVER <unused>
KERN_NO_ACCESS <unused>
KERN_PAGES_LOCKED <unused>
2001-03-15 06:10:32 +00:00
mrg
ef26546e15
lock the kernel around calling interrupt stubs.
2001-03-15 03:20:43 +00:00
mrg
122b3a0e67
sprinkle KERNEL_LOCK() and KERNEL_PROC_LOCK() where they're missing. add
...
SYSCALL_DEBUG support to trap.c.
2001-03-15 03:01:39 +00:00
tsutsui
43bd337868
Update for recent changes to the MI i82586 driver.
...
(added 'why' argument to the channel attention hook function)
2001-03-13 16:31:14 +00:00
pk
1b84e6fb33
pasto: sc_maddr => sc_mem
2001-03-09 10:19:54 +00:00
thorpej
5dedbd1c97
Duh, don't forget the proc argument.
2001-03-08 01:46:18 +00:00
thorpej
3423154d78
Use bus_dmamap_load(), not bus_dmamap_load_raw().
2001-03-08 01:38:57 +00:00
thorpej
2c4c690f14
Add the BUS_DMA_STREAMING flag.
2001-03-07 22:42:16 +00:00
pk
a917eabaec
* A couple of #if defined(SUN4M)' should be
#if defined(MULTIPROCESSOR)'
...
* Print notice if not all CPUs were attached
* Switch to SMP version of cache flush routines in just one place: in
cpu_attach() after all known CPUs have been configured.
2001-03-06 13:39:22 +00:00
pk
b91b8796d9
Implement MSGBUFSIZE option.
2001-03-05 16:46:09 +00:00
pk
8eeb7a8a79
mp_{pause,resume}_cpu(): avoid crash when cpu(s) not yet configured.
2001-03-05 16:45:22 +00:00
pk
f3c74253b0
Fix `flags' argument to pmap_enter().
2001-03-05 16:43:34 +00:00
pk
90e5095df2
Fix syntax error in previous change.
2001-03-05 07:16:19 +00:00
pk
4e14c96788
In debug printf: missing quote on format string.
2001-03-05 07:04:01 +00:00
pk
a1b18f9435
Fix syntax error in previous.
2001-03-04 21:28:11 +00:00
pk
bac5be6461
Simplify `bad alias' handling in pv_link()/pv_unlink():
...
- there's no need to have different PV_NC flags for sun4[c] & sun4m
- deal with kvm_uncache() being called on a managed page in a
separate helper function that deals with the caching state
within the pv list for that page, avoiding interference with
the `bad alias' removals in pv_unlink().
Note that currently never called for managed pages, but for now I'm
keeping the support in.
2001-03-04 21:12:24 +00:00
mrg
b301668cb5
build sparc64 bootblk, ofwboot, & ofwboot.net on sparc
2001-03-04 15:34:45 +00:00
mrg
e85a9ee949
this is a sparc64 program. so -DSUN4U, machine -> sparc64. cleanup.
2001-03-04 14:50:05 +00:00
mrg
0a1cdb5f63
allow sparc "make release" to build a sparc64 capable 32 bit kernel.
2001-03-04 10:12:56 +00:00
pk
51668836b3
Remove unused declaration of `cpcb', which is no longer a global variable.
2001-03-03 19:42:38 +00:00
pk
d74da58795
alloc_cpuinfo: zero all the memory we allocate; not just the `cpuinfo' part.
...
cpu_attach: initialize `curpcb->pcb_wim' for each additional CPU.
2001-03-03 19:40:28 +00:00
pk
bb5f16e6e0
Sprinkle KERNEL_PROC_LOCK()s at the kernel entry points.
2001-03-03 19:11:02 +00:00
pk
bba5d36487
Initialize the IPI message locks.
2001-03-02 17:00:13 +00:00
pk
0548d12369
* proc_trampoline: call `proc_trampoline_mp()' #if MULTIPROCESSOR;
...
currently necessary to acquire the `running in kernel mode' lock;
pointed out by Bill Sommerfeld/Simon Gerraty.
* remove reference to `cpu_set_kpc()' from comments, as we don't have it.
2001-03-02 10:27:00 +00:00
pk
e999fb6b77
bootstrap area: remove dead code + some trivial reformatting
2001-03-02 09:48:13 +00:00
pk
d98e8d5bca
* Correct the `flags' argument in call to pmap_enter().
...
* Enable the message buffer at a temporary virtual address (KERNBASE)
in bootstrap(), if that can be done.
2001-03-01 16:14:25 +00:00
pk
813b8d79fd
* Correct the `flags' argument in several calls to pmap_enter().
...
* message buffer initialisation:
- change the buffer size to 8192 on all platforms
- don't assume the buffer is always located at physical address 0
- drop the SUN4 hack that left first half of the page unused;
I believe this is no longer necessary, since the msgbuf
data structure is duely sanity-checked before use in initmsgbuf().
2001-03-01 16:09:25 +00:00
pk
6ae8b9ec6d
Drop MSGBUFSIZE; we don't use it and it can't currently be configured
...
to a different value anyway.
2001-03-01 15:59:04 +00:00
pk
80ba31bd21
Drop the managed() macro; it is no longer used.
...
State the intended use of the vm_{first,last,num}_phys variables that are
still exported from pmap.c.
2001-03-01 15:56:47 +00:00
pk
aad0b0bcd2
Change pv list' management to use the hooks provided in the
vm_physmem'
...
structure. While this comes with the cost of having to search the
`vm_physmem' array every time need to find a PV entry corresponing to
some physical address, we gain the flexibility needed to support
arbitrary non-contiguous ranges of physical memory addresses.
Also, eliminate the need to sort the memory address ranges as presented
by the machine's PROM, and the requirement that physical memory starts
at address 0 (when possible).
2001-03-01 15:52:18 +00:00
pk
b87a62e09a
Make sure that e.g. myetheraddr() has a valid idprom pointer as soon as
...
possible on sun4, since it may be used before the clock attaches.
2001-02-28 14:45:23 +00:00
mjacob
312d560493
add SES device (unused #4 )
2001-02-28 00:06:28 +00:00
pk
18026ec99d
* Make PAGE_SIZE et.al. constants, if possible.
...
* Add pvlist pointer to `struct pmap_physseg'
* Because of the above, add guard against multiple inclusions.
2001-02-27 22:40:08 +00:00
cgd
8a986b2e96
convert to use getprogname()
2001-02-19 22:48:57 +00:00
jmc
106522ed47
Add -f option. If used it will perform the low level block operations on the
...
file rather than requiring a raw device. Useful when dealing with vnd's
images and building snapshots. Also allows snapshots to be built in
securelevel > 0.
2001-02-19 06:23:55 +00:00
pk
d850f6f9d2
Remove check for encoded iospace/nocache bits within physical addresses
...
in places where they can't possibly occur as the PA is for a VM managed
page.
2001-02-16 23:00:11 +00:00
pk
063b190de9
Hold off supplying the text/data gap to the VM manager; our pv table
...
handling isn't adequate yet.
2001-02-13 15:54:33 +00:00
pk
e547d3816d
pmap_page_upload(): check if `etext_gap' is there, just in case.
2001-02-13 13:48:15 +00:00
pk
460bc0a0fc
Recover the ~64KB gap in between the text/rodata & data segments that's being
...
generated by the linker in sparc/ELF images. The physical pages in this gap
are unmapped from the kernel and given to the VM manager.
2001-02-12 22:02:58 +00:00
pk
d713d112c9
Provide symbol `kernel_data_start' as the first address in the .data segment.
2001-02-12 21:56:54 +00:00
pk
203c10194b
Supply a kernel link script that puts `etext' at the end of all
...
read-only sections. Modelled after a similar change in the i386 port.
2001-02-11 16:16:58 +00:00
pk
25a91d5c1e
_bus_dma_valloc_skewed(): return a vaddr_t, not error codes; make missing
...
boundary check return an error, so the caller can decide how to respond.
2001-01-31 15:17:42 +00:00