The NetBSD Project

CVS log for src/sys/arch/sparc/sparc/trap.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / arch / sparc / sparc

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.190 / (download) - annotate - [select for diffs], Tue May 1 09:40:15 2012 UTC (13 months, 2 weeks ago) by martin
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, tls-maxphys-nbase, tls-maxphys-base, tls-maxphys, khorben-n900, jmcneill-usbmp-base10, agc-symver-base, agc-symver, HEAD
Changes since 1.189: +4 -4 lines
Diff to previous 1.189 (colored)

On unaligned access, provide the data address to the signal handler, instead
of the faulting instructions address.

Revision 1.189 / (download) - annotate - [select for diffs], Sun Feb 19 21:06:29 2012 UTC (15 months, 4 weeks ago) by rmind
Branch: MAIN
CVS Tags: yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3
Changes since 1.188: +2 -37 lines
Diff to previous 1.188 (colored)

Remove COMPAT_SA / KERN_SA.  Welcome to 6.99.3!
Approved by core@.

Revision 1.188 / (download) - annotate - [select for diffs], Sat Jul 30 19:29:12 2011 UTC (22 months, 3 weeks ago) by martin
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.187: +3 -3 lines
Diff to previous 1.187 (colored)

Get rid of #ifdef __sparc__ in uvm code - as noted by cgd back 1996,
now that we have __HAVE_CPU_VMSPACE_EXEC/cpu_vmspace_exec().

Revision 1.187 / (download) - annotate - [select for diffs], Mon Apr 18 00:26:12 2011 UTC (2 years, 2 months ago) by rmind
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, jym-xensuspend-nbase, jym-xensuspend-base, cherry-xenmp-base, cherry-xenmp
Changes since 1.186: +3 -4 lines
Diff to previous 1.186 (colored)

Replace malloc with kmem, and remove M_SUBPROC.

Revision 1.186 / (download) - annotate - [select for diffs], Fri Jan 14 02:06:31 2011 UTC (2 years, 5 months ago) by rmind
Branch: MAIN
CVS Tags: uebayasi-xip-base7, jruoho-x86intr-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jruoho-x86intr
Changes since 1.185: +3 -2 lines
Diff to previous 1.185 (colored)

Retire struct user, remove sys/user.h inclusions.  Note sys/user.h header
as obsolete.  Remove USER_TO_UAREA/UAREA_TO_USER macros.

Various #include fixes and review by matt@.

Revision 1.185 / (download) - annotate - [select for diffs], Thu Jan 13 05:20:27 2011 UTC (2 years, 5 months ago) by mrg
Branch: MAIN
Changes since 1.184: +3 -3 lines
Diff to previous 1.184 (colored)

introduce a hack to workaround the savefpstate IPI get's NULL
struct fpstate *.

add a new entry point ipi_savefpstate() that is used for this IPI
instead of the plain ipi_savefpstate().  check for %o0 being NULL,
and if so, just return.

add event counters for the savefpstate IPI, and another one for
when it detects the NULL problem.

make the cpu_info struct xmpsg be aligned to a single cache line.

with this change applied (and another minor change in testing) my
SS20 with dual SM75's has survived for 17 hours on build.sh -j5,
and has reported 7 NULL savefps.  (the minor change seems to have
a significant effect at reducing this number, but more testing is
needed for it.)


XXX:  this is horrible and we really need to find the real problem
XXX:  but this should let people use sparc smp again, and fixes
XXX:  for the real problem can be tested by seeing if any of the
XXX:  savefp IPI null counter becomes non-zero.

Revision 1.184 / (download) - annotate - [select for diffs], Mon Dec 20 00:25:44 2010 UTC (2 years, 6 months ago) by matt
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231
Changes since 1.183: +5 -5 lines
Diff to previous 1.183 (colored)

Move counting of faults, traps, intrs, soft[intr]s, syscalls, and nswtch
from uvmexp to per-cpu cpu_data and move them to 64bits.  Remove unneeded
includes of <uvm/uvm_extern.h> and/or <uvm/uvm.h>.

Revision 1.183 / (download) - annotate - [select for diffs], Fri Apr 23 19:18:10 2010 UTC (3 years, 1 month ago) by rmind
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1
Changes since 1.182: +8 -13 lines
Diff to previous 1.182 (colored)

Remove lwp_uc_pool, replace it with kmem(9), plus add some consistency.
As discussed, a while ago, with ad@.

Revision 1.182 / (download) - annotate - [select for diffs], Sat Mar 20 23:31:30 2010 UTC (3 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.181: +40 -22 lines
Diff to previous 1.181 (colored)

fix copy{in,out}{,str}() to return the error returned by uvm_fault().
fixes PR 41813.

Revision 1.181 / (download) - annotate - [select for diffs], Fri Jan 29 05:17:36 2010 UTC (3 years, 4 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, uebayasi-xip-base
Branch point for: uebayasi-xip, rmind-uvmplock
Changes since 1.180: +2 -4 lines
Diff to previous 1.180 (colored)

don't set ksi_errno here.  no other MD code does, and one
of the pthread tests demands it.

Revision 1.180 / (download) - annotate - [select for diffs], Sun Jan 10 03:36:30 2010 UTC (3 years, 5 months ago) by mrg
Branch: MAIN
Changes since 1.179: +12 -9 lines
Diff to previous 1.179 (colored)

put the cpu_number() into some messages.

Revision 1.179 / (download) - annotate - [select for diffs], Sat Nov 21 04:16:52 2009 UTC (3 years, 6 months ago) by rmind
Branch: MAIN
CVS Tags: matt-premerge-20091211
Changes since 1.178: +17 -12 lines
Diff to previous 1.178 (colored)

Use lwp_getpcb() on sparc{64} and sun2/3 MD code, clean from struct user usage.

Revision 1.178 / (download) - annotate - [select for diffs], Wed Dec 17 19:16:56 2008 UTC (4 years, 6 months ago) by cegger
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, mjf-devfs2-base, jymxensuspend-base, jym-xensuspend
Changes since 1.177: +5 -5 lines
Diff to previous 1.177 (colored)

make this compile

Revision 1.177 / (download) - annotate - [select for diffs], Tue Dec 16 22:35:26 2008 UTC (4 years, 6 months ago) by christos
Branch: MAIN
Changes since 1.176: +14 -14 lines
Diff to previous 1.176 (colored)

replace bitmask_snprintf(9) with snprintb(3)

Revision 1.176 / (download) - annotate - [select for diffs], Wed Oct 15 06:51:18 2008 UTC (4 years, 8 months ago) by wrstuden
Branch: MAIN
CVS Tags: netbsd-5-base, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, netbsd-5
Changes since 1.175: +41 -4 lines
Diff to previous 1.175 (colored)

Merge wrstuden-revivesa into HEAD.

Revision 1.175 / (download) - annotate - [select for diffs], Thu Apr 24 18:39:21 2008 UTC (5 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base2, yamt-nfs-mp-base, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, hpcarm-cleanup-nbase
Branch point for: yamt-nfs-mp, wrstuden-revivesa, haad-dm
Changes since 1.174: +7 -7 lines
Diff to previous 1.174 (colored)

Merge proc::p_mutex and proc::p_smutex into a single adaptive mutex, since
we no longer need to guard against access from hardware interrupt handlers.

Additionally, if cloning a process with CLONE_SIGHAND, arrange to have the
child process share the parent's lock so that signal state may be kept in
sync. Partially addresses PR kern/37437.

Revision 1.174 / (download) - annotate - [select for diffs], Sat Jan 5 22:50:12 2008 UTC (5 years, 5 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, bouyer-xeni386-nbase, bouyer-xeni386-base, ad-socklock-base1
Branch point for: yamt-pf42, mjf-devfs2
Changes since 1.173: +3 -2 lines
Diff to previous 1.173 (colored)

Add missing include

Revision 1.173 / (download) - annotate - [select for diffs], Wed Jan 2 11:48:29 2008 UTC (5 years, 5 months ago) by ad
Branch: MAIN
Changes since 1.172: +2 -33 lines
Diff to previous 1.172 (colored)

Merge vmlocking2 to head.

Revision 1.172 / (download) - annotate - [select for diffs], Sun Mar 4 06:00:47 2007 UTC (6 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, yamt-idlelwp-base8, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, vmlocking-base, vmlocking, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, reinoud-bufcleanup, ppcoea-renovation-base, ppcoea-renovation, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, mjf-ufs-trans, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, jmcneill-pm-base, jmcneill-pm, jmcneill-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: vmlocking2, mjf-devfs, matt-armv6, bouyer-xeni386
Changes since 1.171: +6 -6 lines
Diff to previous 1.171 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.171 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:12 2007 UTC (6 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge, ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.170: +44 -59 lines
Diff to previous 1.170 (colored)

Merge newlock2 to head.

Revision 1.170 / (download) - annotate - [select for diffs], Sun Jul 23 22:06:07 2006 UTC (6 years, 10 months ago) by ad
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-splraiseipl, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, rpaulo-netinet-merge-pcb-base, newlock2-nbase, newlock2-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: newlock2
Changes since 1.169: +6 -6 lines
Diff to previous 1.169 (colored)

Use the LWP cached credentials where sane.

Revision 1.169 / (download) - annotate - [select for diffs], Wed Jul 19 21:11:46 2006 UTC (6 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.168: +5 -2 lines
Diff to previous 1.168 (colored)

- Hold a reference to the process credentials in each struct lwp.
- Update the reference on syscall and user trap if p_cred has changed.
- Collect accounting flags in the LWP, and collate on LWP exit.

Revision 1.168 / (download) - annotate - [select for diffs], Thu Jun 29 15:05:07 2006 UTC (6 years, 11 months ago) by martin
Branch: MAIN
Changes since 1.167: +36 -2 lines
Diff to previous 1.167 (colored)

The arguments to syscalls (struct args) need 64 bit alignment for some
syscalls (like mmap), and the same is true for return values (lseek).
Make both structs a union to force alignment. Thanks to uwe for helping
analyze this!
While there move the non syscall-related functions out of this file
(back to trap.c).

This makes kernels compiled with gcc4 and -Os work.

Revision 1.167 / (download) - annotate - [select for diffs], Mon May 15 12:35:15 2006 UTC (7 years, 1 month ago) by yamt
Branch: MAIN
CVS Tags: yamt-pdpolicy-base6, yamt-pdpolicy-base5, simonb-timecounters-base, gdamore-uart-base, chap-midi-nbase, chap-midi-base, chap-midi
Branch point for: gdamore-uart
Changes since 1.166: +1 -0 lines
Diff to previous 1.166 (colored)

include kauth.h for kauth_cred_geteuid.

Revision 1.166 / (download) - annotate - [select for diffs], Sun May 14 21:56:33 2006 UTC (7 years, 1 month ago) by elad
Branch: MAIN
Changes since 1.165: +6 -6 lines
Diff to previous 1.165 (colored)

integrate kauth.

Revision 1.165 / (download) - annotate - [select for diffs], Wed Mar 15 18:12:03 2006 UTC (7 years, 3 months ago) by drochner
Branch: MAIN
CVS Tags: yamt-pdpolicy-base4, yamt-pdpolicy-base3, peter-altq-base, elad-kernelauth-base
Branch point for: peter-altq
Changes since 1.164: +7 -7 lines
Diff to previous 1.164 (colored)

adapt to uvm_fault() interface cleanup: kill the useless 3rd argument

Revision 1.164 / (download) - annotate - [select for diffs], Tue Mar 7 03:32:05 2006 UTC (7 years, 3 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-pdpolicy-base2
Branch point for: elad-kernelauth
Changes since 1.163: +2 -10 lines
Diff to previous 1.163 (colored)

Clean up fallout proc_is_traced_p() change:
- proc_is_traced_p() -> trace_is_enabled(), to match trace_enter() and
  trace_exit().
- trace_is_enabled() becomes a real function.
- Remove unnecessary include files from various files that used to care
  about KTRACE and SYSTRACE, but do no more.

Revision 1.163 / (download) - annotate - [select for diffs], Mon Nov 14 03:30:49 2005 UTC (7 years, 7 months ago) by uwe
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-pdpolicy-base, ktrace-lwp-base
Branch point for: yamt-readahead, yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.162: +11 -24 lines
Diff to previous 1.162 (colored)

ANSIify.  Same binary code is produced for GENERIC.MP + KGDB + DDB.

Revision 1.162 / (download) - annotate - [select for diffs], Thu Oct 27 00:04:55 2005 UTC (7 years, 7 months ago) by uwe
Branch: MAIN
CVS Tags: yamt-vop-base3
Changes since 1.161: +8 -6 lines
Diff to previous 1.161 (colored)

DIAGNOSTIC code should not whine about software traps 0x90..0x9f that will
never be specified and thus are free for ABI conforming programs to use.

Revision 1.161 / (download) - annotate - [select for diffs], Wed Oct 26 23:41:56 2005 UTC (7 years, 7 months ago) by uwe
Branch: MAIN
Changes since 1.160: +3 -3 lines
Diff to previous 1.160 (colored)

Report T_RANGECHECK as ILL_ILLOPN.

Revision 1.160 / (download) - annotate - [select for diffs], Wed Oct 26 23:21:47 2005 UTC (7 years, 7 months ago) by uwe
Branch: MAIN
Changes since 1.159: +4 -4 lines
Diff to previous 1.159 (colored)

Move md_flags back to mdproc.  MDP_FIXALIGN, the only flag we have, is
per-process, not per-lwp.  We don't have per-lwp flags currently.

Revision 1.159 / (download) - annotate - [select for diffs], Sun Jul 10 17:02:19 2005 UTC (7 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: yamt-vop-base2, yamt-vop-base, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-vop
Changes since 1.158: +3 -301 lines
Diff to previous 1.158 (colored)

- add syscall_{plain,fancy}
- make it use mi_userret

Revision 1.158 / (download) - annotate - [select for diffs], Fri Jul 1 18:01:45 2005 UTC (7 years, 11 months ago) by christos
Branch: MAIN
Branch point for: yamt-lazymbuf
Changes since 1.157: +4 -4 lines
Diff to previous 1.157 (colored)

PR/29607: Christian Biere systrace doesn't handle interrupted syscalls properly
Instead of jumping to the default "bad" case, jump to the error handling
switch, so that we can deal with ERESTART/EJUSTRETURN properly.

Revision 1.157 / (download) - annotate - [select for diffs], Fri Jun 17 09:13:56 2005 UTC (8 years ago) by hannken
Branch: MAIN
Changes since 1.156: +3 -3 lines
Diff to previous 1.156 (colored)

Avoid shadow warnings, const and __UNVOLATILE().
Kernel sparc/GENERIC.MP builds again.

Revision 1.156 / (download) - annotate - [select for diffs], Thu Feb 3 16:15:06 2005 UTC (8 years, 4 months ago) by chs
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, yamt-km-base2, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, matt-timespec, kent-audio2-base
Changes since 1.155: +13 -2 lines
Diff to previous 1.155 (colored)

sun4c hardware reports faults by the atomic load/store instructions as
read faults even if the problem was that the memory was read-only.
detect this case and relabel the fault as both read and write.
details cribbed from linux and openbsd.
part of PR 25633, PR 25896.

Revision 1.155 / (download) - annotate - [select for diffs], Sat Aug 28 17:53:02 2004 UTC (8 years, 9 months ago) by jdolecek
Branch: MAIN
CVS Tags: yamt-km-base, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.154: +7 -12 lines
Diff to previous 1.154 (colored)

use uvm_grow() to update stack segment size on stack page fault instead
of MD code

Revision 1.154 / (download) - annotate - [select for diffs], Tue Apr 13 14:04:29 2004 UTC (9 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.153: +14 -3 lines
Diff to previous 1.153 (colored)

Handle `unimplemented flush' traps by flushing the entire I-cache (if
there is one).

Revision 1.153 / (download) - annotate - [select for diffs], Sun Mar 14 01:08:48 2004 UTC (9 years, 3 months ago) by cl
Branch: MAIN
CVS Tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Changes since 1.152: +4 -6 lines
Diff to previous 1.152 (colored)

add kernel part of concurrency support for SA on MP systems
- move per VP data into struct sadata_vp referenced from l->l_savp
  * VP id
  * lock on VP data
  * LWP on VP
  * recently blocked LWP on VP
  * queue of LWPs woken which ran on this VP before sleep
  * faultaddr
  * LWP cache for upcalls
  * upcall queue
- add current concurrency and requested concurrency variables
- make process exit run LWP on all VPs
- make signal delivery consider all VPs
- make timer events consider all VPs
- add sa_newsavp to allocate new sadata_vp structure
- add sa_increaseconcurrency to prepare new VP
- make sys_sa_setconcurrency request new VP or wakeup idle VP
- make sa_yield lower current concurrency
- set sa_cpu = VP id in upcalls
- maintain cached LWPs per VP

Revision 1.152 / (download) - annotate - [select for diffs], Fri Feb 13 11:36:18 2004 UTC (9 years, 4 months ago) by wiz
Branch: MAIN
Changes since 1.151: +3 -3 lines
Diff to previous 1.151 (colored)

Uppercase CPU, plural is CPUs.

Revision 1.151 / (download) - annotate - [select for diffs], Fri Jan 2 18:52:17 2004 UTC (9 years, 5 months ago) by cl
Branch: MAIN
Changes since 1.150: +3 -3 lines
Diff to previous 1.150 (colored)

kernel part of no-syscall upcall stack return:  libpthread registers
an offset between ss_sp and struct sa_stackinfo_t (located in struct
__pthread_st) when calling sa_register.  The kernel increments the
sast_gen counter in struct sastack when an upcall stack is used.
libpthread increments the sasi_stackgen counter in struct
sa_stackinfo_t when an upcall stack is freed.  The kernel compares the
two counters to decide if a stack is free or in use.

- add struct sa_stackinfo_t with sasi_stackgen to count stack use in
  userland
- add sast_gen to struct sastack to count stack use in kernel
- add SA_FLAG_STACKINFO to enable the stackinfo_offset argument in the
  sa_register syscall
- add sa_stackinfo_offset to struct sadata for offset between ss_sp
  and struct sa_stackinfo_t
- add ssize_t stackinfo_offset argument to sa_register, initialize
  struct sadata's sa_stackinfo_offset from it if SA_FLAG_STACKINFO is
  set
- add sa_getstack, sa_getstack0, sa_stackused and sa_setstackfree
  functions to find/use/free upcall stacks and use these where
  appropriate
- don't record stack for upcall in sa_upcall0
- pass sau to sa_switchcall instead of l2 (l2 = curlwp in sa_switchcall)
- add sa_vp_blocker to struct sadata to pass recently blocked lwp to
  sa_switchcall
- delay finding a stack for blocked upcalls to sa_switchcall
- add sa_stacknext to struct sadata pointing to next most likely free
  upcall stack; also g/c sa_stackslist in struct sadata and sast_list
  in struct sastack
- add L_SA_WOKEN flag: LWP is on sa_woken queue
- add L_SA_RECYCLE flag: LWP should be recycled in sa_setwoken
- replace l_upcallstack with L_SA_WOKEN/L_SA_RECYCLE/L_SA_BLOCKING
  flags
- g/c now unused sast_blocker in struct sastack
- make sa_switchcall, sa_upcall0 and sa_upcall_getstate static in
  kern_sa.c
- call sa_upcall_userret only once in userret
- split sa_makeupcalls out of sa_upcall_userret and use to process
  the sa_upcalls queue
- on process exit: mark LWPs sleeping in saunblock interruptible; also
  there are no LWPs sleeping on l->l_upcallstack anymore; also clear
  sa_wokenq_head to prevent unblocked upcalls

additional changes:
- cleanup timerupcall sa_vp == curlwp check
- add check in sa_yield if we didn't block on our way here and we
  wouldn't any longer be the LWP on the VP
- invalidate sa_vp_ofaultaddr after resolving pagefault

Revision 1.150 / (download) - annotate - [select for diffs], Tue Nov 4 14:24:25 2003 UTC (9 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.149: +8 -7 lines
Diff to previous 1.149 (colored)

* Set ksi_code to SI_NOINFO where we used to return zero.
* Fill in ksi_errno if we have an error code to report.

Revision 1.149 / (download) - annotate - [select for diffs], Sat Nov 1 01:38:46 2003 UTC (9 years, 7 months ago) by cl
Branch: MAIN
Changes since 1.148: +6 -2 lines
Diff to previous 1.148 (colored)

Avoid sneaking past signal delivery in sa_upcall_userret():
generate unblocked upcalls in sa_unblock_userret(), before signal
delivery/p_userret handling in userret().

Also defer getting state for preempted upcalls because on some ports
preemption can happen between sa_unblock_userret() and sa_upcall_userret().

Revision 1.148 / (download) - annotate - [select for diffs], Fri Oct 31 03:28:13 2003 UTC (9 years, 7 months ago) by simonb
Branch: MAIN
Changes since 1.147: +3 -3 lines
Diff to previous 1.147 (colored)

Don't pass the (unused) return value args to the
trace_enter()/systrace_enter() functions.

Revision 1.147 / (download) - annotate - [select for diffs], Wed Oct 15 07:49:41 2003 UTC (9 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.146: +11 -4 lines
Diff to previous 1.146 (colored)

sun4m_access_fault: Treat text/data error traps as if they were text/data
exception traps, except that they're logged on the console.

Revision 1.146 / (download) - annotate - [select for diffs], Sun Oct 12 19:48:52 2003 UTC (9 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.145: +19 -12 lines
Diff to previous 1.145 (colored)

Simplify fpu_cleanup() by having it return a code to indicate that a SIGFPE
is to be posted; let trap() deal with constructing the siginfo structure.

Revision 1.145 / (download) - annotate - [select for diffs], Sun Oct 12 14:34:31 2003 UTC (9 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.144: +4 -4 lines
Diff to previous 1.144 (colored)

mem_access_fault_*: call KSI_INIT_TRAP() before filling in the siginfo fields.

Revision 1.144 / (download) - annotate - [select for diffs], Wed Oct 8 00:28:42 2003 UTC (9 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.143: +16 -2 lines
Diff to previous 1.143 (colored)

* Shuffle some data structures so, and add a flags word to ksiginfo_t.
  Right now the only flag is used to indicate if a ksiginfo_t is a
  result of a trap.  Add a predicate macro to test for this flag.
* Add initialization macros for ksiginfo_t's.
* Add accssor macro for ksi_trap.  Expands to 0 if the ksiginfo_t was
  not the result of a trap.  This matches the sigcontext trapcode semantics.
* In kpsendsig(), use KSI_TRAP_P() to select the lwp that gets the signal.
  Inspired by Matthias Drochner's fix to kpsendsig(), but correctly handles
  the case of non-trap-generated signals that have a > 0 si_code.

This patch fixes a signal delivery problem with threaded programs noted by
Matthias Drochner on tech-kern.

As discussed on tech-kern.  Reviewed and OK's by Christos.

Revision 1.143 / (download) - annotate - [select for diffs], Sun Oct 5 21:13:23 2003 UTC (9 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.142: +65 -25 lines
Diff to previous 1.142 (colored)

sparc kernel support for SA_SIGINFO.

Revision 1.142 / (download) - annotate - [select for diffs], Tue Sep 16 19:02:51 2003 UTC (9 years, 9 months ago) by cl
Branch: MAIN
Changes since 1.141: +3 -3 lines
Diff to previous 1.141 (colored)

fix copy-paste oversight in MD part of SA/pthread pagefault handling

Revision 1.141 / (download) - annotate - [select for diffs], Tue Sep 16 13:59:59 2003 UTC (9 years, 9 months ago) by cl
Branch: MAIN
Changes since 1.140: +19 -4 lines
Diff to previous 1.140 (colored)

add MD part of SA/pthread pagefault handling on sparc

Revision 1.140 / (download) - annotate - [select for diffs], Sun Sep 7 20:41:05 2003 UTC (9 years, 9 months ago) by uwe
Branch: MAIN
Changes since 1.139: +6 -2 lines
Diff to previous 1.139 (colored)

DOH, sparc was not doing p_userret processing in userret()!
Adding it helps SA a great deal.   E.g. ogg123 actually works now.

Revision 1.139 / (download) - annotate - [select for diffs], Sun Aug 24 17:52:37 2003 UTC (9 years, 9 months ago) by chs
Branch: MAIN
Changes since 1.138: +13 -3 lines
Diff to previous 1.138 (colored)

add support for non-executable mappings (where the hardware allows this)
and make the stack and heap non-executable by default.  the changes
fall into two basic catagories:

 - pmap and trap-handler changes.  these are all MD:
   = alpha: we already track per-page execute permission with the (software)
	PG_EXEC bit, so just have the trap handler pay attention to it.
   = i386: use a new GDT segment for %cs for processes that have no
	executable mappings above a certain threshold (currently the
	bottom of the stack).  track per-page execute permission with
	the last unused PTE bit.
   = powerpc/ibm4xx: just use the hardware exec bit.
   = powerpc/oea: we already track per-page exec bits, but the hardware only
	implements non-exec mappings at the segment level.  so track the
	number of executable mappings in each segment and turn on the no-exec
	segment bit iff the count is 0.  adjust the trap handler to deal.
   = sparc (sun4m): fix our use of the hardware protection bits.
	fix the trap handler to recognize text faults.
   = sparc64: split the existing unified TSB into data and instruction TSBs,
	and only load TTEs into the appropriate TSB(s) for the permissions.
	fix the trap handler to check for execute permission.
   = not yet implemented: amd64, hppa, sh5

 - changes in all the emulations that put a signal trampoline on the stack.
   instead, we now put the trampoline into a uvm_aobj and map that into
   the process separately.

originally from openbsd, adapted for netbsd by me.

Revision 1.138 / (download) - annotate - [select for diffs], Tue Aug 12 15:34:32 2003 UTC (9 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.137: +10 -4 lines
Diff to previous 1.137 (colored)

sun4/sun4 mem_fault(): on kernel faults we now need to try to page in a
a `pmeg' too. See also sparc/pmap.c, rev 1.265.

Revision 1.137 / (download) - annotate - [select for diffs], Tue Jul 15 00:05:10 2003 UTC (9 years, 11 months ago) by lukem
Branch: MAIN
Changes since 1.136: +4 -1 lines
Diff to previous 1.136 (colored)

__KERNEL_RCSID()

Revision 1.136 / (download) - annotate - [select for diffs], Sun Jun 29 22:28:58 2003 UTC (9 years, 11 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.135: +1 -1 lines
Diff to previous 1.135 (colored)

Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.135 / (download) - annotate - [select for diffs], Sat Jun 28 14:21:07 2003 UTC (9 years, 11 months ago) by darrenr
Branch: MAIN
Changes since 1.134: +2 -2 lines
Diff to previous 1.134 (colored)

Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.134 / (download) - annotate - [select for diffs], Mon Jun 23 11:01:42 2003 UTC (9 years, 11 months ago) by martin
Branch: MAIN
Changes since 1.133: +2 -1 lines
Diff to previous 1.133 (colored)

Make sure to include opt_foo.h if a defflag option FOO is used.

Revision 1.133 / (download) - annotate - [select for diffs], Wed May 7 08:25:30 2003 UTC (10 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.132: +25 -40 lines
Diff to previous 1.132 (colored)

GC old FPU code.

Revision 1.132 / (download) - annotate - [select for diffs], Tue Apr 8 21:56:31 2003 UTC (10 years, 2 months ago) by uwe
Branch: MAIN
Changes since 1.131: +20 -10 lines
Diff to previous 1.131 (colored)

Add names for v8 traps (cf page 76, table 7-1).
Fix coprocessor disabled/exception traps that were placed incorrectly:
cp_disabled == 0x24 (0t36) was placed at 0x36, ditto for cp_exception.

Revision 1.131 / (download) - annotate - [select for diffs], Sun Jan 26 13:20:12 2003 UTC (10 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.130: +3 -1 lines
Diff to previous 1.130 (colored)

Release the kernel lock in upcallret() and startlwp().

Revision 1.130 / (download) - annotate - [select for diffs], Sat Jan 18 06:45:07 2003 UTC (10 years, 5 months ago) by thorpej
Branch: MAIN
Changes since 1.129: +208 -126 lines
Diff to previous 1.129 (colored)

Merge the nathanw_sa branch.

Revision 1.129 / (download) - annotate - [select for diffs], Mon Jan 13 20:00:34 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base
Changes since 1.128: +5 -4 lines
Diff to previous 1.128 (colored)

Broadcast I-cache flush in the `Unimplemented Flush' trap handler.

Revision 1.128 / (download) - annotate - [select for diffs], Sun Jan 12 16:29:00 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.127: +5 -10 lines
Diff to previous 1.127 (colored)

fpulock: encapsulate required IPL raise in the FPU LOCK/UNLOCK macros.

Revision 1.127 / (download) - annotate - [select for diffs], Fri Jan 10 16:34:15 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.126: +4 -4 lines
Diff to previous 1.126 (colored)

Replace `want_resched' and `want_ast' globals by per-CPU variables.

Revision 1.126 / (download) - annotate - [select for diffs], Thu Jan 9 04:58:58 2003 UTC (10 years, 5 months ago) by mrg
Branch: MAIN
Changes since 1.125: +8 -2 lines
Diff to previous 1.125 (colored)

call splclock() around the FPU_LOCK().

XXX: pk suggests we can make the this a sleeping lock.

Revision 1.125 / (download) - annotate - [select for diffs], Tue Jan 7 16:20:14 2003 UTC (10 years, 5 months ago) by mrg
Branch: MAIN
Changes since 1.124: +2 -2 lines
Diff to previous 1.124 (colored)

- add a new message tag for level15 software NMI, and switch ddb to use this
rather than the level13 software intr xpmsg area.  now DDB IPI's don't lock
the xpmsg_lock and we avoid recursion and more.
- don't actually use cpuinfo.msg.lock yet, xpmsg_lock suffices.
- reread the pending register on mbus hypersparc cpus to avoid bugs in the
h/w that cause IPI's to be missed.

Revision 1.124 / (download) - annotate - [select for diffs], Mon Jan 6 18:32:31 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.123: +8 -34 lines
Diff to previous 1.123 (colored)

Protect FPU context switching with its own lock.

Revision 1.123 / (download) - annotate - [select for diffs], Mon Jan 6 14:16:10 2003 UTC (10 years, 5 months ago) by mrg
Branch: MAIN
Changes since 1.122: +4 -3 lines
Diff to previous 1.122 (colored)

- md_fpumid = -1 => md_fpu = NULL, in some #ifdef FPU_DEBUG code
- only call KERNEL_PROC_UNLOCK() if we called KERNEL_PROC_LOCK() originally.

Revision 1.122 / (download) - annotate - [select for diffs], Sun Jan 5 19:26:17 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.121: +2 -1 lines
Diff to previous 1.121 (colored)

trap(T_FPE): reset the `p_md.md_fpu' when preempting the FPU.

Revision 1.121 / (download) - annotate - [select for diffs], Fri Jan 3 15:44:55 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.120: +3 -4 lines
Diff to previous 1.120 (colored)

Define a few XCALL? shorthand macros to avoid clutter.

Revision 1.120 / (download) - annotate - [select for diffs], Fri Jan 3 15:12:03 2003 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.119: +16 -18 lines
Diff to previous 1.119 (colored)

Finish FPU context switching on SMP systems.

Revision 1.119 / (download) - annotate - [select for diffs], Tue Dec 31 13:17:23 2002 UTC (10 years, 5 months ago) by pk
Branch: MAIN
CVS Tags: fvdl_fs64_base
Changes since 1.118: +15 -11 lines
Diff to previous 1.118 (colored)

rwindow debug code: display the current cpu number.

Revision 1.118 / (download) - annotate - [select for diffs], Thu Dec 26 12:14:31 2002 UTC (10 years, 5 months ago) by martin
Branch: MAIN
Changes since 1.117: +3 -1 lines
Diff to previous 1.117 (colored)

Conditionalize T_DBPAUSE trap handling on #ifdef MULTIPROCESSOR to make
single CPU kernels compile again.

Revision 1.117 / (download) - annotate - [select for diffs], Mon Dec 23 00:55:17 2002 UTC (10 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.116: +10 -1 lines
Diff to previous 1.116 (colored)

xcallintr() receive a `clockframe *' argument, not a `trapframe *'.
Setup a DDB context for paused CPUs by defining a soft trap (T_DBPAUSE)
which uses the generic trap handler code to get the trapframe constructed
and then calls on a debugger-defined `suspend' routine.

Revision 1.116 / (download) - annotate - [select for diffs], Sat Dec 21 16:23:59 2002 UTC (10 years, 6 months ago) by manu
Branch: MAIN
Changes since 1.115: +2 -2 lines
Diff to previous 1.115 (colored)

Pass the system call table to trace_enter() and ktrsys() so that it is
possible to use alternate system call tables. This is usefull for
displaying correctly the arguments in Mach binaries traces.

If NULL is given, then the regular systam call table for the process is used.

Revision 1.115 / (download) - annotate - [select for diffs], Tue Dec 17 10:04:19 2002 UTC (10 years, 6 months ago) by pk
Branch: MAIN
CVS Tags: gmcgarry_ucred_base, gmcgarry_ctxsw_base, gmcgarry_ctxsw
Branch point for: gmcgarry_ucred
Changes since 1.114: +17 -1 lines
Diff to previous 1.114 (colored)

Deal with an `unimplemented flush' trap from kernel mode.

Revision 1.114 / (download) - annotate - [select for diffs], Sat Dec 14 14:52:24 2002 UTC (10 years, 6 months ago) by christos
Branch: MAIN
Changes since 1.113: +4 -2 lines
Diff to previous 1.113 (colored)

release the kernel lock if trace_enter fails.
XXX[1]: We need to fix all platforms that do this.
XXX[2]: x86 does not check for MPSAFE syscalls before grabbing the lock.

Revision 1.113 / (download) - annotate - [select for diffs], Fri Nov 15 20:06:04 2002 UTC (10 years, 7 months ago) by manu
Branch: MAIN
Changes since 1.112: +2 -2 lines
Diff to previous 1.112 (colored)

Add a realcode argument to trace_enter and ktrsyscall. realcode is the
original system call number, which can be negative for a Mach trap.
We cannot just replace code by realcode, because ktrsyscall uses it as
an index in the system call table, thus crashing the kernel when the
value is negative.

Revision 1.112 / (download) - annotate - [select for diffs], Fri Sep 27 15:36:47 2002 UTC (10 years, 8 months ago) by provos
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge
Changes since 1.111: +2 -2 lines
Diff to previous 1.111 (colored)

remove trailing \n in panic().  approved perry.

Revision 1.111 / (download) - annotate - [select for diffs], Thu Jun 20 00:55:39 2002 UTC (11 years ago) by christos
Branch: MAIN
CVS Tags: gehenna-devsw-base
Changes since 1.110: +1 -4 lines
Diff to previous 1.110 (colored)

remove syscall debugging code; thanks eduardo for fixing the code! looks
much nicer now.

Revision 1.110 / (download) - annotate - [select for diffs], Wed Jun 19 10:13:43 2002 UTC (11 years ago) by agc
Branch: MAIN
Changes since 1.109: +2 -2 lines
Diff to previous 1.109 (colored)

Fix a typo introduced in the last commit.

Revision 1.109 / (download) - annotate - [select for diffs], Mon Jun 17 16:33:17 2002 UTC (11 years ago) by christos
Branch: MAIN
Changes since 1.108: +11 -22 lines
Diff to previous 1.108 (colored)

MD systrace gluons.

Revision 1.108 / (download) - annotate - [select for diffs], Tue Dec 4 00:05:08 2001 UTC (11 years, 6 months ago) by darrenr
Branch: MAIN
CVS Tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, ifpoll-base, ifpoll, eeh-devprop-base, eeh-devprop
Branch point for: gehenna-devsw
Changes since 1.107: +2 -1 lines
Diff to previous 1.107 (colored)

defopt "options SUN4*", put #define for each of SUN4, SUN4C, SUN4M and SUN4U
into opt_arch_sparc.h and include this wherever they are used.

Revision 1.107 / (download) - annotate - [select for diffs], Wed Nov 28 05:45:28 2001 UTC (11 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.106: +2 -2 lines
Diff to previous 1.106 (colored)

use #ifdef DDB (for consistency with the rest of the kernel)

Revision 1.106 / (download) - annotate - [select for diffs], Sat Jul 7 20:12:54 2001 UTC (11 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: nathanw_sa, kqueue
Changes since 1.105: +3 -1 lines
Diff to previous 1.105 (colored)

lock xpmsg_lock around the safefpu ipi.

Revision 1.105 / (download) - annotate - [select for diffs], Fri Jun 8 09:40:32 2001 UTC (12 years ago) by mrg
Branch: MAIN
Changes since 1.104: +2 -2 lines
Diff to previous 1.104 (colored)

use raise_ipi_wait_and_unlock().

Revision 1.104 / (download) - annotate - [select for diffs], Mon Mar 26 21:58:34 2001 UTC (12 years, 2 months ago) by pk
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Changes since 1.103: +3 -1 lines
Diff to previous 1.103 (colored)

Missing KERNEL_PROC_LOCK() in the WIN_OF trap code.

Revision 1.103 / (download) - annotate - [select for diffs], Wed Mar 21 09:01:16 2001 UTC (12 years, 3 months ago) by mrg
Branch: MAIN
Changes since 1.102: +11 -5 lines
Diff to previous 1.102 (colored)

only lock the kernel around sy_call if !SYCALL_MPSAFE

Revision 1.102 / (download) - annotate - [select for diffs], Sun Mar 18 17:11:22 2001 UTC (12 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.101: +24 -20 lines
Diff to previous 1.101 (colored)

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.

Revision 1.101 / (download) - annotate - [select for diffs], Thu Mar 15 06:10:49 2001 UTC (12 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.100: +18 -19 lines
Diff to previous 1.100 (colored)

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>

Revision 1.100 / (download) - annotate - [select for diffs], Thu Mar 15 03:01:40 2001 UTC (12 years, 3 months ago) by mrg
Branch: MAIN
Changes since 1.99: +24 -13 lines
Diff to previous 1.99 (colored)

sprinkle KERNEL_LOCK() and KERNEL_PROC_LOCK() where they're missing.  add
SYSCALL_DEBUG support to trap.c.

Revision 1.99 / (download) - annotate - [select for diffs], Mon Mar 5 07:16:19 2001 UTC (12 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.98: +2 -2 lines
Diff to previous 1.98 (colored)

Fix syntax error in previous change.

Revision 1.98 / (download) - annotate - [select for diffs], Sat Mar 3 19:11:02 2001 UTC (12 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.97: +93 -32 lines
Diff to previous 1.97 (colored)

Sprinkle KERNEL_PROC_LOCK()s at the kernel entry points.

Revision 1.97 / (download) - annotate - [select for diffs], Fri Dec 1 19:50:17 2000 UTC (12 years, 6 months ago) by jdolecek
Branch: MAIN
Changes since 1.96: +2 -11 lines
Diff to previous 1.96 (colored)

check emul flags for EMUL_HAS_SYS___syscall instead of comparing
callp to sysent; the COMPAT_AOUT hack is gone

Revision 1.96 / (download) - annotate - [select for diffs], Mon Nov 27 13:31:18 2000 UTC (12 years, 6 months ago) by pk
Branch: MAIN
Changes since 1.95: +3 -3 lines
Diff to previous 1.95 (colored)

Undo most of rev 1.94 to make a.out emulation work again.

Revision 1.95 / (download) - annotate - [select for diffs], Thu Nov 23 21:58:54 2000 UTC (12 years, 6 months ago) by chs
Branch: MAIN
Changes since 1.94: +2 -2 lines
Diff to previous 1.94 (colored)

fix reversed keywords in previous commit.

Revision 1.94 / (download) - annotate - [select for diffs], Tue Nov 21 00:37:52 2000 UTC (12 years, 7 months ago) by jdolecek
Branch: MAIN
Changes since 1.93: +4 -4 lines
Diff to previous 1.93 (colored)

restructure struct emul and execsw, in preparation to make emulations LKMable:
* move all exec-type specific information from struct emul to execsw[] and
  provide single struct emul per emulation
* elf:
  - kern/exec_elf32.c:probe_funcs[] is gone, execsw[] how has one entry
    per emulation and contains pointer to respective probe function
  - interp is allocated via MALLOC() rather than on stack
  - elf_args structure is allocated via MALLOC() rather than malloc()
* ecoff: the per-emulation hooks moved from alpha and mips specific code
  to OSF1 and Ultrix compat code as appropriate, execsw[] has one entry per
  emulation supporting ecoff with appropriate probe function
* the makecmds/probe functions don't set emulation, pointer to emulation is
  part of appropriate execsw[] entry
* constify couple of structures

Revision 1.93 / (download) - annotate - [select for diffs], Thu Jun 29 07:40:12 2000 UTC (12 years, 11 months ago) by mrg
Branch: MAIN
Changes since 1.92: +1 -3 lines
Diff to previous 1.92 (colored)

remove include of <vm/vm.h> and <machine/pmap.h>. <vm/vm.h> -> <uvm/uvm_extern.h>

Revision 1.92 / (download) - annotate - [select for diffs], Mon Jun 26 14:20:59 2000 UTC (12 years, 11 months ago) by mrg
Branch: MAIN
Changes since 1.91: +3 -2 lines
Diff to previous 1.91 (colored)

remove/move more mach vm header files:

	<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.

Revision 1.91 / (download) - annotate - [select for diffs], Sat May 27 00:40:41 2000 UTC (13 years ago) by sommerfeld
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5, minoura-xpg4dl-base, minoura-xpg4dl
Changes since 1.90: +5 -5 lines
Diff to previous 1.90 (colored)

Reduce use of curproc in several places:

 - Change ktrace interface to pass in the current process, rather than
p->p_tracep, since the various ktr* function need curproc anyway.

 - Add curproc as a parameter to mi_switch() since all callers had it
handy anyway.

 - Add a second proc argument for inferior() since callers all had
curproc handy.

Also, miscellaneous cleanups in ktrace:

 - ktrace now always uses file-based, rather than vnode-based I/O
(simplifies, increases type safety); eliminate KTRFLAG_FD & KTRFAC_FD.
Do non-blocking I/O, and yield a finite number of times when receiving
EWOULDBLOCK before giving up.

 - move code duplicated between sys_fktrace and sys_ktrace into ktrace_common.

 - simplify interface to ktrwrite()

Revision 1.90 / (download) - annotate - [select for diffs], Fri May 26 21:20:19 2000 UTC (13 years ago) by thorpej
Branch: MAIN
Changes since 1.89: +2 -2 lines
Diff to previous 1.89 (colored)

First sweep at scheduler state cleanup.  Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.

Revision 1.89 / (download) - annotate - [select for diffs], Wed May 24 16:48:42 2000 UTC (13 years ago) by thorpej
Branch: MAIN
Changes since 1.88: +3 -12 lines
Diff to previous 1.88 (colored)

Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).

Revision 1.88 / (download) - annotate - [select for diffs], Tue Feb 8 03:16:00 2000 UTC (13 years, 4 months ago) by mycroft
Branch: MAIN
CVS Tags: chs-ubc2-newbase
Changes since 1.87: +58 -1 lines
Diff to previous 1.87 (colored)

Add a bunch of debugging code, #ifdef FPU_DEBUG, which attempts to
trap FPU usage in the kernel.

Revision 1.87 / (download) - annotate - [select for diffs], Sun Dec 5 11:56:35 1999 UTC (13 years, 6 months ago) by ragge
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.86: +3 -3 lines
Diff to previous 1.86 (colored)

clrnd()/clbase() discarding.

Revision 1.86 / (download) - annotate - [select for diffs], Fri Sep 17 20:04:54 1999 UTC (13 years, 9 months ago) by thorpej
Branch: MAIN
CVS Tags: fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999
Branch point for: wrstuden-devbsize, thorpej_scsipi
Changes since 1.85: +1 -3 lines
Diff to previous 1.85 (colored)

Centralize the declaration and clearing of `cold'.

Revision 1.85 / (download) - annotate - [select for diffs], Mon Jun 28 15:51:26 1999 UTC (13 years, 11 months ago) by pk
Branch: MAIN
CVS Tags: chs-ubc2-base
Changes since 1.84: +2 -2 lines
Diff to previous 1.84 (colored)

Ignore (but still generate a console warning) unhandled user-generated traps.

Revision 1.84 / (download) - annotate - [select for diffs], Wed Mar 24 05:51:12 1999 UTC (14 years, 3 months ago) by mrg
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Changes since 1.83: +5 -43 lines
Diff to previous 1.83 (colored)

completely remove Mach VM support.  all that is left is the all the
header files as UVM still uses (most of) these.

Revision 1.83 / (download) - annotate - [select for diffs], Thu Mar 18 04:56:03 1999 UTC (14 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.82: +5 -3 lines
Diff to previous 1.82 (colored)

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.

Revision 1.82 / (download) - annotate - [select for diffs], Thu Mar 18 04:27:54 1999 UTC (14 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.81: +13 -2 lines
Diff to previous 1.81 (colored)

for emul_sunos processes, don't change vmspace->vm_maxsaddr
for faults within a fudge factor of the end of the stack.
the sunos ld.so maps some zero-fill memory there and uses
it while loading shared libs.  ignoring these shenanigans
allows ps to report the correct stack usage for sunos programs.

Revision 1.81 / (download) - annotate - [select for diffs], Tue Feb 23 06:47:05 1999 UTC (14 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.80: +11 -2 lines
Diff to previous 1.80 (colored)

Accept __syscall() in NetBSD a.out emulation.

Revision 1.80 / (download) - annotate - [select for diffs], Sun Jan 24 10:12:22 1999 UTC (14 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.79: +8 -5 lines
Diff to previous 1.79 (colored)

Read & clear fault status register after probing translation.

Revision 1.79 / (download) - annotate - [select for diffs], Wed Jan 20 00:15:07 1999 UTC (14 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.78: +33 -2 lines
Diff to previous 1.78 (colored)

Catch `Unimplemented Flush' traps.

Revision 1.78 / (download) - annotate - [select for diffs], Mon Dec 14 16:18:46 1998 UTC (14 years, 6 months ago) by kleink
Branch: MAIN
Changes since 1.77: +2 -1 lines
Diff to previous 1.77 (colored)

Also need to initialize the queue length of a newly allocated fpstate.

Revision 1.77 / (download) - annotate - [select for diffs], Thu Nov 12 14:00:06 1998 UTC (14 years, 7 months ago) by ws
Branch: MAIN
CVS Tags: kenh-if-detach-base, kenh-if-detach
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored)

Typo

Revision 1.76 / (download) - annotate - [select for diffs], Wed Nov 11 06:43:50 1998 UTC (14 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.75: +4 -3 lines
Diff to previous 1.75 (colored)

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.

Revision 1.75 / (download) - annotate - [select for diffs], Mon Oct 12 14:32:14 1998 UTC (14 years, 8 months ago) by pk
Branch: MAIN
CVS Tags: chs-ubc-base, chs-ubc
Changes since 1.74: +3 -6 lines
Diff to previous 1.74 (colored)

`cpcb' (pointer to current u.area) is now a per-CPU variable.

Revision 1.74 / (download) - annotate - [select for diffs], Wed Sep 30 18:38:57 1998 UTC (14 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.73: +24 -8 lines
Diff to previous 1.73 (colored)

Make the current FPU owner (`fpproc') a per-CPU entity. Unresolved issue
as yet: lazy FPU context switching may require co-operation from other
CPUs.

Revision 1.73 / (download) - annotate - [select for diffs], Sun Sep 20 20:01:15 1998 UTC (14 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.72: +12 -11 lines
Diff to previous 1.72 (colored)

Async arguments are no longer passed to the memory fault handler.

Revision 1.72 / (download) - annotate - [select for diffs], Mon Sep 7 23:04:28 1998 UTC (14 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.71: +2 -2 lines
Diff to previous 1.71 (colored)

Adapt to cpuvar.h changes.

Revision 1.71 / (download) - annotate - [select for diffs], Sun Sep 6 21:14:56 1998 UTC (14 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.70: +2 -2 lines
Diff to previous 1.70 (colored)

Sanitize memerr*() a bit.

Revision 1.70 / (download) - annotate - [select for diffs], Fri Aug 21 14:13:56 1998 UTC (14 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.69: +40 -40 lines
Diff to previous 1.69 (colored)

Convert to [pv]addr_t & [pv]size_t.

Revision 1.69 / (download) - annotate - [select for diffs], Sat Jul 4 22:18:41 1998 UTC (14 years, 11 months ago) by jonathan
Branch: MAIN
CVS Tags: eeh-paddr_t-base, eeh-paddr_t
Changes since 1.68: +2 -1 lines
Diff to previous 1.68 (colored)

defopt DDB.

Revision 1.68 / (download) - annotate - [select for diffs], Fri Jun 26 00:08:42 1998 UTC (14 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.67: +2 -1 lines
Diff to previous 1.67 (colored)

defopt COMPAT_SVR4

Revision 1.67 / (download) - annotate - [select for diffs], Thu Jun 25 21:19:19 1998 UTC (14 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.66: +2 -1 lines
Diff to previous 1.66 (colored)

defopt KTRACE

Revision 1.66 / (download) - annotate - [select for diffs], Fri Jun 12 10:02:44 1998 UTC (15 years ago) by fair
Branch: MAIN
Changes since 1.65: +4 -1 lines
Diff to previous 1.65 (colored)

apply patch from PR#4626 to allow DDB to deal with kernel traps.

Revision 1.65 / (download) - annotate - [select for diffs], Wed May 6 14:28:29 1998 UTC (15 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.64: +3 -4 lines
Diff to previous 1.64 (colored)

Do not request more privileges from vm_fault() than required, i.e. don't
request read access in addition to write access on a write fault.

Revision 1.64 / (download) - annotate - [select for diffs], Tue Feb 10 14:11:46 1998 UTC (15 years, 4 months ago) by mrg
Branch: MAIN
Changes since 1.63: +3 -1 lines
Diff to previous 1.63 (colored)

- add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.

Revision 1.63 / (download) - annotate - [select for diffs], Sat Feb 7 17:26:34 1998 UTC (15 years, 4 months ago) by chs
Branch: MAIN
Changes since 1.62: +2 -1 lines
Diff to previous 1.62 (colored)

fix initialized variable.

Revision 1.62 / (download) - annotate - [select for diffs], Thu Feb 5 07:58:02 1998 UTC (15 years, 4 months ago) by mrg
Branch: MAIN
Changes since 1.61: +69 -14 lines
Diff to previous 1.61 (colored)

initial import of the new virtual memory system, UVM, into -current.

UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the sparc portion.

this will be KNF'd shortly.  :-)

Revision 1.61 / (download) - annotate - [select for diffs], Wed Jan 28 02:27:36 1998 UTC (15 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.60: +1 -3 lines
Diff to previous 1.60 (colored)

Use offsetof() from libkern.h

Revision 1.60 / (download) - annotate - [select for diffs], Sat Sep 27 18:03:39 1997 UTC (15 years, 8 months ago) by pk
Branch: MAIN
CVS Tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3, marc-pcmcia-base
Changes since 1.59: +4 -2 lines
Diff to previous 1.59 (colored)

Move the "unimplemented software trap" message within `#ifdef DIAGNOSTIC'
and use uprintf() for the notification.

Revision 1.59 / (download) - annotate - [select for diffs], Sat Sep 20 19:00:40 1997 UTC (15 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.58: +1 -2 lines
Diff to previous 1.58 (colored)

Do not skip over a break trap instruction, now that the DDB code can
do it properly.

Revision 1.58 / (download) - annotate - [select for diffs], Fri Sep 12 08:55:01 1997 UTC (15 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.57: +14 -6 lines
Diff to previous 1.57 (colored)

Update syscall() and setregs() in the wake of the recent execve() changes.

Revision 1.57 / (download) - annotate - [select for diffs], Tue Jul 29 09:42:15 1997 UTC (15 years, 10 months ago) by fair
Branch: MAIN
CVS Tags: thorpej-signal-base, thorpej-signal, marc-pcmcia-bp
Branch point for: marc-pcmcia
Changes since 1.56: +11 -11 lines
Diff to previous 1.56 (colored)

%x -> 0x%x

Revision 1.56 / (download) - annotate - [select for diffs], Sun Jul 6 21:34:45 1997 UTC (15 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.55: +4 -4 lines
Diff to previous 1.55 (colored)

Have a patchable variable `ignore_bogus_traps' (0 by default) that
controls whether or we panic when receiving an unhandled trap.

Revision 1.55 / (download) - annotate - [select for diffs], Sun Jun 29 18:44:21 1997 UTC (15 years, 11 months ago) by pk
Branch: MAIN
CVS Tags: bouyer-scsipi
Changes since 1.54: +3 -3 lines
Diff to previous 1.54 (colored)

Fix typo in last commit.

Revision 1.54 / (download) - annotate - [select for diffs], Sat Jun 28 19:59:03 1997 UTC (15 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.53: +3 -3 lines
Diff to previous 1.53 (colored)

Accommodate non-VM_PMAP_HACK code.

Revision 1.53 / (download) - annotate - [select for diffs], Sat Mar 15 20:31:33 1997 UTC (16 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.52: +1 -16 lines
Diff to previous 1.52 (colored)

Remove call to mmu_pagein4m(), which is of little use.

Revision 1.52 / (download) - annotate - [select for diffs], Fri Mar 14 23:57:59 1997 UTC (16 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.51: +3 -321 lines
Diff to previous 1.51 (colored)

- move instruction emulation and alignment fixing to emul.c
- add sparc-v8 {s,u}{mul,div}{cc,} instruction emulation

Revision 1.51 / (download) - annotate - [select for diffs], Tue Mar 11 01:20:25 1997 UTC (16 years, 3 months ago) by pk
Branch: MAIN
CVS Tags: is-newarp-before-merge
Changes since 1.50: +92 -55 lines
Diff to previous 1.50 (colored)

4m memory fault traps: simplify fault address logic, since per-CPU
fault-status reading stubs pre-cook the arguments.

illegal instruction trap: catch iflush instructions that cause this trap
on some CPU/MMU combinations.

Revision 1.50 / (download) - annotate - [select for diffs], Sun Dec 1 23:21:07 1996 UTC (16 years, 6 months ago) by pk
Branch: MAIN
CVS Tags: thorpej-setroot, mrg-vm-swap, is-newarp-base
Branch point for: is-newarp
Changes since 1.49: +2 -1 lines
Diff to previous 1.49 (colored)

Handle T_IDIV0 like T_DIV0.

Revision 1.49 / (download) - annotate - [select for diffs], Sat Nov 16 20:45:13 1996 UTC (16 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.48: +3 -8 lines
Diff to previous 1.48 (colored)

Remove "trap#29" debugging code. These traps have disappeared since a bug
was fixed in the pamp code ("stale PTEs", pmap.c rev. 1.62).

Revision 1.48 / (download) - annotate - [select for diffs], Wed Nov 13 06:13:40 1996 UTC (16 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.47: +18 -11 lines
Diff to previous 1.47 (colored)

Use bitmask_snprintf().

Revision 1.47 / (download) - annotate - [select for diffs], Sun Oct 13 03:00:48 1996 UTC (16 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.46: +23 -23 lines
Diff to previous 1.46 (colored)

backout previous kprintf change

Revision 1.46 / (download) - annotate - [select for diffs], Fri Oct 11 00:47:34 1996 UTC (16 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.45: +23 -23 lines
Diff to previous 1.45 (colored)

printf -> kprintf, sprintf -> ksprintf

Revision 1.45 / (download) - annotate - [select for diffs], Thu Sep 26 18:58:33 1996 UTC (16 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.44: +265 -2 lines
Diff to previous 1.44 (colored)

Implement T_FIXALIGN by adding code to fix unaligned accesses and a bit
in md_flags. This should bring the solaris mac emulator software a step
closer to working.

Revision 1.44 / (download) - annotate - [select for diffs], Thu Jun 13 22:26:21 1996 UTC (17 years ago) by pk
Branch: MAIN
Changes since 1.43: +12 -1 lines
Diff to previous 1.43 (colored)

Allow DIAGNOSTIC kernels a FLUSHWIN trap in order to record stack traces
(currently used by the nullfs filesystem code, noted by der mouse).

Revision 1.43 / (download) - annotate - [select for diffs], Mon May 27 01:12:44 1996 UTC (17 years ago) by pk
Branch: MAIN
Changes since 1.42: +14 -10 lines
Diff to previous 1.42 (colored)

mmu_pagein() is only useful on sun4/sun4c. For now, keep a `mmu_pagein4m()'
within `#ifdef DEBUG' for monitoring.

Push user windows to stack in pmap_extract() if we need to switch contexts.

Revision 1.42 / (download) - annotate - [select for diffs], Thu May 16 15:57:26 1996 UTC (17 years, 1 month ago) by abrown
Branch: MAIN
CVS Tags: netbsd-1-2-base
Branch point for: netbsd-1-2
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored)

Copyright police (s/Harvard University/Harvard College/).

Revision 1.41 / (download) - annotate - [select for diffs], Tue May 14 13:57:29 1996 UTC (17 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.40: +32 -29 lines
Diff to previous 1.40 (colored)

KNF some debug statements.

Revision 1.40 / (download) - annotate - [select for diffs], Sun Mar 31 22:51:58 1996 UTC (17 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.39: +322 -35 lines
Diff to previous 1.39 (colored)

Aaron's sun4m-related trap handling (memory faults).

Note that fork() no longer return in syscall() in the child.

Add a couple of `#ifdef DEBUG's.

Revision 1.39 / (download) - annotate - [select for diffs], Sat Mar 30 21:10:37 1996 UTC (17 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.38: +4 -4 lines
Diff to previous 1.38 (colored)

Remove u_int casts from the printf %b formats.

Revision 1.38 / (download) - annotate - [select for diffs], Tue Mar 26 01:30:17 1996 UTC (17 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.37: +5 -4 lines
Diff to previous 1.37 (colored)

Bitfields are unsigned.

Revision 1.37 / (download) - annotate - [select for diffs], Tue Mar 26 00:35:28 1996 UTC (17 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.36: +6 -10 lines
Diff to previous 1.36 (colored)

Back to normal printf()s, now that gcc understands `%b'.

Revision 1.36 / (download) - annotate - [select for diffs], Mon Mar 18 21:48:19 1996 UTC (17 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.35: +3 -1 lines
Diff to previous 1.35 (colored)

Avoid unused label warning.

Revision 1.35 / (download) - annotate - [select for diffs], Thu Mar 14 21:09:35 1996 UTC (17 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.34: +46 -11 lines
Diff to previous 1.34 (colored)

Add prototypes and fix bugs:
    - softclock was called with extra argument.
    - missing %x formats in printf's
    - kgdb_copy called with only two arguments.

Fix conf.c so that it used the _conf.h files from other places instead of
rolling its own.

Revision 1.34 / (download) - annotate - [select for diffs], Thu Mar 14 00:55:59 1996 UTC (17 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.33: +20 -1 lines
Diff to previous 1.33 (colored)

Insert child_return() for the benefit of child return path from cpu_fork().

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jul 4 22:57:35 1995 UTC (17 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001, netbsd-1-1
Changes since 1.32: +28 -3 lines
Diff to previous 1.32 (colored)

trap.c:	Add svr4 software traps. Fix bug in errno mapping.
svr4_machdep.c: Add siginfo translation (from mrg), add some software traps.

Revision 1.32 / (download) - annotate - [select for diffs], Mon May 8 17:53:40 1995 UTC (18 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.31: +6 -6 lines
Diff to previous 1.31 (colored)

Use VA_INHOLE().
Define arguments to mmu_pagein() in terms of MI VM constants; an idea from Theo.

Revision 1.31 / (download) - annotate - [select for diffs], Sat Apr 22 20:50:37 1995 UTC (18 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.30: +2 -2 lines
Diff to previous 1.30 (colored)

Fixed comparison in SYS__syscall to be against sysent instead of
p->p_emul->e_sysent [Thanks Charles for pointing this out].
I think that this code needs to be fixed anyway for emulations where
SYS_syscall is not the same number as the NetBSD one (0)... (Only the
alpha port so far?)

Revision 1.30 / (download) - annotate - [select for diffs], Sat Apr 22 20:28:43 1995 UTC (18 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.29: +10 -41 lines
Diff to previous 1.29 (colored)

- added sunos_machdep.c for sun3, atari, amiga and mac68k.
- changed machdep.c and trap.c to use struct emul.
- remove ep_setup references.
- added struct emul to all emulations.

Revision 1.29 / (download) - annotate - [select for diffs], Thu Apr 13 20:48:44 1995 UTC (18 years, 2 months ago) by mycroft
Branch: MAIN
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored)

EMUL_IBCS2_ELF -> EMUL_SVR4; EMUL_IBCS2_{COFF,XOUT} -> EMUL_IBCS2

Revision 1.28 / (download) - annotate - [select for diffs], Thu Apr 13 14:50:26 1995 UTC (18 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.27: +7 -8 lines
Diff to previous 1.27 (colored)

Use `register_t'.

Revision 1.27 / (download) - annotate - [select for diffs], Fri Mar 31 02:54:35 1995 UTC (18 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.26: +25 -3 lines
Diff to previous 1.26 (colored)

Moved KGDB trap 0x88 to 0x8a, and made 0x88 to be svr4 syscall [this is what
solaris uses]. Stubs for the missing and currently unused signal functions
stolen from the i386 code.

Revision 1.26 / (download) - annotate - [select for diffs], Sun Mar 26 08:04:18 1995 UTC (18 years, 2 months ago) by cgd
Branch: MAIN
Changes since 1.25: +3 -5 lines
Diff to previous 1.25 (colored)

invoke ktrsyscall with (vp, code, argsize, args) as args.

Revision 1.25 / (download) - annotate - [select for diffs], Tue Dec 6 00:27:46 1994 UTC (18 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.24: +4 -6 lines
Diff to previous 1.24 (colored)

vm access permissions give SIGSEGV
alignment errors give SIGBUS

Revision 1.24 / (download) - annotate - [select for diffs], Sun Nov 20 20:54:43 1994 UTC (18 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.23: +3 -4 lines
Diff to previous 1.23 (colored)

copyright/Id cleanup

Revision 1.23 / (download) - annotate - [select for diffs], Wed Oct 26 07:13:56 1994 UTC (18 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.22: +5 -5 lines
Diff to previous 1.22 (colored)

sunos compat changes

Revision 1.22 / (download) - annotate - [select for diffs], Thu Oct 20 04:46:32 1994 UTC (18 years, 8 months ago) by cgd
Branch: MAIN
Changes since 1.21: +6 -4 lines
Diff to previous 1.21 (colored)

update for new syscall args description mechanism

Revision 1.21 / (download) - annotate - [select for diffs], Tue Sep 27 01:34:04 1994 UTC (18 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.20: +3 -3 lines
Diff to previous 1.20 (colored)

USPACE

Revision 1.20 / (download) - annotate - [select for diffs], Fri Aug 26 10:57:27 1994 UTC (18 years, 9 months ago) by deraadt
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

an annoying tab

Revision 1.19 / (download) - annotate - [select for diffs], Sat May 21 08:23:04 1994 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
CVS Tags: netbsd-1-0-base, netbsd-1-0-RELEASE, netbsd-1-0-PATCH1, netbsd-1-0-PATCH06, netbsd-1-0-PATCH05, netbsd-1-0-PATCH04, netbsd-1-0-PATCH03, netbsd-1-0-PATCH02, netbsd-1-0-PATCH0, netbsd-1-0
Changes since 1.18: +1 -2 lines
Diff to previous 1.18 (colored)

vmmeter

Revision 1.18 / (download) - annotate - [select for diffs], Thu May 19 07:13:09 1994 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.17: +2 -29 lines
Diff to previous 1.17 (colored)

catchup to 4.4-lite and delete some debug stuff

Revision 1.17 / (download) - annotate - [select for diffs], Fri May 13 20:13:00 1994 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored)

setrunqueue

Revision 1.16 / (download) - annotate - [select for diffs], Sat May 7 05:08:38 1994 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.15: +8 -8 lines
Diff to previous 1.15 (colored)

postsig

Revision 1.15 / (download) - annotate - [select for diffs], Thu May 5 10:01:00 1994 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.14: +15 -38 lines
Diff to previous 1.14 (colored)

revert to sticks instead of stime

Revision 1.14 / (download) - annotate - [select for diffs], Thu May 5 05:59:14 1994 UTC (19 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)

flag foo

Revision 1.13 / (download) - annotate - [select for diffs], Fri Apr 22 22:52:44 1994 UTC (19 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

small nit

Revision 1.12 / (download) - annotate - [select for diffs], Fri Apr 8 06:02:01 1994 UTC (19 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

oops with sysent

Revision 1.11 / (download) - annotate - [select for diffs], Mon Apr 4 08:07:33 1994 UTC (19 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.10: +11 -2 lines
Diff to previous 1.10 (colored)

64 bit syscalls

Revision 1.10 / (download) - annotate - [select for diffs], Wed Mar 23 20:40:28 1994 UTC (19 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.9: +10 -1 lines
Diff to previous 1.9 (colored)

DDB support

Revision 1.9 / (download) - annotate - [select for diffs], Tue Feb 1 06:01:51 1994 UTC (19 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.8: +38 -15 lines
Diff to previous 1.8 (colored)

sparc runs in current today

Revision 1.8 / (download) - annotate - [select for diffs], Wed Dec 1 20:59:59 1993 UTC (19 years, 6 months ago) by pk
Branch: MAIN
CVS Tags: sparc-magnum
Changes since 1.7: +5 -1 lines
Diff to previous 1.7 (colored)

Make `ktrace' record the system call entries in addition to just a bunch
of return codes.

Revision 1.7 / (download) - annotate - [select for diffs], Sat Nov 27 01:49:20 1993 UTC (19 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.6: +1 -5 lines
Diff to previous 1.6 (colored)

page fault debug code goes away

Revision 1.6 / (download) - annotate - [select for diffs], Wed Nov 10 06:22:15 1993 UTC (19 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.5: +9 -6 lines
Diff to previous 1.5 (colored)

Duh.

Revision 1.5 / (download) - annotate - [select for diffs], Wed Nov 10 03:13:51 1993 UTC (19 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.4: +16 -29 lines
Diff to previous 1.4 (colored)

use p_emul flag to indicate OS emulation
handle syscalls at standard sun place, ie. trap#80 not #89
add SunOS OMAGIC support

Revision 1.4 / (download) - annotate - [select for diffs], Wed Oct 27 17:29:31 1993 UTC (19 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.3: +5 -2 lines
Diff to previous 1.3 (colored)

slightly better syscall diagnostics.

Revision 1.3 / (download) - annotate - [select for diffs], Mon Oct 11 10:53:28 1993 UTC (19 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.2: +28 -1 lines
Diff to previous 1.2 (colored)

machdep.c: setregs() adjusts the stack correct and warns about problems
	cpu_exec_aout_makecmds() that understands sunos ZMAGIC.
trap.c: just Theo's debugging stuff, delete later.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Oct 11 02:16:26 1993 UTC (19 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +9 -4 lines
Diff to previous 1.1 (colored)

pmap.c, machdep.c, autoconf.c, cpu.c, intr.c, : net-posted patches from Torek
autoconf.c: mountroot kludges that need fixing later
clock.c: two volatile decls
conf.c: stategy()'s return void, *tty[] not tty[], __P()'d xxdump() calls,
	add mem_no, *constty[] not &cons.
genassym.c, machdep.c: sys/vmmeter.h needed
intr.c: make kernel writable temporarily in intr_fasttrap()
intr.c: do not use NETISR_ARP
locore.s: icode maps at 0 so do not relocate, don't define __main here.
machdep.c: don't have sysctl.h (yet), use vm_page_free_count for freemem,
	setregs() sets pc/npc/stack, note: signal delivery code needs
	fixing, add various other NetBSD function stubs.
pmap.c: do kernel_pmap/kernel_pmap_store the old way, delete
	vm_page_startup_initialized weirdness.
swapgeneric.c: everything about mountroot needs fixing, help.
trap.c: sunsys -> sun_sysent, etc.
vm_machdep.c: don't use cpu_coredump() for now.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Oct 2 10:24:30 1993 UTC (19 years, 8 months ago) by deraadt
Branch: MAIN

Chris Torek's sparc port. Missing lots of things.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>