The NetBSD Project

CVS log for src/sys/arch/sparc/sparc/locore.s

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.283 / (download) - annotate - [select for diffs], Sun May 15 02:14:15 2022 UTC (8 months, 3 weeks ago) by mrg
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.282: +1 -5 lines
Diff to previous 1.282 (colored)

remove unused Lpanic_savefpstate.

Revision 1.282 / (download) - annotate - [select for diffs], Sat Apr 16 18:15:21 2022 UTC (9 months, 3 weeks ago) by andvar
Branch: MAIN
Changes since 1.281: +2 -2 lines
Diff to previous 1.281 (colored)

fix various typos in comments and log messages.

Revision 1.281 / (download) - annotate - [select for diffs], Mon Aug 9 21:08:06 2021 UTC (17 months, 4 weeks ago) by andvar
Branch: MAIN
Changes since 1.280: +2 -2 lines
Diff to previous 1.280 (colored)

s/aligment/alignment/ + one more typo fix in comments.

Revision 1.279.4.1 / (download) - annotate - [select for diffs], Thu May 13 00:47:28 2021 UTC (20 months, 3 weeks ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.279: +2 -2 lines
Diff to previous 1.279 (colored) next main 1.280 (colored)

Sync with HEAD.

Revision 1.280 / (download) - annotate - [select for diffs], Sun Apr 25 21:59:38 2021 UTC (21 months, 1 week ago) by mrg
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.279: +2 -2 lines
Diff to previous 1.279 (colored)

fix a comment to match the code.

Revision 1.278.2.1 / (download) - annotate - [select for diffs], Sat Apr 3 22:28:38 2021 UTC (22 months ago) by thorpej
Branch: thorpej-futex
Changes since 1.278: +10 -10 lines
Diff to previous 1.278 (colored) next main 1.279 (colored)

Sync with HEAD.

Revision 1.279 / (download) - annotate - [select for diffs], Sun Jan 24 07:36:54 2021 UTC (2 years ago) by mrg
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-cfargs-base, thorpej-cfargs
Branch point for: thorpej-i2c-spi-conf
Changes since 1.278: +10 -10 lines
Diff to previous 1.278 (colored)

avoid using 'extern <func|data>;' inside a .c file, but instead
use header files and ensure definitions are not duplicated or
are technically (if not in codegen) wrong.

Revision 1.278 / (download) - annotate - [select for diffs], Tue Jun 30 16:20:02 2020 UTC (2 years, 7 months ago) by maxv
Branch: MAIN
Branch point for: thorpej-futex
Changes since 1.277: +1 -36 lines
Diff to previous 1.277 (colored)

Make copystr() a MI C function, part of libkern and shared on all
architectures.

Notes:

 - On alpha and ia64 the function is kept but gets renamed locally to avoid
   symbol collision. This is because on these two arches, I am not sure
   whether the ASM callers do not rely on fixed registers, so I prefer to
   keep the ASM body for now.
 - On Vax, only the symbol is removed, because the body is used from other
   functions.
 - On RISC-V, this change fixes a bug: copystr() was just a wrapper around
   strlcpy(), but strlcpy() makes the operation less safe (strlen on the
   source beyond its size).
 - The kASan, kCSan and kMSan wrappers are removed, because now that
   copystr() is in C, the compiler transformations are applied to it,
   without the need for manual wrappers.

Could test on amd64 only, but should be fine.

Revision 1.271.2.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:07:53 2020 UTC (2 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.271.2.1: +75 -52 lines
Diff to previous 1.271.2.1 (colored) to branchpoint 1.271 (colored) next main 1.272 (colored)

Merge changes from current as of 20200406

Revision 1.275.2.1 / (download) - annotate - [select for diffs], Fri Jan 17 21:47:27 2020 UTC (3 years ago) by ad
Branch: ad-namecache
Changes since 1.275: +47 -27 lines
Diff to previous 1.275 (colored) next main 1.276 (colored)

Sync with head.

Revision 1.277 / (download) - annotate - [select for diffs], Sun Jan 12 19:13:55 2020 UTC (3 years ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1
Changes since 1.276: +46 -23 lines
Diff to previous 1.276 (colored)

Fix some more places in this file it's assumed cpu_info is smaller than 1kB.

Revision 1.276 / (download) - annotate - [select for diffs], Wed Jan 8 20:59:19 2020 UTC (3 years ago) by skrll
Branch: MAIN
Changes since 1.275: +2 -5 lines
Diff to previous 1.275 (colored)

oldlwp is always non-NULL in cpu_switchto so remove the test for NULL.

Revision 1.275 / (download) - annotate - [select for diffs], Mon Dec 30 22:13:47 2019 UTC (3 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: ad-namecache-base
Branch point for: ad-namecache
Changes since 1.274: +29 -26 lines
Diff to previous 1.274 (colored)

PR port-sparc/54789: Sparc boot fails with "Trap 0x21 while interrupts disabled"

Remove assumption that cpu_info is smaller than 1kB.

Revision 1.271.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:06:46 2019 UTC (3 years, 7 months ago) by christos
Branch: phil-wifi
Changes since 1.271: +77 -157 lines
Diff to previous 1.271 (colored)

Sync with HEAD

Revision 1.274 / (download) - annotate - [select for diffs], Fri Jun 7 00:18:26 2019 UTC (3 years, 8 months ago) by mrg
Branch: MAIN
CVS Tags: phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9
Changes since 1.273: +1 -19 lines
Diff to previous 1.273 (colored)

remove code to directly check for NULL savefpstate() calls.
it has not triggered for years now, and if it comes back,
you still get a normal kernel fault.

Revision 1.273 / (download) - annotate - [select for diffs], Sat Apr 6 03:06:27 2019 UTC (3 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: isaki-audio2-base, isaki-audio2
Changes since 1.272: +77 -138 lines
Diff to previous 1.272 (colored)

Overhaul the API used to fetch and store individual memory cells in
userspace.  The old fetch(9) and store(9) APIs (fubyte(), fuword(),
subyte(), suword(), etc.) are retired and replaced with new ufetch(9)
and ustore(9) APIs that can return proper error codes, etc. and are
implemented consistently across all platforms.  The interrupt-safe
variants are no longer supported (and several of the existing attempts
at fuswintr(), etc. were buggy and not actually interrupt-safe).

Also augmement the ucas(9) API, making it consistently available on
all plaforms, supporting uniprocessor and multiprocessor systems, even
those that do not have CAS or LL/SC primitives.

Welcome to NetBSD 8.99.37.

Revision 1.269.2.3 / (download) - annotate - [select for diffs], Wed Dec 26 14:01:43 2018 UTC (4 years, 1 month ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.269.2.2: +1 -2 lines
Diff to previous 1.269.2.2 (colored) to branchpoint 1.269 (colored) next main 1.270 (colored)

Sync with HEAD, resolve a few conflicts

Revision 1.272 / (download) - annotate - [select for diffs], Wed Dec 19 13:57:50 2018 UTC (4 years, 1 month ago) by maxv
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226
Changes since 1.271: +1 -2 lines
Diff to previous 1.271 (colored)

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.

Revision 1.269.2.2 / (download) - annotate - [select for diffs], Mon Jun 25 07:25:45 2018 UTC (4 years, 7 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.269.2.1: +8 -12 lines
Diff to previous 1.269.2.1 (colored) to branchpoint 1.269 (colored)

Sync with HEAD

Revision 1.271 / (download) - annotate - [select for diffs], Thu May 31 22:44:13 2018 UTC (4 years, 8 months ago) by mrg
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625
Branch point for: phil-wifi
Changes since 1.270: +8 -12 lines
Diff to previous 1.270 (colored)

convert Lfp_null_fpstate (which is invoked if savefpstate() is called
with NULL) into a panic for DIAGNOSTIC kernels.

Revision 1.269.2.1 / (download) - annotate - [select for diffs], Thu Mar 22 01:44:46 2018 UTC (4 years, 10 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.269: +1 -160 lines
Diff to previous 1.269 (colored)

Synch with HEAD, resolve conflicts

Revision 1.270 / (download) - annotate - [select for diffs], Fri Mar 16 09:29:24 2018 UTC (4 years, 10 months ago) by mrg
Branch: MAIN
CVS Tags: pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322
Changes since 1.269: +1 -160 lines
Diff to previous 1.269 (colored)

remove obsolete ovbcopy().  it may be the very slightly bit
faster for larger copies, but slower for smaller ones.
i don't see any major benefit in keeping this code.

this is the final ovbcopy() reference in src.  you're welcome :-)

Revision 1.265.8.1 / (download) - annotate - [select for diffs], Sat Mar 3 20:47:24 2018 UTC (4 years, 11 months ago) by snj
Branch: netbsd-6
Changes since 1.265: +4 -3 lines
Diff to previous 1.265 (colored) next main 1.266 (colored)

Pull up following revision(s) (requested by maya in ticket #1513):
	sys/arch/sparc/sparc/locore.s: 1.269
Avoid an instruction requiring a higher alignment than we are guaranteed
Fixes PR port-sparc/52721: ddb errors on ps command
Thanks to mlelstv.

Revision 1.268.12.1 / (download) - annotate - [select for diffs], Wed Jan 3 20:06:06 2018 UTC (5 years, 1 month ago) by snj
Branch: netbsd-7
CVS Tags: netbsd-7-2-RELEASE
Changes since 1.268: +4 -3 lines
Diff to previous 1.268 (colored) next main 1.269 (colored)

Pull up following revision(s) (requested by maya in ticket #1530):
	sys/arch/sparc/sparc/locore.s: revision 1.269
Avoid an instruction requiring a higher alignment than we are guaranteed
Fixes PR port-sparc/52721: ddb errors on ps command
Thanks to mlelstv.

Revision 1.268.24.1 / (download) - annotate - [select for diffs], Wed Jan 3 20:06:04 2018 UTC (5 years, 1 month ago) by snj
Branch: netbsd-7-1
CVS Tags: netbsd-7-1-2-RELEASE
Changes since 1.268: +4 -3 lines
Diff to previous 1.268 (colored) next main 1.269 (colored)

Pull up following revision(s) (requested by maya in ticket #1530):
	sys/arch/sparc/sparc/locore.s: revision 1.269
Avoid an instruction requiring a higher alignment than we are guaranteed
Fixes PR port-sparc/52721: ddb errors on ps command
Thanks to mlelstv.

Revision 1.268.16.1 / (download) - annotate - [select for diffs], Wed Jan 3 20:06:02 2018 UTC (5 years, 1 month ago) by snj
Branch: netbsd-7-0
Changes since 1.268: +4 -3 lines
Diff to previous 1.268 (colored) next main 1.269 (colored)

Pull up following revision(s) (requested by maya in ticket #1530):
	sys/arch/sparc/sparc/locore.s: revision 1.269
Avoid an instruction requiring a higher alignment than we are guaranteed
Fixes PR port-sparc/52721: ddb errors on ps command
Thanks to mlelstv.

Revision 1.266.2.2 / (download) - annotate - [select for diffs], Sun Dec 3 11:36:43 2017 UTC (5 years, 2 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.266.2.1: +4 -3 lines
Diff to previous 1.266.2.1 (colored) to branchpoint 1.266 (colored) next main 1.267 (colored)

update from HEAD

Revision 1.268.30.1 / (download) - annotate - [select for diffs], Mon Nov 27 10:31:33 2017 UTC (5 years, 2 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1
Changes since 1.268: +4 -3 lines
Diff to previous 1.268 (colored) next main 1.269 (colored)

Pull up following revision(s) (requested by maya in ticket #392):
	sys/arch/sparc/sparc/locore.s: revision 1.269
Avoid an instruction requiring a higher alignment than we are guaranteed
Fixes PR port-sparc/52721: ddb errors on ps command
Thanks to mlelstv.

Revision 1.269 / (download) - annotate - [select for diffs], Sat Nov 25 04:11:37 2017 UTC (5 years, 2 months ago) by maya
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, pgoyette-compat-base, pgoyette-compat-0315
Branch point for: pgoyette-compat
Changes since 1.268: +4 -3 lines
Diff to previous 1.268 (colored)

Avoid an instruction requiring a higher alignment than we are guaranteed

Fixes PR port-sparc/52721: ddb errors on ps command
Thanks to mlelstv.

Revision 1.265.2.2 / (download) - annotate - [select for diffs], Wed Jan 16 05:33:04 2013 UTC (10 years ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.265.2.1: +21 -15 lines
Diff to previous 1.265.2.1 (colored) to branchpoint 1.265 (colored) next main 1.266 (colored)

sync with (a bit old) head

Revision 1.266.2.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:01:44 2012 UTC (10 years, 2 months ago) by tls
Branch: tls-maxphys
Changes since 1.266: +21 -15 lines
Diff to previous 1.266 (colored)

Resync to 2012-11-19 00:00:00 UTC

Revision 1.268 / (download) - annotate - [select for diffs], Sun Nov 4 00:32:47 2012 UTC (10 years, 3 months ago) by chs
Branch: MAIN
CVS Tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-8-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-1-RELEASE, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, khorben-n900, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, agc-symver-base, agc-symver
Branch point for: netbsd-8, netbsd-7-1, netbsd-7-0, netbsd-7
Changes since 1.267: +1 -14 lines
Diff to previous 1.267 (colored)

in cpu_switchto(), remove the MP-unsafe code to mark a pmap active on a CPU,
pmap_activate() already does this.  add MP locking to pmap_activate()
and pmap_deactivate().  move flushing of user windows and virtual caches
from pamp_activate() to pmap_deactivate().

Revision 1.267 / (download) - annotate - [select for diffs], Fri Nov 2 00:01:19 2012 UTC (10 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.266: +21 -2 lines
Diff to previous 1.266 (colored)

Add RAS support for sparc.

Revision 1.265.2.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:06:54 2012 UTC (10 years, 9 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.265: +1 -5 lines
Diff to previous 1.265 (colored)

sync with head

Revision 1.265.6.1 / (download) - annotate - [select for diffs], Fri Feb 24 09:11:34 2012 UTC (10 years, 11 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.265: +1 -5 lines
Diff to previous 1.265 (colored) next main 1.266 (colored)

sync to -current.

Revision 1.266 / (download) - annotate - [select for diffs], Sun Feb 19 21:06:28 2012 UTC (10 years, 11 months ago) by rmind
Branch: MAIN
CVS Tags: yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base10
Branch point for: tls-maxphys
Changes since 1.265: +1 -5 lines
Diff to previous 1.265 (colored)

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

Revision 1.265 / (download) - annotate - [select for diffs], Mon Aug 15 02:19:44 2011 UTC (11 years, 5 months ago) by mrg
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-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, 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, netbsd-6, jmcneill-usbmp
Changes since 1.264: +13 -2 lines
Diff to previous 1.264 (colored)

re-introduce the NULL savefpstate IPI checks and evcnts.  something
is Wrong with GCC 4.5.3 and these trigger.  i haven't seen anything
else particularly wrong so for now this will allow sparc to switch
to GCC 4.5, which otherwise seems to be working very well for me.

sigh.  i'm going to file a PR to research what is really wrong here.

Revision 1.259.2.1 / (download) - annotate - [select for diffs], Mon Jun 6 09:06:46 2011 UTC (11 years, 8 months ago) by jruoho
Branch: jruoho-x86intr
Changes since 1.259: +19 -25 lines
Diff to previous 1.259 (colored) next main 1.260 (colored)

Sync with HEAD.

Revision 1.244.8.4 / (download) - annotate - [select for diffs], Tue Mar 8 17:29:46 2011 UTC (11 years, 11 months ago) by riz
Branch: netbsd-5
CVS Tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2
Changes since 1.244.8.3: +48 -13 lines
Diff to previous 1.244.8.3 (colored) to branchpoint 1.244 (colored) next main 1.245 (colored)

Apply patches (requested by mrg in ticket #1564):
	sys/arch/sparc/dev/zs.c:		patch
	sys/arch/sparc/include/cpu.h:		patch
	sys/arch/sparc/include/z8530var.h:	patch
	sys/arch/sparc/sparc/cpu.c:		patch
	sys/arch/sparc/sparc/cpuvar.h:		patch
	sys/arch/sparc/sparc/db_interface.c:	patch
	sys/arch/sparc/sparc/genassym.cf:	patch
	sys/arch/sparc/sparc/intr.c:		patch
	sys/arch/sparc/sparc/locore.s:		patch
	sys/arch/sparc/sparc/machdep.c:		patch
	sys/arch/sparc/sparc/timer.c:		patch
	sys/arch/sparc/sparc/timer_sun4m.c:	patch
	sys/arch/sparc/sparc/timervar.h:	patch
	sys/arch/sparc/sparc/trap.c:		patch
	sys/arch/sparc/sparc/vm_machdep.c:	patch

- fix a panic in savefpstate.  idea, and code suggestions from uwe
- convert xpmsg_lock to IPL_SCHED.  the old spl/simple_lock code ran at
  splsched(), and this significantly helps with stability under load when
  running with multiple active CPUs
- in strayintr() don't print about stray zs inters in MP case
- fix a deadlock in xcall()
- consolidate the interrupt evcnt(9) into a full set of per-IPL per-CPU
  soft/hard counters
- fix xcall() failure messages in some cases
- addd new ddb command "mach xcall"
- use schedintr() (not schedintr_4m()) on MP or single CPU configurations
- call hardclock() the same way on cpu0 in MP and !MP cases
- request the appropriate stack space for nmi_sun4m, in particular,
  make sure we have space for %g2...%g5.  now entering ddb via eg,
  serial break no longer causes cpu1 to fault.
- give memfault_sun*() some entry points that both gdb and ddb will find.
from tsutsui:
- fix panic in interrupt handlers in zs

Revision 1.256.2.1 / (download) - annotate - [select for diffs], Sat Mar 5 20:52:02 2011 UTC (11 years, 11 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.256: +63 -35 lines
Diff to previous 1.256 (colored) next main 1.257 (colored)

sync with head

Revision 1.259.4.3 / (download) - annotate - [select for diffs], Sat Mar 5 15:10:05 2011 UTC (11 years, 11 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.259.4.2: +2 -14 lines
Diff to previous 1.259.4.2 (colored) to branchpoint 1.259 (colored) next main 1.260 (colored)

Sync with HEAD

Revision 1.264 / (download) - annotate - [select for diffs], Sun Feb 20 10:26:26 2011 UTC (11 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, jym-xensuspend-nbase, jym-xensuspend-base, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase
Changes since 1.263: +1 -2 lines
Diff to previous 1.263 (colored)

remove an unused "1:" label left over from previous commit.

Revision 1.263 / (download) - annotate - [select for diffs], Sun Feb 20 10:02:01 2011 UTC (11 years, 11 months ago) by mrg
Branch: MAIN
Changes since 1.262: +2 -13 lines
Diff to previous 1.262 (colored)

remove the evcnt for NULL struct fpstate * ipi, and switch over to an
explicit panic() if we get one.

i'm pretty sure that converting xmpsg_lock from IPL_VM to IPL_SCHED
fixed this problem properly.  i have not seen the evcnt trigger since
that change, nor have several others queried.

Revision 1.259.4.2 / (download) - annotate - [select for diffs], Thu Feb 17 12:00:01 2011 UTC (11 years, 11 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.259.4.1: +6 -5 lines
Diff to previous 1.259.4.1 (colored) to branchpoint 1.259 (colored)

Sync with HEAD

Revision 1.262 / (download) - annotate - [select for diffs], Tue Feb 15 11:30:21 2011 UTC (11 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: uebayasi-xip-base7, bouyer-quota2-base
Changes since 1.261: +5 -2 lines
Diff to previous 1.261 (colored)

give memfault_sun*() some entry points that both gdb and ddb will find.

Revision 1.261 / (download) - annotate - [select for diffs], Tue Feb 15 10:59:25 2011 UTC (11 years, 11 months ago) by mrg
Branch: MAIN
Changes since 1.260: +2 -4 lines
Diff to previous 1.260 (colored)

- move nmi_sun4m intr counting into nmi_soft/nmi_hard.
- request the appropriate stack space for nmi_sun4m, in particular,
  make sure we have space for %g2...%g5.  now entering ddb via eg,
  serial break no longer causes cpu1 to fault.

Revision 1.259.4.1 / (download) - annotate - [select for diffs], Tue Feb 8 16:19:41 2011 UTC (12 years ago) by bouyer
Branch: bouyer-quota2
Changes since 1.259: +13 -8 lines
Diff to previous 1.259 (colored)

Sync with HEAD

Revision 1.244.8.3 / (download) - annotate - [select for diffs], Fri Jan 28 07:16:13 2011 UTC (12 years ago) by snj
Branch: netbsd-5
Changes since 1.244.8.2: +46 -54 lines
Diff to previous 1.244.8.2 (colored) to branchpoint 1.244 (colored)

Pull up following revision(s) (requested by mrg in ticket #1532):
	sys/arch/sparc/sparc/cpu.c: revision 1.215 via patch
	sys/arch/sparc/sparc/cpuvar.h: revision 1.78 via patch
	sys/arch/sparc/sparc/genassym.cf: revision 1.57 via patch
	sys/arch/sparc/sparc/intr.c: revision 1.103-1.105 via patch
	sys/arch/sparc/sparc/locore.s: revision 1.247, 1.250 via patch
	sys/arch/sparc/sparc/pmap.c: revision 1.329 via patch

- print the cpu_number() when we get a strayintr().

- use _MAXNCPU instead of 4
- convert xpmsg_lock from a simplelock to a kmutex
- don't wait for sparc_noop IPI calls
- remove xmpsg_func's "retval" parameter and usage
- remove the IPI at high IPL message
- rework cpu_attach() a bunch, refactoring calls to getcpuinfo() and setting
 of cpi, and split most of the non-boot CPU handling into a new function
- make CPU_INFO_FOREACH() work whether modular or not
- move the MP cpu_info pages earlier
- move a few things in cpu.c around to colsolidate the MP code together
- remove useless if (cpus == NULL) tests -- cpus is an array now

with these changes, and an additional change to crazyintr() to not printf(),
i can get to single user shell on my SS20 again.  i can run a few commands
but some of them cause hangs.  "ps auxw" works, but "top -b" does not.

convert sparc "intrcnt" counters to evcnt(9) style.  XXX some of the names
could be better, but i just copied them from the old intrnames in locore.

i benchmarked this with a simple test of ircii ./configure && make, to see
if the additional load/store & arith would cause any noticeable degradation
as the change also converts 32 bit counters to 64 bits.  amusingly, the
only trend i saw in this was that for both portions, i see a consistent
(across at least 8 runs) benefit of about 0.8% improvement.  ie, the newer
larger code size / counter size code actually runs faster for some reason..
maybe there's a cacheline effect in the size of the code?

XXX the current implementation depends on a couple of things:
XXX   - ev_count member of evcnt{} is first and has offset 0
XXX   - that sizeof(struct evcnt) equals 32
XXX if these are not true, locore.s has #error's to catch it

- remove unused ft_want_ast()
- give nmi_sun* ENTRY() points so they show up in symbols properly
- add some disabled code to use this cpu's idlelwp area when hatching
 a cpu, but right now it makes this worse not better...

Revision 1.260 / (download) - annotate - [select for diffs], Thu Jan 27 06:24:59 2011 UTC (12 years ago) by mrg
Branch: MAIN
Changes since 1.259: +13 -8 lines
Diff to previous 1.259 (colored)

consolidate the interrupt evcnt(9) into a full set of per-IPL per-CPU
soft/hard counters.  beyond the extra info, it seems to help avoid some
of these counters getting corrupted due to unlocked multiple accesses.

adjust the xcallintr() from xcall() hack so that we don't count these
events as interrupts.  align the existing evcnt name to count this.

Revision 1.244.8.2 / (download) - annotate - [select for diffs], Sun Jan 16 12:58:23 2011 UTC (12 years ago) by bouyer
Branch: netbsd-5
Changes since 1.244.8.1: +8 -9 lines
Diff to previous 1.244.8.1 (colored) to branchpoint 1.244 (colored)

Pull up following revision(s) (requested by mrg in ticket #1527):
	sys/arch/sparc/sparc/pmap.c: revision 1.327, 1.328
	sys/arch/sparc/sparc/cpuvar.h: revision 1.77
	sys/arch/sparc/sparc/locore.s: revision 1.245
	sys/arch/sparc/sparc/cpu.c: revision 1.214
	sys/arch/sparc/sparc/db_interface.c: revision 1.84
- retire union cpu_info_pg
- allocate space for each cpu_info{} in pmap_bootstrap
- remap cpu0's space into the PA currently in CPUINFO_VA
- cpus[] becomes an array of pointers to cpu_info{}, easy to traverse
- only call kernel lock for IPL_VM interrupts (?  as implemented on
  x86 and sparc64)
- revert a minor part of locore.s:1.241
- in cpu_hatch(), set %sp to near the middle of the interrupt stack.
  we only need a %sp until we get to run an MI thread (own idlelwp or
  real code)
we still waste one page of space, but this gets SMP much closer to
actually working again.
fix a LOCKDEBUG problem from the previous: need to call pmap_kremove()
on a pre-existing mapping, before installing a new one.

Revision 1.259 / (download) - annotate - [select for diffs], Thu Jan 13 05:20:27 2011 UTC (12 years ago) by mrg
Branch: MAIN
CVS Tags: jruoho-x86intr-base
Branch point for: jruoho-x86intr, bouyer-quota2
Changes since 1.258: +40 -2 lines
Diff to previous 1.258 (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.258 / (download) - annotate - [select for diffs], Mon Dec 20 00:25:44 2010 UTC (12 years, 1 month ago) by matt
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231
Changes since 1.257: +19 -24 lines
Diff to previous 1.257 (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.255.2.2 / (download) - annotate - [select for diffs], Tue Aug 17 06:45:15 2010 UTC (12 years, 5 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.255.2.1: +2 -1 lines
Diff to previous 1.255.2.1 (colored) to branchpoint 1.255 (colored) next main 1.256 (colored)

Sync with HEAD.

Revision 1.243.10.4 / (download) - annotate - [select for diffs], Wed Aug 11 22:52:45 2010 UTC (12 years, 5 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.243.10.3: +3 -2 lines
Diff to previous 1.243.10.3 (colored) to branchpoint 1.243 (colored) next main 1.244 (colored)

sync with head.

Revision 1.257 / (download) - annotate - [select for diffs], Sun Aug 8 18:21:50 2010 UTC (12 years, 6 months ago) by chs
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
Changes since 1.256: +3 -2 lines
Diff to previous 1.256 (colored)

update a comment.

Revision 1.255.2.1 / (download) - annotate - [select for diffs], Fri Apr 30 14:39:49 2010 UTC (12 years, 9 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.255: +30 -42 lines
Diff to previous 1.255 (colored)

Sync with HEAD.

Revision 1.244.16.1 / (download) - annotate - [select for diffs], Wed Apr 21 00:33:48 2010 UTC (12 years, 9 months ago) by matt
Branch: matt-nb5-mips64
CVS Tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Changes since 1.244: +5 -1 lines
Diff to previous 1.244 (colored) next main 1.245 (colored)

sync to netbsd-5

Revision 1.243.10.3 / (download) - annotate - [select for diffs], Thu Mar 11 15:02:58 2010 UTC (12 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.243.10.2: +55 -115 lines
Diff to previous 1.243.10.2 (colored) to branchpoint 1.243 (colored)

sync with head

Revision 1.256 / (download) - annotate - [select for diffs], Sun Mar 7 00:42:08 2010 UTC (12 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, uebayasi-xip-base1
Branch point for: rmind-uvmplock
Changes since 1.255: +30 -42 lines
Diff to previous 1.255 (colored)

gas has supported SPARC ".empty" for a long while; get rid of an
ancient workaround.

Revision 1.255 / (download) - annotate - [select for diffs], Thu Jan 28 05:08:11 2010 UTC (13 years ago) by mrg
Branch: MAIN
CVS Tags: uebayasi-xip-base
Branch point for: uebayasi-xip
Changes since 1.254: +4 -3 lines
Diff to previous 1.254 (colored)

in savefpstate(), make sure we fill in the _first_ read of %fsr into
the fpstate structure, not the last one.  avoids fs->fs_fsr lacking the
traptype field later when fpu_cleanup() is processing it, which leads
to a panic() occuring.

idea, and code suggestions from uwe.

Revision 1.244.8.1 / (download) - annotate - [select for diffs], Sat Jan 9 01:43:51 2010 UTC (13 years, 1 month ago) by snj
Branch: netbsd-5
CVS Tags: netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, matt-nb5-pq3-base, matt-nb5-pq3
Changes since 1.244: +5 -1 lines
Diff to previous 1.244 (colored)

Pull up following revision(s) (requested by mrg in ticket #1223):
	sys/arch/sparc/include/cpu.h: revision 1.86
	sys/arch/sparc/sparc/locore.s: revision 1.246
	sys/arch/sparc/sparc/vm_machdep.c: revision 1.100
fix up cpu_setfunc() as noted by uwe:
- don't call lwp_startup for cpu_setfunc() users
- introduce lwp_setfunc_trampoline instead
- no need to set the "new" lwp for setfunc

Revision 1.254 / (download) - annotate - [select for diffs], Mon Jan 4 04:06:57 2010 UTC (13 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.253: +1 -11 lines
Diff to previous 1.253 (colored)

use the idle lwp's uarea for stack, not the interrupt stack.  this works
now, and it fixes up idle vs interrupt time measurement for cpu>0.

Revision 1.253 / (download) - annotate - [select for diffs], Sun Jan 3 12:44:34 2010 UTC (13 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.252: +4 -1 lines
Diff to previous 1.252 (colored)

reinsert part of the code accidentally deleted by the previous change.

Revision 1.252 / (download) - annotate - [select for diffs], Sun Jan 3 12:39:22 2010 UTC (13 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.251: +1 -41 lines
Diff to previous 1.251 (colored)

add two new members to struct intrhand: ih_realfun and ih_realarg, and
use them to take the kernel lock around non-IPL_VM interrupts, using
a intr_biglock_wrapper() function ike x86 does.

Revision 1.251 / (download) - annotate - [select for diffs], Sun Jan 3 11:44:58 2010 UTC (13 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.250: +9 -9 lines
Diff to previous 1.250 (colored)

use genassym generated names for struct intrhand elements and avoid magic.

Revision 1.250 / (download) - annotate - [select for diffs], Sun Dec 20 03:53:46 2009 UTC (13 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.249: +19 -17 lines
Diff to previous 1.249 (colored)

- remove unused ft_want_ast()
- give nmi_sun* ENTRY() points so they show up in symbols properly
- add some disabled code to use this cpu's idlelwp area when hatching
  a cpu, but right now it makes this worse not better...

Revision 1.249 / (download) - annotate - [select for diffs], Thu Dec 10 05:10:03 2009 UTC (13 years, 2 months ago) by rmind
Branch: MAIN
CVS Tags: matt-premerge-20091211
Changes since 1.248: +2 -2 lines
Diff to previous 1.248 (colored)

Rename L_ADDR to L_PCB and amend some comments accordingly.

Revision 1.248 / (download) - annotate - [select for diffs], Thu Nov 26 00:19:22 2009 UTC (13 years, 2 months ago) by matt
Branch: MAIN
Changes since 1.247: +1 -5 lines
Diff to previous 1.247 (colored)

Kill proc0paddr.  Use lwp0.l_addr instead.

Revision 1.243.10.2 / (download) - annotate - [select for diffs], Sat Jun 20 07:20:10 2009 UTC (13 years, 7 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.243.10.1: +39 -46 lines
Diff to previous 1.243.10.1 (colored) to branchpoint 1.243 (colored)

sync with head

Revision 1.247 / (download) - annotate - [select for diffs], Fri Jun 5 01:36:07 2009 UTC (13 years, 8 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, jymxensuspend-base
Changes since 1.246: +28 -38 lines
Diff to previous 1.246 (colored)

convert sparc "intrcnt" counters to evcnt(9) style.  XXX some of the names
could be better, but i just copied them from the old intrnames in locore.

i benchmarked this with a simple test of ircii ./configure && make, to see
if the additional load/store & arith would cause any noticeable degradation
as the change also converts 32 bit counters to 64 bits.  amusingly, the
only trend i saw in this was that for both portions, i see a consistent
(across at least 8 runs) benefit of about 0.8% improvement.  ie, the newer
larger code size / counter size code actually runs faster for some reason..
maybe there's a cacheline effect in the size of the code?


XXX the current implementation depends on a couple of things:
XXX   - ev_count member of evcnt{} is first and has offset 0
XXX   - that sizeof(struct evcnt) equals 32
XXX if these are not true, locore.s has #error's to catch it

Revision 1.246 / (download) - annotate - [select for diffs], Fri May 29 22:06:55 2009 UTC (13 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.245: +5 -1 lines
Diff to previous 1.245 (colored)

fix up cpu_setfunc() as noted by uwe:

- don't call lwp_startup for cpu_setfunc() users
- introduce lwp_setfunc_trampoline instead
- no need to set the "new" lwp for setfunc

Revision 1.245 / (download) - annotate - [select for diffs], Mon May 18 01:36:11 2009 UTC (13 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.244: +8 -9 lines
Diff to previous 1.244 (colored)

- retire union cpu_info_pg
- allocate space for each cpu_info{} in pmap_bootstrap
- remap cpu0's space into the PA currently in CPUINFO_VA
- cpus[] becomes an array of pointers to cpu_info{}, easy to traverse
- only call kernel lock for IPL_VM interrupts (?  as implemented on
  x86 and sparc64)
- revert a minor part of locore.s:1.241
- in cpu_hatch(), set %sp to near the middle of the interrupt stack.
  we only need a %sp until we get to run an MI thread (own idlelwp or
  real code)

we still waste one page of space, but this gets SMP much closer to
actually working again.

Revision 1.243.10.1 / (download) - annotate - [select for diffs], Mon May 4 08:11:55 2009 UTC (13 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.243: +2 -2 lines
Diff to previous 1.243 (colored)

sync with head.

Revision 1.243.12.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:30:43 2008 UTC (14 years, 7 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.243: +2 -2 lines
Diff to previous 1.243 (colored) next main 1.244 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.243.8.1 / (download) - annotate - [select for diffs], Wed Jun 4 02:04:56 2008 UTC (14 years, 8 months ago) by yamt
Branch: yamt-pf42
Changes since 1.243: +2 -2 lines
Diff to previous 1.243 (colored) next main 1.244 (colored)

sync with head

Revision 1.243.6.1 / (download) - annotate - [select for diffs], Mon Jun 2 13:22:41 2008 UTC (14 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.243: +2 -2 lines
Diff to previous 1.243 (colored) next main 1.244 (colored)

Sync with HEAD.

Revision 1.244 / (download) - annotate - [select for diffs], Sun May 25 15:56:12 2008 UTC (14 years, 8 months ago) by chs
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-nfs-mp-base4, yamt-nfs-mp-base3, 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, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, 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, mjf-devfs2-base, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20091211, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jym-xensuspend, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: netbsd-5, matt-nb5-mips64
Changes since 1.243: +2 -2 lines
Diff to previous 1.243 (colored)

enable profiling of assembly functions.

Revision 1.239.10.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:04:22 2008 UTC (14 years, 10 months ago) by matt
Branch: matt-armv6
Changes since 1.239.10.2: +21 -1 lines
Diff to previous 1.239.10.2 (colored) to branchpoint 1.239 (colored) next main 1.240 (colored)

sync with HEAD

Revision 1.240.2.3 / (download) - annotate - [select for diffs], Mon Feb 18 21:05:03 2008 UTC (14 years, 11 months ago) by mjf
Branch: mjf-devfs
Changes since 1.240.2.2: +21 -1 lines
Diff to previous 1.240.2.2 (colored) to branchpoint 1.240 (colored) next main 1.241 (colored)

Sync with HEAD.

Revision 1.215.6.6 / (download) - annotate - [select for diffs], Mon Jan 21 09:39:25 2008 UTC (15 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.215.6.5: +24 -4 lines
Diff to previous 1.215.6.5 (colored) to branchpoint 1.215 (colored) next main 1.216 (colored)

sync with head

Revision 1.242.4.1 / (download) - annotate - [select for diffs], Thu Jan 10 23:44:02 2008 UTC (15 years, 1 month ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.242: +21 -1 lines
Diff to previous 1.242 (colored) next main 1.243 (colored)

Sync with HEAD

Revision 1.239.10.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:48:58 2008 UTC (15 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.239.10.1: +12 -8 lines
Diff to previous 1.239.10.1 (colored) to branchpoint 1.239 (colored)

sync with HEAD

Revision 1.243 / (download) - annotate - [select for diffs], Tue Jan 8 21:32:11 2008 UTC (15 years, 1 month ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base2, yamt-pf42-base, yamt-nfs-mp-base2, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-nbase, hpcarm-cleanup-base, bouyer-xeni386-nbase, bouyer-xeni386-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, wrstuden-revivesa, mjf-devfs2
Changes since 1.242: +21 -1 lines
Diff to previous 1.242 (colored)

cpu_intr_p() for sparc, from Andrew Doran.

Revision 1.240.2.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:43:20 2007 UTC (15 years, 1 month ago) by mjf
Branch: mjf-devfs
Changes since 1.240.2.1: +4 -4 lines
Diff to previous 1.240.2.1 (colored) to branchpoint 1.240 (colored)

Sync with HEAD.

Revision 1.241.2.1 / (download) - annotate - [select for diffs], Wed Dec 26 19:42:46 2007 UTC (15 years, 1 month ago) by ad
Branch: vmlocking2
Changes since 1.241: +4 -4 lines
Diff to previous 1.241 (colored) next main 1.242 (colored)

Sync with head.

Revision 1.239.8.1 / (download) - annotate - [select for diffs], Sun Dec 9 19:36:18 2007 UTC (15 years, 2 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.239: +12 -8 lines
Diff to previous 1.239 (colored) next main 1.240 (colored)

Sync with HEAD.

Revision 1.242 / (download) - annotate - [select for diffs], Sat Dec 8 21:50:07 2007 UTC (15 years, 2 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, matt-armv6-base, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: bouyer-xeni386
Changes since 1.241: +4 -4 lines
Diff to previous 1.241 (colored)

catch up with the adses: IPL_CLOCK -> IPL_VM in a couple of places
that are #ifdef MULTIPROCESSOR.

MP sparc kernel faults inside proc0_init() yet.

Revision 1.240.2.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:17:54 2007 UTC (15 years, 2 months ago) by mjf
Branch: mjf-devfs
Changes since 1.240: +9 -5 lines
Diff to previous 1.240 (colored)

Sync with HEAD.

Revision 1.215.6.5 / (download) - annotate - [select for diffs], Fri Dec 7 17:26:15 2007 UTC (15 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.215.6.4: +9 -5 lines
Diff to previous 1.215.6.4 (colored) to branchpoint 1.215 (colored)

sync with head

Revision 1.231.2.2 / (download) - annotate - [select for diffs], Mon Dec 3 18:39:17 2007 UTC (15 years, 2 months ago) by ad
Branch: vmlocking
Changes since 1.231.2.1: +9 -5 lines
Diff to previous 1.231.2.1 (colored) to branchpoint 1.231 (colored) next main 1.232 (colored)

Sync with HEAD.

Revision 1.241 / (download) - annotate - [select for diffs], Mon Dec 3 15:34:22 2007 UTC (15 years, 2 months ago) by ad
Branch: MAIN
CVS Tags: vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base
Branch point for: vmlocking2
Changes since 1.240: +9 -5 lines
Diff to previous 1.240 (colored)

Interrupt handling changes, in discussion since February:

- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.

Revision 1.239.10.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:22:32 2007 UTC (15 years, 3 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.239: +1 -1 lines
Diff to previous 1.239 (colored)

sync with HEAD

Revision 1.240 / (download) - annotate - [select for diffs], Wed Oct 17 19:57:15 2007 UTC (15 years, 3 months ago) by garbled
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: mjf-devfs
Changes since 1.239: +1 -1 lines
Diff to previous 1.239 (colored)

Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree.  Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches.  The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.

Revision 1.215.6.4 / (download) - annotate - [select for diffs], Mon Sep 3 14:30:05 2007 UTC (15 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.215.6.3: +95 -502 lines
Diff to previous 1.215.6.3 (colored) to branchpoint 1.215 (colored)

sync with head.

Revision 1.231.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:02:26 2007 UTC (15 years, 7 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.231: +88 -491 lines
Diff to previous 1.231 (colored) next main 1.232 (colored)

Sync with head.

Revision 1.232.2.2 / (download) - annotate - [select for diffs], Tue Jun 26 18:13:36 2007 UTC (15 years, 7 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.232.2.1: +9 -4 lines
Diff to previous 1.232.2.1 (colored) to branchpoint 1.232 (colored) next main 1.233 (colored)

Sync with HEAD.

Revision 1.231.2.1 / (download) - annotate - [select for diffs], Sun May 27 12:28:18 2007 UTC (15 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.231: +88 -491 lines
Diff to previous 1.231 (colored)

Sync with head.

Revision 1.239 / (download) - annotate - [select for diffs], Wed May 23 14:51:16 2007 UTC (15 years, 8 months ago) by he
Branch: MAIN
CVS Tags: yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking-base, ppcoea-renovation-base, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup, bouyer-xenamd64
Branch point for: matt-armv6, jmcneill-pm
Changes since 1.238: +1 -2 lines
Diff to previous 1.238 (colored)

Remove MUNGE(NOP_ON_4M_15), that label no longer exists.

Revision 1.238 / (download) - annotate - [select for diffs], Tue May 22 18:15:58 2007 UTC (15 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.237: +9 -3 lines
Diff to previous 1.237 (colored)

cpu_switchto(): if oldlwp is NULL, don't bother saving it.

Revision 1.232.2.1 / (download) - annotate - [select for diffs], Tue May 22 17:27:30 2007 UTC (15 years, 8 months ago) by matt
Branch: ppcoea-renovation
Changes since 1.232: +83 -487 lines
Diff to previous 1.232 (colored)

Update to HEAD.

Revision 1.237 / (download) - annotate - [select for diffs], Mon May 21 22:16:35 2007 UTC (15 years, 8 months ago) by martin
Branch: MAIN
Changes since 1.236: +2 -2 lines
Diff to previous 1.236 (colored)

Fix cpu_idle() for machines that have a idlespin function - use a
sibling call to invoke it (cpu_idle pretends to be a leaf function).
Pointed out by uwe.

Revision 1.236 / (download) - annotate - [select for diffs], Sun May 20 23:09:13 2007 UTC (15 years, 8 months ago) by macallan
Branch: MAIN
Changes since 1.235: +2 -2 lines
Diff to previous 1.235 (colored)

fix typo in cpu_idle - the function we want to call is in %01 not %o3

Revision 1.235 / (download) - annotate - [select for diffs], Sat May 19 23:08:48 2007 UTC (15 years, 8 months ago) by uwe
Branch: MAIN
Changes since 1.234: +16 -9 lines
Diff to previous 1.234 (colored)

Make lwp_trampoline comment explain how things are set up in more details.
While here, fix gimplish in the inline comment too (hi, phone!)

Revision 1.234 / (download) - annotate - [select for diffs], Sat May 19 22:57:47 2007 UTC (15 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.233: +3 -4 lines
Diff to previous 1.233 (colored)

fix the two problems i introduced with yamt-idlelwp:

- in lwp_trampoline, oldlwp is already in %o0.  don't save or the wrongly
  saved copy from cpu_lwp_fork().  as repeatedly pointed out my uwe.

- in cpu_idle use retl not ret.  as pointed out by martin.


thanks to uwe/martin/tnn for all the real debugging work.

Revision 1.233 / (download) - annotate - [select for diffs], Thu May 17 14:51:30 2007 UTC (15 years, 8 months ago) by yamt
Branch: MAIN
Changes since 1.232: +72 -482 lines
Diff to previous 1.232 (colored)

merge yamt-idlelwp branch.  asked by core@.  some ports still needs work.

from doc/BRANCHES:

	idle lwp, and some changes depending on it.

	1. separate context switching and thread scheduling.
	   (cf. gmcgarry_ctxsw)
	2. implement idle lwp.
	3. clean up related MD/MI interfaces.
	4. make scheduler(s) modular.

Revision 1.228.2.4 / (download) - annotate - [select for diffs], Mon May 7 10:55:03 2007 UTC (15 years, 9 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.228.2.3: +1 -1 lines
Diff to previous 1.228.2.3 (colored) to branchpoint 1.228 (colored) next main 1.229 (colored)

sync with head.

Revision 1.228.2.3 / (download) - annotate - [select for diffs], Sat Apr 28 03:55:24 2007 UTC (15 years, 9 months ago) by mrg
Branch: yamt-idlelwp
Changes since 1.228.2.2: +72 -486 lines
Diff to previous 1.228.2.2 (colored) to branchpoint 1.228 (colored)

port yamt-idlelwp to sparc.  this does not work yet, but others have
asked that i commit this work-in-progress.

currently kernel threads end up running with PSR_S missing from %psr
and end up failing to dump a user corefile.

Revision 1.232 / (download) - annotate - [select for diffs], Sat Apr 21 10:45:45 2007 UTC (15 years, 9 months ago) by rjs
Branch: MAIN
CVS Tags: yamt-idlelwp-base8
Branch point for: ppcoea-renovation
Changes since 1.231: +1 -5 lines
Diff to previous 1.231 (colored)

Don't need to save lwp for use in lwp_exit2().

Revision 1.228.2.2 / (download) - annotate - [select for diffs], Mon Mar 12 05:50:43 2007 UTC (15 years, 11 months ago) by rmind
Branch: yamt-idlelwp
Changes since 1.228.2.1: +8 -10 lines
Diff to previous 1.228.2.1 (colored) to branchpoint 1.228 (colored)

Sync with HEAD.

Revision 1.231 / (download) - annotate - [select for diffs], Sun Mar 4 06:00:46 2007 UTC (15 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.230: +5 -5 lines
Diff to previous 1.230 (colored)

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

Revision 1.230 / (download) - annotate - [select for diffs], Sun Mar 4 04:00:00 2007 UTC (15 years, 11 months ago) by uwe
Branch: MAIN
Changes since 1.229: +4 -6 lines
Diff to previous 1.229 (colored)

G/c NOP_ON_4_4C_1 that used to be part of microtime.
Keep for reference but ifdef out the code to munge 4/4c nops
as there are none left.

Revision 1.228.2.1 / (download) - annotate - [select for diffs], Tue Feb 27 16:53:11 2007 UTC (15 years, 11 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.228: +2 -4 lines
Diff to previous 1.228 (colored)

- sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.

Revision 1.215.6.3 / (download) - annotate - [select for diffs], Mon Feb 26 09:08:20 2007 UTC (15 years, 11 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.215.6.2: +1 -7 lines
Diff to previous 1.215.6.2 (colored) to branchpoint 1.215 (colored)

sync with head.

Revision 1.229 / (download) - annotate - [select for diffs], Mon Feb 26 06:06:32 2007 UTC (15 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Changes since 1.228: +2 -4 lines
Diff to previous 1.228 (colored)

- don't call lwp_exit2().  ad@ says it isn't required anymore.
- load uvm.page_idle_zero with "ldub" instead of "ld", avoiding an
  unaligned access panic introduced since the int->bool changes.

now a -current kernel (both UP and MP) boot on my SS20 as long as
i have "options LOCKDEBUG" as well.

Revision 1.228 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:12 2007 UTC (16 years ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge
Branch point for: yamt-idlelwp
Changes since 1.227: +1 -7 lines
Diff to previous 1.227 (colored)

Merge newlock2 to head.

Revision 1.227.4.2 / (download) - annotate - [select for diffs], Tue Jan 30 11:45:27 2007 UTC (16 years ago) by ad
Branch: newlock2
Changes since 1.227.4.1: +1 -7 lines
Diff to previous 1.227.4.1 (colored) to branchpoint 1.227 (colored) next main 1.228 (colored)

For now always call sched_unlock_idle/sched_lock_idle. They will be
removed by yamt's cpu_switchto() changes.

Revision 1.227.4.1 / (download) - annotate - [select for diffs], Thu Jan 11 22:22:57 2007 UTC (16 years ago) by ad
Branch: newlock2
Changes since 1.227: +4 -4 lines
Diff to previous 1.227 (colored)

Checkpoint work in progress.

Revision 1.215.6.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:46:58 2006 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.215.6.1: +3 -2 lines
Diff to previous 1.215.6.1 (colored) to branchpoint 1.215 (colored)

sync with head.

Revision 1.224.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:43:24 2006 UTC (16 years, 5 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.224: +11 -144 lines
Diff to previous 1.224 (colored) next main 1.225 (colored)

sync with head

Revision 1.224.8.3 / (download) - annotate - [select for diffs], Fri Aug 11 15:42:47 2006 UTC (16 years, 6 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.224.8.2: +3 -2 lines
Diff to previous 1.224.8.2 (colored) to branchpoint 1.224 (colored) next main 1.225 (colored)

sync with head

Revision 1.226.2.1 / (download) - annotate - [select for diffs], Thu Jul 13 17:49:03 2006 UTC (16 years, 6 months ago) by gdamore
Branch: gdamore-uart
Changes since 1.226: +3 -2 lines
Diff to previous 1.226 (colored) next main 1.227 (colored)

Merge from HEAD.

Revision 1.227 / (download) - annotate - [select for diffs], Wed Jun 28 20:55:45 2006 UTC (16 years, 7 months ago) by martin
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.226: +3 -2 lines
Diff to previous 1.226 (colored)

Align the size and alignment of label_t (kernel jmp_buf equivalent)
with the use in setjmp/longjmp. Duh!
This makes DDB work again on sparc kernels compiled with gcc4.

Revision 1.224.8.2 / (download) - annotate - [select for diffs], Mon Jun 26 12:45:29 2006 UTC (16 years, 7 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.224.8.1: +3 -137 lines
Diff to previous 1.224.8.1 (colored) to branchpoint 1.224 (colored)

sync with head.

Revision 1.215.6.1 / (download) - annotate - [select for diffs], Wed Jun 21 14:56:12 2006 UTC (16 years, 7 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.215: +117 -144 lines
Diff to previous 1.215 (colored)

sync with head.

Revision 1.225.2.1 / (download) - annotate - [select for diffs], Mon Jun 19 03:45:06 2006 UTC (16 years, 7 months ago) by chap
Branch: chap-midi
Changes since 1.225: +3 -137 lines
Diff to previous 1.225 (colored) next main 1.226 (colored)

Sync with head.

Revision 1.226 / (download) - annotate - [select for diffs], Wed Jun 7 22:38:49 2006 UTC (16 years, 8 months ago) by kardel
Branch: MAIN
CVS Tags: yamt-pdpolicy-base6, gdamore-uart-base, chap-midi-nbase, chap-midi-base
Branch point for: gdamore-uart
Changes since 1.225: +3 -137 lines
Diff to previous 1.225 (colored)

convert to timecounters (from branch simonb-timecounters)

Revision 1.224.6.2 / (download) - annotate - [select for diffs], Thu Jun 1 22:35:25 2006 UTC (16 years, 8 months ago) by kardel
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.224.6.1: +7 -7 lines
Diff to previous 1.224.6.1 (colored) to branchpoint 1.224 (colored) next main 1.225 (colored)

Sync with head.

Revision 1.224.6.1 / (download) - annotate - [select for diffs], Sat May 27 22:49:52 2006 UTC (16 years, 8 months ago) by kardel
Branch: simonb-timecounters
Changes since 1.224: +3 -137 lines
Diff to previous 1.224 (colored)

convert to timecounters

Revision 1.224.12.1 / (download) - annotate - [select for diffs], Wed May 24 15:48:22 2006 UTC (16 years, 8 months ago) by tron
Branch: peter-altq
Changes since 1.224: +7 -7 lines
Diff to previous 1.224 (colored) next main 1.225 (colored)

Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.224.8.1 / (download) - annotate - [select for diffs], Wed May 24 10:57:14 2006 UTC (16 years, 8 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.224: +7 -7 lines
Diff to previous 1.224 (colored)

sync with head.

Revision 1.225 / (download) - annotate - [select for diffs], Fri May 12 06:01:02 2006 UTC (16 years, 9 months ago) by skrll
Branch: MAIN
CVS Tags: yamt-pdpolicy-base5, simonb-timecounters-base
Branch point for: chap-midi
Changes since 1.224: +7 -7 lines
Diff to previous 1.224 (colored)

Fix some comments.

Revision 1.188.2.6 / (download) - annotate - [select for diffs], Sun Dec 11 10:28:36 2005 UTC (17 years, 2 months ago) by christos
Branch: ktrace-lwp
Changes since 1.188.2.5: +13 -13 lines
Diff to previous 1.188.2.5 (colored) next main 1.189 (colored)

Sync with head.

Revision 1.222.2.1 / (download) - annotate - [select for diffs], Tue Nov 22 16:08:03 2005 UTC (17 years, 2 months ago) by yamt
Branch: yamt-readahead
Changes since 1.222: +13 -13 lines
Diff to previous 1.222 (colored) next main 1.223 (colored)

sync with head.

Revision 1.224 / (download) - annotate - [select for diffs], Wed Nov 16 03:00:23 2005 UTC (17 years, 2 months ago) by uwe
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-readahead-base3, yamt-readahead-base2, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base, ktrace-lwp-base, elad-kernelauth-base, elad-kernelauth
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, peter-altq
Changes since 1.223: +10 -10 lines
Diff to previous 1.223 (colored)

Drop trailing whitespace.

Revision 1.223 / (download) - annotate - [select for diffs], Mon Nov 14 21:40:25 2005 UTC (17 years, 2 months ago) by uwe
Branch: MAIN
Changes since 1.222: +4 -4 lines
Diff to previous 1.222 (colored)

Protect all places that refer to _redzone with
#if defined(DEBUG) && !defined(MULTIPROCESSOR)
Makes MULTIPROCESSOR + KGDB compilable.

Revision 1.188.2.5 / (download) - annotate - [select for diffs], Thu Nov 10 13:59:08 2005 UTC (17 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.188.2.4: +123 -16 lines
Diff to previous 1.188.2.4 (colored)

Sync with HEAD. Here we go again...

Revision 1.221.2.1 / (download) - annotate - [select for diffs], Wed Oct 26 08:32:44 2005 UTC (17 years, 3 months ago) by yamt
Branch: yamt-vop
Changes since 1.221: +5 -1 lines
Diff to previous 1.221 (colored) next main 1.222 (colored)

sync with head

Revision 1.222 / (download) - annotate - [select for diffs], Wed Oct 26 01:30:20 2005 UTC (17 years, 3 months ago) by uwe
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base
Branch point for: yamt-readahead
Changes since 1.221: +5 -1 lines
Diff to previous 1.221 (colored)

sigcode is needed only for COMPAT_16.

Revision 1.221 / (download) - annotate - [select for diffs], Sun Oct 16 16:34:17 2005 UTC (17 years, 3 months ago) by uwe
Branch: MAIN
CVS Tags: yamt-vop-base, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-vop
Changes since 1.220: +3 -3 lines
Diff to previous 1.220 (colored)

Shave off one instruction in _syscall.

Revision 1.220 / (download) - annotate - [select for diffs], Fri Sep 30 22:09:29 2005 UTC (17 years, 4 months ago) by macallan
Branch: MAIN
Changes since 1.219: +17 -18 lines
Diff to previous 1.219 (colored)

fix borked MicroSPARC IIep microtime() from previous version.

Revision 1.219 / (download) - annotate - [select for diffs], Sat Sep 24 22:44:44 2005 UTC (17 years, 4 months ago) by macallan
Branch: MAIN
Changes since 1.218: +19 -2 lines
Diff to previous 1.218 (colored)

add a function pointer to struct cpu_info:
void idlespin(struct cpu_info *)
which is called whenever the CPU is idle and uvm_pageidlezero() has nothing to
do

Revision 1.218 / (download) - annotate - [select for diffs], Sat Sep 24 22:30:15 2005 UTC (17 years, 4 months ago) by macallan
Branch: MAIN
Changes since 1.217: +34 -15 lines
Diff to previous 1.217 (colored)

Run the MicroSPARC IIep PCI bus without endianness translation.
This allows us to run X without any additional code changes.

Revision 1.217 / (download) - annotate - [select for diffs], Sat Sep 10 01:27:54 2005 UTC (17 years, 5 months ago) by uwe
Branch: MAIN
Changes since 1.216: +64 -1 lines
Diff to previous 1.216 (colored)

Hanlde NMI on microSPARC-IIep.

We don't do much useful except reporting, but that's better than to
stupidly use sun4m handler and wedge the machine.  May need to revisit
what's fatal.

Prodding by macallan@

Revision 1.216 / (download) - annotate - [select for diffs], Sun Jul 10 17:02:19 2005 UTC (17 years, 7 months ago) by christos
Branch: MAIN
Changes since 1.215: +7 -2 lines
Diff to previous 1.215 (colored)

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

Revision 1.198.2.1.2.1 / (download) - annotate - [select for diffs], Fri May 6 00:17:27 2005 UTC (17 years, 9 months ago) by riz
Branch: netbsd-2
CVS Tags: netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1
Changes since 1.198.2.1: +10 -2 lines
Diff to previous 1.198.2.1 (colored) next main 1.199 (colored)

Pull up revision 1.215 (requested by pk in ticket #1154):
sun4/sun4c sw interrupt entry: check interrupt register to determine to
see whether there is a pending software interrupt at the given level.
If not, it must be a device interrupt sharing that level.

Revision 1.214.4.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:28:23 2005 UTC (17 years, 9 months ago) by kent
Branch: kent-audio2
Changes since 1.214: +10 -2 lines
Diff to previous 1.214 (colored) next main 1.215 (colored)

sync with -current

Revision 1.214.6.1 / (download) - annotate - [select for diffs], Sat Feb 12 18:17:40 2005 UTC (17 years, 11 months ago) by yamt
Branch: yamt-km
Changes since 1.214: +10 -2 lines
Diff to previous 1.214 (colored) next main 1.215 (colored)

sync with head.

Revision 1.188.2.4 / (download) - annotate - [select for diffs], Fri Feb 4 11:44:56 2005 UTC (18 years ago) by skrll
Branch: ktrace-lwp
Changes since 1.188.2.3: +10 -2 lines
Diff to previous 1.188.2.3 (colored)

Sync with HEAD.

Revision 1.215 / (download) - annotate - [select for diffs], Tue Feb 1 22:33:02 2005 UTC (18 years ago) by pk
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, kent-audio2-base
Branch point for: yamt-lazymbuf
Changes since 1.214: +10 -2 lines
Diff to previous 1.214 (colored)

sun4/sun4c sw interrupt entry: check interrupt register to determine to
see whether there is a pending software interrupt at the given level.
If not, it must be a device interrupt sharing that level.

Revision 1.188.2.3 / (download) - annotate - [select for diffs], Tue Sep 21 13:22:33 2004 UTC (18 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.188.2.2: +1 -1 lines
Diff to previous 1.188.2.2 (colored)

Fix the sync with head I botched.

Revision 1.188.2.2 / (download) - annotate - [select for diffs], Sat Sep 18 14:40:48 2004 UTC (18 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.188.2.1: +0 -0 lines
Diff to previous 1.188.2.1 (colored)

Sync with HEAD.

Revision 1.188.2.1 / (download) - annotate - [select for diffs], Tue Aug 3 10:41:08 2004 UTC (18 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.188: +364 -641 lines
Diff to previous 1.188 (colored)

Sync with HEAD

Revision 1.214 / (download) - annotate - [select for diffs], Sun Jul 4 09:54:20 2004 UTC (18 years, 7 months ago) by pk
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.213: +19 -8 lines
Diff to previous 1.213 (colored)

cpu_simple_lock: on spin out, check whether we've already panicked. If so,
just take the lock on the assumption that in panic mode, we run on a single
CPU anyway.

Revision 1.213 / (download) - annotate - [select for diffs], Sun Jul 4 09:11:33 2004 UTC (18 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.212: +2 -2 lines
Diff to previous 1.212 (colored)

Fix typo in CHECK_SP_REDZONE() which has been there since the beginning of time.

Revision 1.212 / (download) - annotate - [select for diffs], Thu May 13 16:34:22 2004 UTC (18 years, 8 months ago) by pooka
Branch: MAIN
Changes since 1.211: +1 -1 lines
Diff to previous 1.211 (colored)

10+ entries in the kernel sources can't be wrong ... no, wait, they can:
it really is "panicking" instead of "panicing", so revert rev 1.211

thanks to Klaus for holding the spelling bee

Revision 1.211 / (download) - annotate - [select for diffs], Thu May 13 15:20:18 2004 UTC (18 years, 8 months ago) by pooka
Branch: MAIN
Changes since 1.210: +2 -2 lines
Diff to previous 1.210 (colored)

typo in comment: panicking -> panicing

Revision 1.210 / (download) - annotate - [select for diffs], Tue May 4 15:48:45 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.209: +1 -3 lines
Diff to previous 1.209 (colored)

`uvmexp.swtch++' is already done in exit1().

Revision 1.209 / (download) - annotate - [select for diffs], Sun May 2 11:22:06 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.208: +7 -11 lines
Diff to previous 1.208 (colored)

The cpu_exit() detour is no longer necessary.

Revision 1.208 / (download) - annotate - [select for diffs], Wed Apr 28 12:36:48 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.207: +55 -2 lines
Diff to previous 1.207 (colored)

Fast trap handler for Illegal Instruction traps for (user space) FLUSH
instructions (these occur only on Cypress CPUs).

Revision 1.198.2.1 / (download) - annotate - [select for diffs], Sat Apr 24 18:30:47 2004 UTC (18 years, 9 months ago) by jdc
Branch: netbsd-2-0
CVS Tags: netbsd-2-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE
Branch point for: netbsd-2
Changes since 1.198: +257 -13 lines
Diff to previous 1.198 (colored) next main 1.199 (colored)

Pull up revisions 1.199-1.207 (requested by pk in ticket #179)

Many fixes for issues with sparc multi-processor support (includes
fixes to make HyperSPARC MP work).

Revision 1.207 / (download) - annotate - [select for diffs], Tue Apr 20 08:38:41 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.206: +2 -3 lines
Diff to previous 1.206 (colored)

Always provide the __cpu_simple_lock() entry point (for LKMs).

Revision 1.206 / (download) - annotate - [select for diffs], Tue Apr 20 08:36:46 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.205: +12 -1 lines
Diff to previous 1.205 (colored)

Provide a fast trap path for AST IPIs.

Revision 1.205 / (download) - annotate - [select for diffs], Mon Apr 19 10:01:41 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.204: +2 -2 lines
Diff to previous 1.204 (colored)

CMP_PTE_USER_READ4M: drop instruction that's effectively a no-op.

Revision 1.204 / (download) - annotate - [select for diffs], Sun Apr 18 20:44:39 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.203: +11 -10 lines
Diff to previous 1.203 (colored)

Various ft_srmmu_vcache_*() functions: use `branch on greater (unsigned)'
instead of `branch on positive'.

Revision 1.203 / (download) - annotate - [select for diffs], Sun Apr 18 19:20:09 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.202: +35 -1 lines
Diff to previous 1.202 (colored)

Make inlining __cpu_simple_lock() optional. Add a version with a built-in
spin out counter that panics with a diagnostic.

Revision 1.202 / (download) - annotate - [select for diffs], Sat Apr 17 23:28:44 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.201: +8 -7 lines
Diff to previous 1.201 (colored)

Update fast xcall interrupt event counter.
ft_srmmu_vcache_flush_range: adjust length for address alignment

Revision 1.201 / (download) - annotate - [select for diffs], Sat Apr 17 11:55:06 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.200: +10 -8 lines
Diff to previous 1.200 (colored)

When acknowledging a sun4m soft interrupt, read back the pending interrupts
hw register to make sure it gets through on Ross CPUs.

Revision 1.200 / (download) - annotate - [select for diffs], Sat Apr 17 11:26:36 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.199: +14 -7 lines
Diff to previous 1.199 (colored)

The macro CMP_PTE_USER_READ4M now needs to consider more PTE access
rights combinations, since the access rights table in pmap has changed.

Revision 1.199 / (download) - annotate - [select for diffs], Sat Apr 17 10:06:29 2004 UTC (18 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.198: +192 -3 lines
Diff to previous 1.198 (colored)

Implement fast trap handlers for TLB and cache flushes.

Revision 1.198 / (download) - annotate - [select for diffs], Sun Mar 21 14:04:30 2004 UTC (18 years, 10 months ago) by pk
Branch: MAIN
CVS Tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Changes since 1.197: +9 -1 lines
Diff to previous 1.197 (colored)

Add openfirmware() entry point, since it's no longer defined as a macro
in openfirm.c.

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

Uppercase CPU, plural is CPUs.

Revision 1.196 / (download) - annotate - [select for diffs], Sun Nov 16 14:56:05 2003 UTC (19 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.195: +3 -594 lines
Diff to previous 1.195 (colored)

Drop the old cpu_switch() code.

Revision 1.195 / (download) - annotate - [select for diffs], Sat Nov 8 14:04:26 2003 UTC (19 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.194: +10 -10 lines
Diff to previous 1.194 (colored)

Construct arguments properly and update comment in previous bzero -> memset
changes.

Revision 1.194 / (download) - annotate - [select for diffs], Sat Nov 8 13:21:36 2003 UTC (19 years, 3 months ago) by martin
Branch: MAIN
Changes since 1.193: +3 -4 lines
Diff to previous 1.193 (colored)

Fix previous (bzero -> memset), it overlooked the delay slot.
Use set and clr pseudo instructions to simplify the code a bit.

Revision 1.193 / (download) - annotate - [select for diffs], Sat Nov 8 08:09:38 2003 UTC (19 years, 3 months ago) by jdolecek
Branch: MAIN
Changes since 1.192: +2 -2 lines
Diff to previous 1.192 (colored)

use "mov 0, %o1" instead of kinda strange "sethi 0, %o1" in previous
pointed out by Matthew Green

Revision 1.192 / (download) - annotate - [select for diffs], Sat Nov 8 07:39:18 2003 UTC (19 years, 3 months ago) by jdolecek
Branch: MAIN
Changes since 1.191: +5 -4 lines
Diff to previous 1.191 (colored)

use memset() instead of bzero()

Revision 1.191 / (download) - annotate - [select for diffs], Fri Nov 7 14:54:29 2003 UTC (19 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.190: +7 -3 lines
Diff to previous 1.190 (colored)

cpu_switch: values in global registers are not preserved across function calls.

Revision 1.190 / (download) - annotate - [select for diffs], Wed Oct 15 07:49:41 2003 UTC (19 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.189: +3 -3 lines
Diff to previous 1.189 (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.189 / (download) - annotate - [select for diffs], Sun Oct 5 21:13:23 2003 UTC (19 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.188: +2 -2 lines
Diff to previous 1.188 (colored)

sparc kernel support for SA_SIGINFO.

Revision 1.188 / (download) - annotate - [select for diffs], Tue Apr 8 01:51:46 2003 UTC (19 years, 10 months ago) by uwe
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.187: +13 -13 lines
Diff to previous 1.187 (colored)

Make v8_*_len symbols local so that they don't get in the way in ddb.

Revision 1.187 / (download) - annotate - [select for diffs], Wed Feb 26 17:39:07 2003 UTC (19 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.186: +1 -18 lines
Diff to previous 1.186 (colored)

Move all `ID prom' stuff into the prom library.

Revision 1.186 / (download) - annotate - [select for diffs], Fri Feb 21 19:04:07 2003 UTC (19 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.185: +44 -22 lines
Diff to previous 1.185 (colored)

Allow the kernel to be loaded at its link address (aka KERNBASE) by the
boot program.

Revision 1.185 / (download) - annotate - [select for diffs], Sat Jan 18 06:45:03 2003 UTC (20 years ago) by thorpej
Branch: MAIN
Changes since 1.184: +79 -55 lines
Diff to previous 1.184 (colored)

Merge the nathanw_sa branch.

Revision 1.148.4.26 / (download) - annotate - [select for diffs], Fri Jan 17 16:23:31 2003 UTC (20 years ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.148.4.25: +1 -2 lines
Diff to previous 1.148.4.25 (colored) to branchpoint 1.148 (colored) next main 1.149 (colored)

Sync with HEAD.

Revision 1.148.4.25 / (download) - annotate - [select for diffs], Fri Jan 17 15:18:54 2003 UTC (20 years ago) by pk
Branch: nathanw_sa
Changes since 1.148.4.24: +71 -69 lines
Diff to previous 1.148.4.24 (colored) to branchpoint 1.148 (colored)

Sync with HEAD.

Revision 1.184 / (download) - annotate - [select for diffs], Fri Jan 17 14:49:45 2003 UTC (20 years ago) by pk
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base
Changes since 1.183: +68 -59 lines
Diff to previous 1.183 (colored)

cpu_switch:
* return `switched to same process' only if that process was actually
  already on a run queue when we entered.
* skip the switch to the idle stack if we can switch immediately
* .. and because of this, don't release the scheduler lock until after
  we've fully switched to the new process's stack.

Revision 1.183 / (download) - annotate - [select for diffs], Fri Jan 17 10:36:19 2003 UTC (20 years ago) by pk
Branch: MAIN
Changes since 1.182: +5 -5 lines
Diff to previous 1.182 (colored)

Don't grab the kernel lock for system timer interrupts; this mostly prevents
stalls in system time processing.

XXX - deal with non-atomic global time variables updates later.

Revision 1.148.4.24 / (download) - annotate - [select for diffs], Wed Jan 15 18:40:16 2003 UTC (20 years ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.23: +41 -18 lines
Diff to previous 1.148.4.23 (colored) to branchpoint 1.148 (colored)

Sync with HEAD.

Revision 1.182 / (download) - annotate - [select for diffs], Mon Jan 13 15:50:51 2003 UTC (20 years ago) by mrg
Branch: MAIN
Changes since 1.181: +5 -6 lines
Diff to previous 1.181 (colored)

remove cpu_hatched, cpu_hatch_sc and cpu_hatchstack.  the first can use
the cpi->flags, the second is unused and the third is also cpi-idle_u.

Revision 1.181 / (download) - annotate - [select for diffs], Sun Jan 12 06:11:01 2003 UTC (20 years, 1 month ago) by uwe
Branch: MAIN
Changes since 1.180: +2 -2 lines
Diff to previous 1.180 (colored)

Account softintr_common as uvmexp.softs, not uvmexp.intrs.

Revision 1.180 / (download) - annotate - [select for diffs], Sat Jan 11 03:40:32 2003 UTC (20 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.179: +23 -1 lines
Diff to previous 1.179 (colored)

keep track of which cpu's have run a pmap and only broadcast tlb flushes to
cpu's who have done so.  implement pmap_deactivate() for MULTIPROCESSOR and
call it from cpu_switch() when we are about to switch proces and when we
enter idle().

with this change, i see significantly reduced tlb IPI traffic and fork/exec
bound processes -- such as "configure" -- run significantly faster, upto
15%.  i also obvserved a small (0-2%) benefit to CPU bound tasks as well.

Revision 1.179 / (download) - annotate - [select for diffs], Fri Jan 10 16:34:14 2003 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.178: +14 -19 lines
Diff to previous 1.178 (colored)

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

Revision 1.148.4.23 / (download) - annotate - [select for diffs], Tue Jan 7 21:21:29 2003 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.22: +2 -25 lines
Diff to previous 1.148.4.22 (colored) to branchpoint 1.148 (colored)

Sync with HEAD.

Revision 1.178 / (download) - annotate - [select for diffs], Tue Jan 7 12:09:00 2003 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.177: +2 -25 lines
Diff to previous 1.177 (colored)

Let all CPUs play..

Revision 1.148.4.22 / (download) - annotate - [select for diffs], Mon Jan 6 22:12:28 2003 UTC (20 years, 1 month ago) by martin
Branch: nathanw_sa
Changes since 1.148.4.21: +27 -20 lines
Diff to previous 1.148.4.21 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.148.4.21 / (download) - annotate - [select for diffs], Sun Jan 5 22:38:16 2003 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.20: +1 -12 lines
Diff to previous 1.148.4.20 (colored) to branchpoint 1.148 (colored)

Remove the upcall trampoline, and invoke the upcall directly.  Also,
there is no need to fiddle with register windows here, nor to save the
arguments to the stack.

Reviewed by uwe.

Revision 1.177 / (download) - annotate - [select for diffs], Sat Jan 4 19:25:36 2003 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.176: +11 -12 lines
Diff to previous 1.176 (colored)

Grab the kernel lock on interrupts at level IPL_CLOCK and lower.

Revision 1.176 / (download) - annotate - [select for diffs], Sat Jan 4 11:09:18 2003 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.175: +18 -10 lines
Diff to previous 1.175 (colored)

new cpu_switch: SMP: even if we pick up the same process after idling, we
must reset its context as the process might have run on another cpu in
between and had its context changed, e.g. by exec(2).

Revision 1.148.4.20 / (download) - annotate - [select for diffs], Fri Jan 3 20:01:56 2003 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.19: +3 -12 lines
Diff to previous 1.148.4.19 (colored) to branchpoint 1.148 (colored)

Pass exit2 or lwp_exit2 to switchexit(), as is suggested in comments,
and eliminate switchlwpexit().

Revision 1.148.4.19 / (download) - annotate - [select for diffs], Fri Jan 3 19:29:57 2003 UTC (20 years, 1 month ago) by pk
Branch: nathanw_sa
Changes since 1.148.4.18: +30 -22 lines
Diff to previous 1.148.4.18 (colored) to branchpoint 1.148 (colored)

Apply SA changes to ALT_SWITCH_CODE.

Revision 1.148.4.18 / (download) - annotate - [select for diffs], Fri Jan 3 16:55:26 2003 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.17: +596 -15 lines
Diff to previous 1.148.4.17 (colored) to branchpoint 1.148 (colored)

Sync with HEAD.

XXX ALT_SWITCH_CODE is not yet LWP'ified.

Revision 1.175 / (download) - annotate - [select for diffs], Wed Jan 1 16:17:10 2003 UTC (20 years, 1 month ago) by pk
Branch: MAIN
CVS Tags: fvdl_fs64_base
Changes since 1.174: +23 -3 lines
Diff to previous 1.174 (colored)

SMP: lock kernel for soft interrupts < IPL_SCHED as well.

Revision 1.174 / (download) - annotate - [select for diffs], Tue Dec 31 17:07:36 2002 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.173: +4 -5 lines
Diff to previous 1.173 (colored)

Slight optimisation in proc_trampoline().

Revision 1.173 / (download) - annotate - [select for diffs], Tue Dec 31 16:17:12 2002 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.172: +571 -11 lines
Diff to previous 1.172 (colored)

New version of cpu_switch/switchexit, mostly to simplify SMP support. It's
currently conditional on ALT_SWITCH_CODE (defaults to `on' if MULTIPROCESSOR
is defined) until more testing rounds are completed.

Revision 1.172 / (download) - annotate - [select for diffs], Tue Dec 31 14:34:54 2002 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.171: +5 -3 lines
Diff to previous 1.171 (colored)

nmi_sun4m: run handler at splhigh()

Revision 1.148.4.17 / (download) - annotate - [select for diffs], Tue Dec 31 01:03:49 2002 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.16: +3 -18 lines
Diff to previous 1.148.4.16 (colored) to branchpoint 1.148 (colored)

Rename cpu_preempt() to cpu_switchto(), and make the caller remove the
new process from its run queue before calling cpu_switchto().

While here, make a few cpu_switch() and cpu_switchto() implementations
get the outgoing LWP from the args, rather than looking at the curlwp
variable.

Revision 1.148.4.16 / (download) - annotate - [select for diffs], Sun Dec 29 19:40:28 2002 UTC (20 years, 1 month ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.15: +16 -6 lines
Diff to previous 1.148.4.15 (colored) to branchpoint 1.148 (colored)

Sync with HEAD.

Revision 1.171 / (download) - annotate - [select for diffs], Mon Dec 23 00:55:16 2002 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.170: +2 -2 lines
Diff to previous 1.170 (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.170 / (download) - annotate - [select for diffs], Sat Dec 21 11:57:41 2002 UTC (20 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.169: +15 -5 lines
Diff to previous 1.169 (colored)

* cpu_hatch(): enable interrupts upon return from cpu_setup().
* interrupt trap: acquire the kernel lock only for interrupt levels <= PIL_SCHED

Revision 1.148.4.15 / (download) - annotate - [select for diffs], Wed Dec 11 06:12:13 2002 UTC (20 years, 2 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.148.4.14: +101 -57 lines
Diff to previous 1.148.4.14 (colored) to branchpoint 1.148 (colored)

Sync with HEAD.

Revision 1.169 / (download) - annotate - [select for diffs], Mon Dec 9 16:13:23 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
CVS Tags: gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw
Changes since 1.168: +2 -2 lines
Diff to previous 1.168 (colored)

Soft interrupts use their own set of handlers lists.

Revision 1.168 / (download) - annotate - [select for diffs], Sun Dec 8 16:16:59 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.167: +7 -8 lines
Diff to previous 1.167 (colored)

cpu_switch(): avoid raising the interrupt level and enabling traps at the
same time as this may cause a spurious interrupt in some implementations.
Pointed out by uwe.

Revision 1.167 / (download) - annotate - [select for diffs], Fri Dec 6 17:45:39 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.166: +3 -46 lines
Diff to previous 1.166 (colored)

ienab_bi[cs] are never used in a context common to both sun4/4c and sun4m,
so there's no point in constructing common entry points for them in locore.s.

Revision 1.166 / (download) - annotate - [select for diffs], Fri Dec 6 16:04:12 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.165: +13 -3 lines
Diff to previous 1.165 (colored)

Pass the `device class interrupt level' on to intr_establish() and use to
raise the ipl in the interrupt handlers to the appropriate level. This avoids
interrupt handler interference if one of the devices actually interrupts at
a lower hardware level than the maximum level assined to a device class.

Based on code from Art Grabowski in openbsd.

Revision 1.165 / (download) - annotate - [select for diffs], Fri Nov 29 07:56:50 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.164: +11 -10 lines
Diff to previous 1.164 (colored)

Provide the V8 mul/div routines for SUN4D as well.

Revision 1.164 / (download) - annotate - [select for diffs], Thu Nov 28 15:32:15 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.163: +81 -69 lines
Diff to previous 1.163 (colored)

Move the installation of v8 specific .mul/.div functions into a separate
routine to be called when we're sure the CPU is actually sparc version 8.

Revision 1.148.4.14 / (download) - annotate - [select for diffs], Thu Nov 28 01:14:34 2002 UTC (20 years, 2 months ago) by uwe
Branch: nathanw_sa
Changes since 1.148.4.13: +10 -4 lines
Diff to previous 1.148.4.13 (colored) to branchpoint 1.148 (colored)

Make upcalls work.  sa2 passes now.
sa3 seems to work but hangs after printing "About to exit."

Revision 1.163 / (download) - annotate - [select for diffs], Wed Nov 27 16:08:34 2002 UTC (20 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.162: +69 -4 lines
Diff to previous 1.162 (colored)

Provide sparc v8 multiply/divide routines which are copied over the base
v7 versions on sun4m and sun4d machines. Based on Chris Torek's BSD/OS
code.

Revision 1.145.2.5 / (download) - annotate - [select for diffs], Fri Sep 6 08:41:11 2002 UTC (20 years, 5 months ago) by jdolecek
Branch: kqueue
Changes since 1.145.2.4: +130 -24 lines
Diff to previous 1.145.2.4 (colored) next main 1.146 (colored)

sync kqueue branch with HEAD

Revision 1.153.8.3 / (download) - annotate - [select for diffs], Sat Aug 31 14:52:22 2002 UTC (20 years, 5 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.153.8.2: +84 -13 lines
Diff to previous 1.153.8.2 (colored) to branchpoint 1.153 (colored) next main 1.154 (colored)

catch up with -current.

Revision 1.148.4.13 / (download) - annotate - [select for diffs], Tue Aug 27 23:45:42 2002 UTC (20 years, 5 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.12: +3 -3 lines
Diff to previous 1.148.4.12 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.162 / (download) - annotate - [select for diffs], Sat Aug 17 02:23:18 2002 UTC (20 years, 5 months ago) by uwe
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gehenna-devsw-base
Changes since 1.161: +2 -2 lines
Diff to previous 1.161 (colored)

Add missing slash to /* notyet *

Revision 1.161 / (download) - annotate - [select for diffs], Wed Aug 14 14:45:37 2002 UTC (20 years, 5 months ago) by uwe
Branch: MAIN
Changes since 1.160: +2 -2 lines
Diff to previous 1.160 (colored)

Fix botch in previous.  #ifdef DIAGNOSTIC was one instructions too early
in sparc_interrupt4m, thus breaking soft interrupts for normal 4m's.

Should fix port-sparc/17891 (thanks, Martin).

Revision 1.148.4.12 / (download) - annotate - [select for diffs], Tue Aug 13 02:18:55 2002 UTC (20 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.11: +83 -12 lines
Diff to previous 1.148.4.11 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.160 / (download) - annotate - [select for diffs], Sun Aug 4 14:57:34 2002 UTC (20 years, 6 months ago) by uwe
Branch: MAIN
Changes since 1.159: +83 -12 lines
Diff to previous 1.159 (colored)

In DIAGNOSTIC kernels detect situation that on sun4m neither hardware
nor software interrupt pending bit is set for the current ipl.  Report
this as a "bogus" interrupt (better name anyone?).  This is a symptom
of a bug in interrupt handling in one of device drivers interrupting
at this ipl.  Reviewed by pk.

Revision 1.148.4.11 / (download) - annotate - [select for diffs], Thu Aug 1 02:43:28 2002 UTC (20 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.10: +47 -12 lines
Diff to previous 1.148.4.10 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.153.8.2 / (download) - annotate - [select for diffs], Sun Jul 21 13:00:53 2002 UTC (20 years, 6 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.153.8.1: +47 -12 lines
Diff to previous 1.153.8.1 (colored) to branchpoint 1.153 (colored)

catch up with -current.

Revision 1.159 / (download) - annotate - [select for diffs], Wed Jul 17 16:59:09 2002 UTC (20 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.158: +17 -9 lines
Diff to previous 1.158 (colored)

Add sun4d cases for early bootstrap.  This is good enough to
get as far as printing the copyright on an SPARCserver 1000.

Revision 1.158 / (download) - annotate - [select for diffs], Wed Jul 17 02:57:14 2002 UTC (20 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.157: +32 -5 lines
Diff to previous 1.157 (colored)

Print out a meaningful message on the sun4d if the kernel does
not support the sun4d, like we do with sun4c and sun4m.

Revision 1.153.8.1 / (download) - annotate - [select for diffs], Mon Jul 15 01:21:21 2002 UTC (20 years, 6 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.153: +19 -20 lines
Diff to previous 1.153 (colored)

catch up with -current.

Revision 1.148.4.10 / (download) - annotate - [select for diffs], Mon Jun 24 22:07:36 2002 UTC (20 years, 7 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.9: +17 -17 lines
Diff to previous 1.148.4.9 (colored) to branchpoint 1.148 (colored)

Curproc->curlwp renaming.

Change uses of "curproc->l_proc" back to "curproc", which is more like the
original use. Bare uses of "curproc" are now "curlwp".

"curproc" is now #defined in proc.h as ((curlwp) ? (curlwp)->l_proc) : NULL)
so that it is always safe to reference curproc (*de*referencing curproc
is another story, but that's always been true).

Revision 1.145.2.4 / (download) - annotate - [select for diffs], Sun Jun 23 17:41:50 2002 UTC (20 years, 7 months ago) by jdolecek
Branch: kqueue
Changes since 1.145.2.3: +19 -20 lines
Diff to previous 1.145.2.3 (colored)

catch up with -current on kqueue branch

Revision 1.148.4.9 / (download) - annotate - [select for diffs], Thu Jun 20 03:41:06 2002 UTC (20 years, 7 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.8: +19 -20 lines
Diff to previous 1.148.4.8 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.153.10.1 / (download) - annotate - [select for diffs], Tue Jun 18 15:46:05 2002 UTC (20 years, 7 months ago) by lukem
Branch: netbsd-1-6
CVS Tags: 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
Changes since 1.153: +19 -20 lines
Diff to previous 1.153 (colored) next main 1.154 (colored)

Pull up revisions 1.154-1.157 (requested by pk in ticket #298):
  revision 1.157
    Fix typo in nmi_sun{4,4c}, use correct register.
  revision 1.156
    Fill delay slot in previous to match normal microtime.
  revision 1.155
    Do not use "std" in ms-IIep micortime, the argument is not guaranteed
    to be double-word aligned and it is not when we are called from bpf.
    Remove "should be able to std here" comment in generic microtime.
    While here, simplify some asm mnemonics and fix a typo in comment.
  revision 1.154
    Use C-style comments in a few places where ' appears in the comment,
    so that this works with GCC 2.95.3's ISO C preprocessor.

Revision 1.157 / (download) - annotate - [select for diffs], Tue Jun 11 11:37:01 2002 UTC (20 years, 8 months ago) by uwe
Branch: MAIN
Changes since 1.156: +3 -3 lines
Diff to previous 1.156 (colored)

Fix typo in nmi_sun{4,4c}, use correct register.

Revision 1.156 / (download) - annotate - [select for diffs], Mon Jun 10 01:58:52 2002 UTC (20 years, 8 months ago) by uwe
Branch: MAIN
Changes since 1.155: +4 -5 lines
Diff to previous 1.155 (colored)

Fill delay slot in previous to match normal microtime.

Revision 1.155 / (download) - annotate - [select for diffs], Sun Jun 9 20:02:41 2002 UTC (20 years, 8 months ago) by uwe
Branch: MAIN
Changes since 1.154: +9 -9 lines
Diff to previous 1.154 (colored)

Do not use "std" in ms-IIep micortime, the argument is not guaranteed
to be double-word aligned and it is not when we are called from bpf.
Remove "should be able to std here" comment in generic microtime.
While here, simplify some asm mnemonics and fix a typo in comment.

Revision 1.154 / (download) - annotate - [select for diffs], Fri May 31 19:59:00 2002 UTC (20 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.153: +6 -6 lines
Diff to previous 1.153 (colored)

Use C-style comments in a few places where ' appears in the comment,
so that this works with GCC 2.95.3's ISO C preprocessor.

Revision 1.153.4.1 / (download) - annotate - [select for diffs], Mon Mar 18 16:35:30 2002 UTC (20 years, 10 months ago) by thorpej
Branch: newlock
Changes since 1.153: +11 -1 lines
Diff to previous 1.153 (colored) next main 1.154 (colored)

Provide storage for proc0.

Revision 1.148.4.8 / (download) - annotate - [select for diffs], Thu Feb 28 04:12:07 2002 UTC (20 years, 11 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.7: +49 -42 lines
Diff to previous 1.148.4.7 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.145.2.3 / (download) - annotate - [select for diffs], Mon Feb 11 20:09:06 2002 UTC (21 years ago) by jdolecek
Branch: kqueue
Changes since 1.145.2.2: +55 -48 lines
Diff to previous 1.145.2.2 (colored)

Sync w/ -current.

Revision 1.153 / (download) - annotate - [select for diffs], Mon Feb 4 08:36:36 2002 UTC (21 years ago) by pk
Branch: MAIN
CVS Tags: newlock-base, netbsd-1-6-base, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: newlock, netbsd-1-6, gehenna-devsw
Changes since 1.152: +49 -42 lines
Diff to previous 1.152 (colored)

Rename `esym' to `kernel_top' and always initialize it in locore from
the information provided by the loader if possible (defaulting to `end').
If the DDB symbols aren't needed, `kernel_top' is adjusted in
autoconf:bootstrap() before calling pmap_bootstrap(). It will also
preserve the bootinfo data (if passed by the loader) for non-DDB kernels.

Revision 1.152 / (download) - annotate - [select for diffs], Wed Jan 23 15:46:03 2002 UTC (21 years ago) by pk
Branch: MAIN
Changes since 1.151: +7 -7 lines
Diff to previous 1.151 (colored)

Eliminate `cputyp' test from cpu_switch().

Revision 1.148.4.7 / (download) - annotate - [select for diffs], Fri Jan 11 23:38:44 2002 UTC (21 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.6: +3 -2 lines
Diff to previous 1.148.4.6 (colored) to branchpoint 1.148 (colored)

More catchup.

Revision 1.145.2.2 / (download) - annotate - [select for diffs], Thu Jan 10 19:48:59 2002 UTC (21 years, 1 month ago) by thorpej
Branch: kqueue
Changes since 1.145.2.1: +100 -14 lines
Diff to previous 1.145.2.1 (colored)

Sync kqueue branch with -current.

Revision 1.151 / (download) - annotate - [select for diffs], Tue Jan 8 05:59:31 2002 UTC (21 years, 1 month ago) by uwe
Branch: MAIN
Changes since 1.150: +3 -2 lines
Diff to previous 1.150 (colored)

In the idle loop add a comment to wrpsr in the annulled delay slot of
an ifdefed branch instruction to make it obvious where it belongs to.
The ifdef makes it very confusing visually.

Revision 1.148.4.6 / (download) - annotate - [select for diffs], Tue Jan 8 00:27:45 2002 UTC (21 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.148.4.5: +90 -8 lines
Diff to previous 1.148.4.5 (colored) to branchpoint 1.148 (colored)

Catch up to -current.

Revision 1.150 / (download) - annotate - [select for diffs], Sun Dec 30 16:41:29 2001 UTC (21 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.149: +6 -6 lines
Diff to previous 1.149 (colored)

Change interface between cpu_fork() and proc_trampoline() so that `tf_pc'
(instead of `tf_npc') contains the user-space return address. This ensures
entering the signal trampoline code correctly in case we take handled
signal during child_return().

Revision 1.149 / (download) - annotate - [select for diffs], Tue Dec 11 03:46:59 2001 UTC (21 years, 2 months ago) by uwe
Branch: MAIN
Changes since 1.148: +85 -3 lines
Diff to previous 1.148 (colored)

Implement microSPARC-IIep versions of sparc_interrupt4m, raise and microtime.

Revision 1.148.4.5 / (download) - annotate - [select for diffs], Fri Nov 30 12:03:31 2001 UTC (21 years, 2 months ago) by pk
Branch: nathanw_sa
Changes since 1.148.4.4: +7 -8 lines
Diff to previous 1.148.4.4 (colored) to branchpoint 1.148 (colored)

Eliminate the loading and testing of `cputyp' in cpu_switch().

Revision 1.148.4.4 / (download) - annotate - [select for diffs], Thu Nov 29 14:23:31 2001 UTC (21 years, 2 months ago) by pk
Branch: nathanw_sa
Changes since 1.148.4.3: +3 -3 lines
Diff to previous 1.148.4.3 (colored) to branchpoint 1.148 (colored)

`l_stat' is an `int' now in stead of an `u_char'... Bloody confustication!

Revision 1.148.4.3 / (download) - annotate - [select for diffs], Wed Nov 28 13:38:59 2001 UTC (21 years, 2 months ago) by pk
Branch: nathanw_sa
Changes since 1.148.4.2: +61 -26 lines
Diff to previous 1.148.4.2 (colored) to branchpoint 1.148 (colored)

More work on lwpswitchexit(), cpu_preempt() and cpu_switch().
Fortunately, it seems we can share a fair deal of code among these.

Revision 1.148.4.2 / (download) - annotate - [select for diffs], Tue Nov 20 16:31:55 2001 UTC (21 years, 2 months ago) by pk
Branch: nathanw_sa
Changes since 1.148.4.1: +6174 -0 lines
Diff to previous 1.148.4.1 (colored) to branchpoint 1.148 (colored)

Convert to SA framework.
Compilable, but some core functionality stubbed out still.

Revision 1.146.2.1 / (download) - annotate - [select for diffs], Mon Oct 1 12:42:10 2001 UTC (21 years, 4 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.146: +9 -6 lines
Diff to previous 1.146 (colored) next main 1.147 (colored)

Catch up with -current.

Revision 1.148.4.1, Thu Sep 13 13:25:48 2001 UTC (21 years, 4 months ago) by pk
Branch: nathanw_sa
Changes since 1.148: +0 -6162 lines
FILE REMOVED

file locore.s was added on branch nathanw_sa on 2001-11-20 16:31:55 +0000

Revision 1.148 / (download) - annotate - [select for diffs], Thu Sep 13 13:25:48 2001 UTC (21 years, 4 months ago) by pk
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: nathanw_sa
Changes since 1.147: +5 -5 lines
Diff to previous 1.147 (colored)

Some sun4c machine (e.g. an IPC) can also have just 7 register windows,
so check for a possible context switch optimization #if SUN4C too.

Revision 1.147 / (download) - annotate - [select for diffs], Thu Sep 13 13:12:13 2001 UTC (21 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.146: +5 -2 lines
Diff to previous 1.146 (colored)

The SAVE macro used in the context switch code wound up being defined
only if MULTIPROCESSOR in rev 1.142, causing spurious register window
corruption on some machines.

Revision 1.145.2.1 / (download) - annotate - [select for diffs], Sat Aug 25 06:15:52 2001 UTC (21 years, 5 months ago) by thorpej
Branch: kqueue
Changes since 1.145: +1 -26 lines
Diff to previous 1.145 (colored)

Merge Aug 24 -current into the kqueue branch.

Revision 1.146 / (download) - annotate - [select for diffs], Mon Aug 13 06:10:09 2001 UTC (21 years, 6 months ago) by jdolecek
Branch: MAIN
CVS Tags: thorpej-devvp-base
Branch point for: thorpej-devvp
Changes since 1.145: +1 -26 lines
Diff to previous 1.145 (colored)

g/c _remque()/_insque(); use the C version in libkern

Revision 1.145 / (download) - annotate - [select for diffs], Sat Jul 7 20:09:15 2001 UTC (21 years, 7 months ago) by mrg
Branch: MAIN
Branch point for: kqueue
Changes since 1.144: +9 -9 lines
Diff to previous 1.144 (colored)

- replace CPUFLG_STARTUP with new CPUFLG_READY scheme, used after startup has
occured.  cpus now spin waiting for new `go_smp_cpus' variable to go non-zero.
- new xpmsg_lock that must held around all cross call activity.  new macros:
LOCK_XPMSG() and UNLOCK_XPMSG().
- delete delay(1)/cache_flush gone from raise_ipi_wait_and_unlock(), it incurred
a stupid performance penalty.

Revision 1.136.2.2 / (download) - annotate - [select for diffs], Thu Jun 21 19:35:05 2001 UTC (21 years, 7 months ago) by nathanw
Changes since 1.136.2.1: +147 -174 lines
Diff to previous 1.136.2.1 (colored) next main 1.137 (colored)

Catch up to -current.

Revision 1.144 / (download) - annotate - [select for diffs], Tue Jun 12 21:01:26 2001 UTC (21 years, 8 months ago) by uwe
Branch: MAIN
Changes since 1.143: +12 -4 lines
Diff to previous 1.143 (colored)

Be prepared to get OpenFirmware client entry in either %o3 (PROM way)
or %o0 (our boot code passes romp in %o0 even for OF machines).
Discussed with pk.

Revision 1.143 / (download) - annotate - [select for diffs], Sun Jun 10 10:50:20 2001 UTC (21 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.142: +2 -2 lines
Diff to previous 1.142 (colored)

oops; non-primary cpus should still spin, not jump to idle.

Revision 1.142 / (download) - annotate - [select for diffs], Fri Jun 8 16:15:23 2001 UTC (21 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.141: +127 -15 lines
Diff to previous 1.141 (colored)

more SMP work: finish up ipi's, SMP DDB support, cpu startup issues, and
idle() u area issues:

in nmi_sun4m(), if this is a soft NMI and DDB is configured, setup a trapframe
and pass it to nmi_soft().  in cpu_hatch(), spin until our cpu's flags no longer
have CPUFLG_STARTUP set.  then, setup registers and jump to
idle_enter_no_schedlock.  in idle(), if MULTIPROCESSOR, always switch to this
cpus idle u.  a minor optimisation to cpu_switch().

Revision 1.141 / (download) - annotate - [select for diffs], Fri Jun 8 04:49:45 2001 UTC (21 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.140: +2 -157 lines
Diff to previous 1.140 (colored)

split {sunos,svr4}_sigcode out for LKMs

Revision 1.140 / (download) - annotate - [select for diffs], Sat May 26 10:22:32 2001 UTC (21 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.139: +2 -1 lines
Diff to previous 1.139 (colored)

Pull in "opt_kgdb.h"; see PR#13036.

Revision 1.132.2.2 / (download) - annotate - [select for diffs], Sun Apr 22 17:59:57 2001 UTC (21 years, 9 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001
Changes since 1.132.2.1: +10 -1 lines
Diff to previous 1.132.2.1 (colored) to branchpoint 1.132 (colored) next main 1.133 (colored)

Pull up revision 1.139 (via patch, requested by pk):
  In proc_trampoline() make the new process run at base interrupt
  priority level.  Especially important for kernel threads, which
  would otherwise keep running at splclock().

  Eliminates system clock instability.

Revision 1.125.2.4 / (download) - annotate - [select for diffs], Sat Apr 21 17:54:38 2001 UTC (21 years, 9 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.125.2.3: +8 -1 lines
Diff to previous 1.125.2.3 (colored) next main 1.126 (colored)

Sync with HEAD

Revision 1.139 / (download) - annotate - [select for diffs], Mon Apr 9 18:18:48 2001 UTC (21 years, 10 months ago) by pk
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Changes since 1.138: +8 -1 lines
Diff to previous 1.138 (colored)

proc_trampoline(): mave the new process run at base interrupt priority level.
This is especially important for in-kernel processes started from here,
which would otherwise keep running at splclock().

Revision 1.136.2.1 / (download) - annotate - [select for diffs], Mon Apr 9 01:54:53 2001 UTC (21 years, 10 months ago) by nathanw
Changes since 1.136: +19 -12 lines
Diff to previous 1.136 (colored)

Catch up with -current.

Revision 1.125.2.3 / (download) - annotate - [select for diffs], Tue Mar 27 15:31:30 2001 UTC (21 years, 10 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.125.2.2: +19 -12 lines
Diff to previous 1.125.2.2 (colored)

Sync with HEAD.

Revision 1.138 / (download) - annotate - [select for diffs], Sun Mar 18 17:11:22 2001 UTC (21 years, 10 months ago) by chs
Branch: MAIN
Changes since 1.137: +5 -11 lines
Diff to previous 1.137 (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.137 / (download) - annotate - [select for diffs], Thu Mar 15 03:20:43 2001 UTC (21 years, 10 months ago) by mrg
Branch: MAIN
Changes since 1.136: +15 -2 lines
Diff to previous 1.136 (colored)

lock the kernel around calling interrupt stubs.

Revision 1.125.2.2 / (download) - annotate - [select for diffs], Mon Mar 12 13:29:22 2001 UTC (21 years, 11 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.125.2.1: +44 -56 lines
Diff to previous 1.125.2.1 (colored)

Sync with HEAD.

Revision 1.136 / (download) - annotate - [select for diffs], Fri Mar 2 10:27:00 2001 UTC (21 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.135: +21 -8 lines
Diff to previous 1.135 (colored)

* 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.

Revision 1.135 / (download) - annotate - [select for diffs], Fri Mar 2 09:48:13 2001 UTC (21 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.134: +24 -49 lines
Diff to previous 1.134 (colored)

bootstrap area: remove dead code + some trivial reformatting

Revision 1.125.2.1 / (download) - annotate - [select for diffs], Mon Nov 20 20:25:45 2000 UTC (22 years, 2 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.125: +122 -90 lines
Diff to previous 1.125 (colored)

Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.

Revision 1.134 / (download) - annotate - [select for diffs], Thu Aug 31 16:59:12 2000 UTC (22 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.133: +56 -52 lines
Diff to previous 1.133 (colored)

Scheduler lock update.

Revision 1.132.2.1 / (download) - annotate - [select for diffs], Wed Jul 26 22:46:37 2000 UTC (22 years, 6 months ago) by pk
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-RELEASE, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2
Changes since 1.132: +3 -2 lines
Diff to previous 1.132 (colored)

Pull up revision 1.132 from trunk.

Fix delay slot error in the SUN4_MMU3L startup code.

Revision 1.133 / (download) - annotate - [select for diffs], Mon Jul 24 08:48:03 2000 UTC (22 years, 6 months ago) by pk
Branch: MAIN
Changes since 1.132: +3 -2 lines
Diff to previous 1.132 (colored)

Fix delay slot error in the SUN4_MMU3L startup code.

Revision 1.130.2.1 / (download) - annotate - [select for diffs], Thu Jun 22 17:04:10 2000 UTC (22 years, 7 months ago) by minoura
Branch: minoura-xpg4dl
Changes since 1.130: +24 -2 lines
Diff to previous 1.130 (colored) next main 1.131 (colored)

Sync w/ netbsd-1-5-base.

Revision 1.132 / (download) - annotate - [select for diffs], Wed May 31 11:23:21 2000 UTC (22 years, 8 months ago) by pk
Branch: MAIN
CVS Tags: netbsd-1-5-base
Branch point for: netbsd-1-5
Changes since 1.131: +4 -3 lines
Diff to previous 1.131 (colored)

Fix a couple of typos.

Revision 1.131 / (download) - annotate - [select for diffs], Wed May 31 05:28:29 2000 UTC (22 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.130: +23 -2 lines
Diff to previous 1.130 (colored)

- In the MULTIPROCESSOR case, initialize p_cpu before a process is
  marked SONPROC.
- Fix a bug where all cpu_info structures except for the boot CPUs
  would exist at both a CPU-local VA (CPUINFO_VA) and a gloal VA;
  The boot CPU's existed only a CPUINFO_VA.
- Add a self-reference pointer to the cpu_info that references the
  global address in the MULTIPROCESSOR case.  Just allow it to reference
  the `local' VA in the single-processor case, as CPUINFO_VA is global
  enough when there's only one processor to care about.  Change curcpu()
  to return the global address.

Revision 1.130 / (download) - annotate - [select for diffs], Fri May 26 21:20:17 2000 UTC (22 years, 8 months ago) by thorpej
Branch: MAIN
CVS Tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Changes since 1.129: +7 -9 lines
Diff to previous 1.129 (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.129 / (download) - annotate - [select for diffs], Fri May 26 00:36:49 2000 UTC (22 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.128: +4 -1 lines
Diff to previous 1.128 (colored)

Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.

Revision 1.128 / (download) - annotate - [select for diffs], Sun Apr 30 21:32:44 2000 UTC (22 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.127: +38 -9 lines
Diff to previous 1.127 (colored)

Arrange to call uvm_pageidlezero() from idle loop.

Revision 1.127 / (download) - annotate - [select for diffs], Tue Mar 21 12:47:02 2000 UTC (22 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.126: +2 -2 lines
Diff to previous 1.126 (colored)

Missing _C_LABEL().

Revision 1.125.6.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:33:50 1999 UTC (23 years, 1 month ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.125: +23 -48 lines
Diff to previous 1.125 (colored) next main 1.126 (colored)

Pull up to last week's -current.

Revision 1.125.4.1 / (download) - annotate - [select for diffs], Mon Nov 15 00:39:18 1999 UTC (23 years, 2 months ago) by fvdl
Branch: fvdl-softdep
Changes since 1.125: +23 -48 lines
Diff to previous 1.125 (colored) next main 1.126 (colored)

Sync with -current

Revision 1.114.2.2 / (download) - annotate - [select for diffs], Fri Nov 5 07:52:15 1999 UTC (23 years, 3 months ago) by cgd
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-PATCH003, netbsd-1-4-PATCH002
Changes since 1.114.2.1: +23 -48 lines
Diff to previous 1.114.2.1 (colored) to branchpoint 1.114 (colored) next main 1.115 (colored)

pull up rev 1.126 from trunk (requested by chs):
  Fix several panics in copy{in,out,}str().

Revision 1.126.2.2 / (download) - annotate - [select for diffs], Fri Nov 5 04:49:27 1999 UTC (23 years, 3 months ago) by chs
Branch: comdex-fall-1999
Changes since 1.126.2.1: +6159 -0 lines
Diff to previous 1.126.2.1 (colored) to branchpoint 1.126 (colored) next main 1.127 (colored)

several fixes to copy{in,out,}str() from charles and myself:
don't panic if maxlen == 0, just return ENAMETOLONG.
treat maxlen as unsigned like the manpage indicates.
avoid crashing if the userspace address is >= KERNBASE.
make sure *done is 0 when no bytes are copied.

Revision 1.126.2.1, Fri Nov 5 04:49:26 1999 UTC (23 years, 3 months ago) by chs
Branch: comdex-fall-1999
Changes since 1.126: +0 -6159 lines
FILE REMOVED

file locore.s was added on branch comdex-fall-1999 on 1999-11-05 04:49:27 +0000

Revision 1.126 / (download) - annotate - [select for diffs], Fri Nov 5 04:49:26 1999 UTC (23 years, 3 months ago) by chs
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, fvdl-softdep-base, comdex-fall-1999-base, chs-ubc2-newbase
Branch point for: comdex-fall-1999
Changes since 1.125: +23 -48 lines
Diff to previous 1.125 (colored)

several fixes to copy{in,out,}str() from charles and myself:
don't panic if maxlen == 0, just return ENAMETOLONG.
treat maxlen as unsigned like the manpage indicates.
avoid crashing if the userspace address is >= KERNBASE.
make sure *done is 0 when no bytes are copied.

Revision 1.125 / (download) - annotate - [select for diffs], Mon Oct 4 19:23:49 1999 UTC (23 years, 4 months ago) by pk
Branch: MAIN
Branch point for: wrstuden-devbsize, thorpej_scsipi, fvdl-softdep
Changes since 1.124: +1 -10 lines
Diff to previous 1.124 (colored)

Since a context table is now pointing at the correct per-CPU region table
at all times, we can dispense with the hackery that patches the magic entry
at context-switch time.

Revision 1.124 / (download) - annotate - [select for diffs], Fri Sep 17 20:04:52 1999 UTC (23 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.123: +1 -4 lines
Diff to previous 1.123 (colored)

Centralize the declaration and clearing of `cold'.

Revision 1.114.2.1.2.1 / (download) - annotate - [select for diffs], Mon Jun 21 01:01:48 1999 UTC (23 years, 7 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.114.2.1: +142 -305 lines
Diff to previous 1.114.2.1 (colored) next main 1.114.2.2 (colored)

Sync w/ -current.

Revision 1.123 / (download) - annotate - [select for diffs], Wed May 5 15:32:33 1999 UTC (23 years, 9 months ago) by pk
Branch: MAIN
CVS Tags: chs-ubc2-base
Changes since 1.122: +2 -2 lines
Diff to previous 1.122 (colored)

Declare `bootinfo' also if !DDB.

Revision 1.122 / (download) - annotate - [select for diffs], Wed May 5 10:53:00 1999 UTC (23 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.121: +91 -283 lines
Diff to previous 1.121 (colored)

Argh, removed last ELF induced problem. We used to have syscall: in locore.s
and _C_LABEL(syscall) in trap.c. In ELF they are the same. Change the label
in locore.s to be _C_LABEL(_syscall).
While I am there, move the register save and restoral code used in the
*sigcode trampolines into two macros and use them instead of copying 100
lines of assembly each time.
Now everything ELF works.

Revision 1.121 / (download) - annotate - [select for diffs], Tue May 4 17:29:22 1999 UTC (23 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.120: +4 -4 lines
Diff to previous 1.120 (colored)

Fix panic and panicstr to use _C_LABEL.
Statuc: ELF kernel loads symbols properly, hangs in syscall while running init.

Revision 1.120 / (download) - annotate - [select for diffs], Mon May 3 20:56:11 1999 UTC (23 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.119: +4 -4 lines
Diff to previous 1.119 (colored)

Gain one instruction..

Revision 1.119 / (download) - annotate - [select for diffs], Mon May 3 16:17:08 1999 UTC (23 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.118: +5 -8 lines
Diff to previous 1.118 (colored)

s/\<0x4000\>/PROM_LOADADDR
remove unused cputypvallen, and _msgbufaddr

Revision 1.118 / (download) - annotate - [select for diffs], Sun May 2 14:47:33 1999 UTC (23 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.117: +10 -6 lines
Diff to previous 1.117 (colored)

* Add missing label.
* Avoid harmful delay-slot instruction, if we did not get a `bootinfo' thing.
* Compute correct location of `esym' for all three methods of debug
  symbol loading we support.

Revision 1.114.2.1 / (download) - annotate - [select for diffs], Fri Apr 30 15:33:55 1999 UTC (23 years, 9 months ago) by perry
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-RELEASE, netbsd-1-4-PATCH001, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Changes since 1.114: +128 -2 lines
Diff to previous 1.114 (colored)

pullup 1.114->1.116 (christos)

Revision 1.117 / (download) - annotate - [select for diffs], Fri Apr 30 09:26:17 1999 UTC (23 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.116: +39 -11 lines
Diff to previous 1.116 (colored)

Add bootinfo support for loading symbol tables.

Revision 1.116 / (download) - annotate - [select for diffs], Thu Apr 29 16:37:32 1999 UTC (23 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.115: +138 -40 lines
Diff to previous 1.115 (colored)

Revert previous bootinfo premature commit, and commit the sunos_sigcode
stuff instead.

Revision 1.115 / (download) - annotate - [select for diffs], Thu Apr 29 16:13:04 1999 UTC (23 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.114: +40 -12 lines
Diff to previous 1.114 (colored)

Add sunos_sigcode and sunos_esigcode for COMPAT_SUNOS

Revision 1.114 / (download) - annotate - [select for diffs], Tue Mar 30 19:41:30 1999 UTC (23 years, 10 months ago) by pk
Branch: MAIN
CVS Tags: netbsd-1-4-base
Branch point for: netbsd-1-4
Changes since 1.113: +2 -2 lines
Diff to previous 1.113 (colored)

The MMU_3L option became SUN4_MMU3L long ago.

Revision 1.113 / (download) - annotate - [select for diffs], Wed Mar 24 05:51:11 1999 UTC (23 years, 10 months ago) by mrg
Branch: MAIN
Changes since 1.112: +1 -38 lines
Diff to previous 1.112 (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.112 / (download) - annotate - [select for diffs], Fri Mar 5 11:07:03 1999 UTC (23 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.111: +8 -8 lines
Diff to previous 1.111 (colored)

Apply C_LABEL() to `esym' too.

Revision 1.111 / (download) - annotate - [select for diffs], Fri Mar 5 10:45:25 1999 UTC (23 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.110: +336 -348 lines
Diff to previous 1.110 (colored)

Use macros from <machine/asm.h> to construct C labels.

Revision 1.110 / (download) - annotate - [select for diffs], Sun Feb 14 14:37:15 1999 UTC (23 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.109: +2 -2 lines
Diff to previous 1.109 (colored)

romcall() => prom_halt()

Revision 1.109 / (download) - annotate - [select for diffs], Sun Feb 14 12:33:55 1999 UTC (23 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.108: +15 -4 lines
Diff to previous 1.108 (colored)

Check OBP magic: if no match then assume an Openfirmware PROM.

Revision 1.108 / (download) - annotate - [select for diffs], Thu Nov 26 22:36:43 1998 UTC (24 years, 2 months ago) by mycroft
Branch: MAIN
CVS Tags: kenh-if-detach-base, kenh-if-detach
Changes since 1.107: +7 -4 lines
Diff to previous 1.107 (colored)

Minor changes; indentation for delay slots and NOTREACHED comments.

Revision 1.107 / (download) - annotate - [select for diffs], Thu Nov 26 22:30:31 1998 UTC (24 years, 2 months ago) by mycroft
Branch: MAIN
Changes since 1.106: +23 -21 lines
Diff to previous 1.106 (colored)

Clean up kcopy() some more:
* Return EFAULT, not -1.
* Rearrange some instructions for better parallelism.

Revision 1.106 / (download) - annotate - [select for diffs], Thu Nov 26 22:17:33 1998 UTC (24 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.105: +32 -31 lines
Diff to previous 1.105 (colored)

kcopy() must restore pcb_onfault handler. Pointed out by Charles Hannum.

Revision 1.105 / (download) - annotate - [select for diffs], Sat Oct 24 08:04:07 1998 UTC (24 years, 3 months ago) by pk
Branch: MAIN
CVS Tags: chs-ubc-base, chs-ubc
Changes since 1.104: +19 -17 lines
Diff to previous 1.104 (colored)

Duh.. condition codes are not preserved when writing directly into %psr.
Also, we need to deal with bus latency when turning off bits in the
interrupt status register.

Revision 1.104 / (download) - annotate - [select for diffs], Mon Oct 19 11:56:43 1998 UTC (24 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.103: +4 -2 lines
Diff to previous 1.103 (colored)

Maintain a current process (`curproc') a per CPU.

Revision 1.103 / (download) - annotate - [select for diffs], Fri Oct 16 22:39:17 1998 UTC (24 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.102: +11 -1 lines
Diff to previous 1.102 (colored)

Drop cpuinfo's `L1_ptps'; instead keep a per CPU segment (level 2) page
table descriptor that is used to patch up a region (level 1) page table
associated with a user pmap at context switch time.

Revision 1.102 / (download) - annotate - [select for diffs], Wed Oct 14 14:47:20 1998 UTC (24 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.101: +7 -4 lines
Diff to previous 1.101 (colored)

Let all CPUs spin at spl0.

Revision 1.101 / (download) - annotate - [select for diffs], Tue Oct 13 12:05:44 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.100: +26 -19 lines
Diff to previous 1.100 (colored)

EINTSTACK => EINTSTACKP

Revision 1.100 / (download) - annotate - [select for diffs], Mon Oct 12 22:05:17 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.99: +8 -2 lines
Diff to previous 1.99 (colored)

Oops, USPACE does not in 13 bits.. repair and save one instruction
in a non-SMP kernel.

Revision 1.99 / (download) - annotate - [select for diffs], Mon Oct 12 21:51:54 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.98: +14 -4 lines
Diff to previous 1.98 (colored)

In switchexit(), switch to the current CPU's idle u.area.

Revision 1.98 / (download) - annotate - [select for diffs], Mon Oct 12 14:39:10 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.97: +33 -10 lines
Diff to previous 1.97 (colored)

Make `_cpcb' (pointer to current user area) a per-CPU variable.
This cpuinfo field is initialized here in locore before calling bootstrap(),
since it must be valid before entering the window overflow/underflow handlers.

Fix miscalculation in the MULTIPROCESSOR version of INTR_SETUP().

Revision 1.97 / (download) - annotate - [select for diffs], Sun Oct 11 14:46:46 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.96: +87 -7 lines
Diff to previous 1.96 (colored)

Allocate a private PCB, kernel stack and interrupt stack for each processor.
As a result, the stack setup code in locore.s changes slightly in
the MULTIPROCESSOR case. Also, make the stack redzone barrier (for
debugging only) a per-CPU entity.

Revision 1.96 / (download) - annotate - [select for diffs], Wed Sep 23 11:07:28 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.95: +11 -12 lines
Diff to previous 1.95 (colored)

Use per-CPU interrupt status register.

Revision 1.95 / (download) - annotate - [select for diffs], Mon Sep 21 10:30:41 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.94: +6 -31 lines
Diff to previous 1.94 (colored)

We no longer need to access memerr() through a function pointer.
GC `cpumod' and `mmumod'.

Revision 1.94 / (download) - annotate - [select for diffs], Sun Sep 20 19:54:48 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.93: +114 -94 lines
Diff to previous 1.93 (colored)

Dedicate a pair of entry points to handling sun4m level 15 (NMI) interrupts.
Hardware NMIs are generated on various fault conditions that take place
asynchronously to the instruction stream. Software NMIs are going to be used
for inter-processor communications.

Get synchronous fault information separately from asynchronous fault
information. Do the former right after taking a memory fault trap and
store the values in temporary locations within the cpuinfo structure (XXX),
so we can unconditionally clear the sync fault status register after
MMU probe operations. This all is to work around a Hypersparc feature
which could lead to loss of fault information because of the fault
status register getting locked.

Revision 1.93 / (download) - annotate - [select for diffs], Fri Sep 18 08:07:08 1998 UTC (24 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.92: +26 -1 lines
Diff to previous 1.92 (colored)

sigh.. put back non-garbage collectible `que' functions.

Revision 1.92 / (download) - annotate - [select for diffs], Sun Sep 13 11:12:36 1998 UTC (24 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.91: +4 -2 lines
Diff to previous 1.91 (colored)

Pull in <sys/syscall.h> directly into locore.s

Revision 1.91 / (download) - annotate - [select for diffs], Sat Sep 12 19:50:59 1998 UTC (24 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.90: +15 -15 lines
Diff to previous 1.90 (colored)

A few slight optimizations.

Revision 1.90 / (download) - annotate - [select for diffs], Sat Sep 12 19:46:00 1998 UTC (24 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.89: +1 -25 lines
Diff to previous 1.89 (colored)

Nuke `insqeu' and `remque'

Revision 1.89 / (download) - annotate - [select for diffs], Sat Sep 12 19:44:17 1998 UTC (24 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.88: +47 -1 lines
Diff to previous 1.88 (colored)

Add hatching code for other CPUs.

Revision 1.88 / (download) - annotate - [select for diffs], Wed Sep 9 00:07:55 1998 UTC (24 years, 5 months ago) by thorpej
Branch: MAIN
Changes since 1.87: +6 -13 lines
Diff to previous 1.87 (colored)

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).

Revision 1.87 / (download) - annotate - [select for diffs], Sun Sep 6 21:18:59 1998 UTC (24 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.86: +16 -6 lines
Diff to previous 1.86 (colored)

memerr() is now an indirect call.

Revision 1.86 / (download) - annotate - [select for diffs], Sun Jul 26 23:35:33 1998 UTC (24 years, 6 months ago) by pk
Branch: MAIN
CVS Tags: eeh-paddr_t-base, eeh-paddr_t
Changes since 1.85: +20 -2 lines
Diff to previous 1.85 (colored)

Add a cpu-specific function to flush a pure virtually-indexed/virtually-tagged
cache, which needs to be flushed at context switch.

Revision 1.85 / (download) - annotate - [select for diffs], Sat Jul 4 22:18:40 1998 UTC (24 years, 7 months ago) by jonathan
Branch: MAIN
Changes since 1.84: +2 -1 lines
Diff to previous 1.84 (colored)

defopt DDB.

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

defopt COMPAT_SVR4

Revision 1.83 / (download) - annotate - [select for diffs], Sun Feb 22 15:25:28 1998 UTC (24 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.82: +2 -10 lines
Diff to previous 1.82 (colored)

Finish making this compile after libkern changes.

Revision 1.82 / (download) - annotate - [select for diffs], Sun Feb 22 15:13:36 1998 UTC (24 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.81: +3 -13 lines
Diff to previous 1.81 (colored)

Clean up after ffs() change.
Do *not* set runtime here; the way it was done was highly bogus, and the value
just gets blasted right away by mi_switch().

Revision 1.81 / (download) - annotate - [select for diffs], Sun Feb 22 09:31:00 1998 UTC (24 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.80: +1 -117 lines
Diff to previous 1.80 (colored)

ffs() is identical to the one from libc, so just use that.
Move random() to libkern.

Revision 1.80 / (download) - annotate - [select for diffs], Tue Feb 10 14:11:52 1998 UTC (25 years ago) by mrg
Branch: MAIN
Changes since 1.79: +8 -6 lines
Diff to previous 1.79 (colored)

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

Revision 1.79 / (download) - annotate - [select for diffs], Thu Feb 5 07:57:57 1998 UTC (25 years ago) by mrg
Branch: MAIN
Changes since 1.78: +230 -1 lines
Diff to previous 1.78 (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.78 / (download) - annotate - [select for diffs], Tue Jan 13 20:51:01 1998 UTC (25 years ago) by pk
Branch: MAIN
Changes since 1.77: +17 -1 lines
Diff to previous 1.77 (colored)

Add fkbyte(), which is like fubyte() but for kernel addresses.
Only used at this moment to work around unexplained transient bus
errors when reading the VME interrupt vector in bus control space.

Revision 1.77 / (download) - annotate - [select for diffs], Sat Nov 22 03:13:59 1997 UTC (25 years, 2 months ago) by tv
Branch: MAIN
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored)

eliminate declarations of global data in <sparc/cpu.h> and declare in
source files, reducing global symblol replication in .o kernel files

Revision 1.75.2.1 / (download) - annotate - [select for diffs], Thu Nov 20 03:19:56 1997 UTC (25 years, 2 months ago) by mellon
Branch: netbsd-1-3
CVS Tags: 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
Changes since 1.75: +18 -5 lines
Diff to previous 1.75 (colored) next main 1.76 (colored)

Pull rev 1.76 up from trunk (pk)

Revision 1.76 / (download) - annotate - [select for diffs], Wed Nov 19 22:59:05 1997 UTC (25 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.75: +18 -5 lines
Diff to previous 1.75 (colored)

1. Implement a trick from Chris Torek: if an unhandled interrupt occurs
   during auto-configuration (`cold'), raise interrupt level to splhigh
   and return, instead of reporting a stray interrupt.

2. In cpu_switch(), start running a newly selected proces at splclock()
   instead of the saved IPL, allowing high-priority interrupts in
   ctx_alloc() which can take many cycles to install a new context
   (especially on the two-level sun4c MMU).

Revision 1.72.2.3 / (download) - annotate - [select for diffs], Mon Sep 29 07:20:39 1997 UTC (25 years, 4 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.72.2.2: +7 -4 lines
Diff to previous 1.72.2.2 (colored) to branchpoint 1.72 (colored) next main 1.73 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.75 / (download) - annotate - [select for diffs], Tue Sep 23 08:19:56 1997 UTC (25 years, 4 months ago) by pk
Branch: MAIN
CVS Tags: netbsd-1-3-base, marc-pcmcia-base
Branch point for: netbsd-1-3
Changes since 1.74: +7 -4 lines
Diff to previous 1.74 (colored)

The symbol `_msgbufaddr' is no longer exported.

Revision 1.72.2.2 / (download) - annotate - [select for diffs], Mon Sep 22 06:32:33 1997 UTC (25 years, 4 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.72.2.1: +3 -3 lines
Diff to previous 1.72.2.1 (colored) to branchpoint 1.72 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.74 / (download) - annotate - [select for diffs], Fri Sep 19 13:55:31 1997 UTC (25 years, 4 months ago) by leo
Branch: MAIN
Changes since 1.73: +3 -3 lines
Diff to previous 1.73 (colored)

Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.

Revision 1.72.2.1 / (download) - annotate - [select for diffs], Tue Sep 16 03:49:14 1997 UTC (25 years, 4 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.72: +27 -7 lines
Diff to previous 1.72 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.73 / (download) - annotate - [select for diffs], Sat Sep 13 20:36:48 1997 UTC (25 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.72: +27 -7 lines
Diff to previous 1.72 (colored)

NetBSD 1.2 and earlier sparc bootblocks have KERNBASE compiled in. This
prevents booting DDB kernels that are built with a different value of KERNBASE.

Apply a correction based on the magic number passed in by the bootblocks.

New bootblocks without the hard-coded KERNBASE reference will be assigned
a new magic number.

Revision 1.72 / (download) - annotate - [select for diffs], Mon Jul 7 20:06:42 1997 UTC (25 years, 7 months ago) by pk
Branch: MAIN
CVS Tags: thorpej-signal-base, thorpej-signal, marc-pcmcia-bp
Branch point for: marc-pcmcia
Changes since 1.71: +2 -1 lines
Diff to previous 1.71 (colored)

Add `turbosparc_getfaultstatus()' to be used instead of the generic srmmu item.

Revision 1.71 / (download) - annotate - [select for diffs], Sat Jun 28 19:59:05 1997 UTC (25 years, 7 months ago) by pk
Branch: MAIN
CVS Tags: bouyer-scsipi
Changes since 1.70: +7 -5 lines
Diff to previous 1.70 (colored)

Accommodate non-VM_PMAP_HACK code.

Revision 1.70 / (download) - annotate - [select for diffs], Tue Apr 22 07:48:31 1997 UTC (25 years, 9 months ago) by mrg
Branch: MAIN
Changes since 1.69: +2 -1 lines
Diff to previous 1.69 (colored)

add NetBSD RCSid.

Revision 1.69 / (download) - annotate - [select for diffs], Mon Apr 21 18:20:14 1997 UTC (25 years, 9 months ago) by mycroft
Branch: MAIN
Changes since 1.68: +1 -0 lines
Diff to previous 1.68 (colored)

Put back missing label.

Revision 1.68 / (download) - annotate - [select for diffs], Mon Apr 21 05:47:08 1997 UTC (25 years, 9 months ago) by mycroft
Branch: MAIN
Changes since 1.67: +15 -10 lines
Diff to previous 1.67 (colored)

Make microtime() work correctly with a 4- or 4C-only kernel.

Revision 1.67 / (download) - annotate - [select for diffs], Wed Apr 2 20:56:28 1997 UTC (25 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.66: +1 -1 lines
Diff to previous 1.66 (colored)

Take another register snapshot at the end of dumpsys() to refresh the PCB
which may have been altered while writing the dump. Also, save PC in
the PCB.

Revision 1.66 / (download) - annotate - [select for diffs], Mon Mar 31 22:00:39 1997 UTC (25 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.65: +6 -6 lines
Diff to previous 1.65 (colored)

`*_get_fault_status' should not get profiled; use ALTENTRY for now.

Revision 1.65 / (download) - annotate - [select for diffs], Mon Mar 31 16:42:52 1997 UTC (25 years, 10 months ago) by mycroft
Branch: MAIN
Changes since 1.64: +1 -1 lines
Diff to previous 1.64 (colored)

Fix bogus preprocessor conditional that caused the trap page to
not be rounded up when it should be.

Revision 1.64 / (download) - annotate - [select for diffs], Sat Mar 22 22:13:17 1997 UTC (25 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.63: +5 -77 lines
Diff to previous 1.63 (colored)

Garbage collect.

Revision 1.63 / (download) - annotate - [select for diffs], Thu Mar 20 21:10:31 1997 UTC (25 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.62: +9 -1 lines
Diff to previous 1.62 (colored)

Add a `no-op' function that the compiler can not touch.

Revision 1.61.6.1 / (download) - annotate - [select for diffs], Wed Mar 12 13:55:31 1997 UTC (25 years, 11 months ago) by is
Branch: is-newarp
Changes since 1.61: +225 -89 lines
Diff to previous 1.61 (colored) next main 1.62 (colored)

Merge in changes from The Trunk

Revision 1.62 / (download) - annotate - [select for diffs], Tue Mar 11 00:09:29 1997 UTC (25 years, 11 months ago) by pk
Branch: MAIN
CVS Tags: is-newarp-before-merge
Changes since 1.61: +225 -89 lines
Diff to previous 1.61 (colored)

Replace `cputyp' run-time tests by inserting multiple branches and NOPing
some at startup depending on architecture.

Use `get_faultstatus' field in `cpuinfo' (initialized in cpu.c) to branch
to CPU/MMU specific fault status reading stubs on memory fault traps.

Remove code top map the Interrupt Enable register on sun4/sun4c. Its VA
has moved to a high location and is now mapped in autoconf.c after
pmap has initialized. Note: this renders NMIs during bootstrap() fatal
(maybe loading %tbr should be deferred).

Revision 1.61 / (download) - annotate - [select for diffs], Fri Oct 11 00:47:24 1996 UTC (26 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: thorpej-setroot, mrg-vm-swap, is-newarp-base
Branch point for: is-newarp
Changes since 1.60: +1 -1 lines
Diff to previous 1.60 (colored)

printf -> kprintf, sprintf -> ksprintf

Revision 1.57.4.2 / (download) - annotate - [select for diffs], Wed Jul 3 00:06:37 1996 UTC (26 years, 7 months ago) by jtc
Branch: netbsd-1-2
CVS Tags: netbsd-1-2-RELEASE, netbsd-1-2-PATCH001
Changes since 1.57.4.1: +1 -1 lines
Diff to previous 1.57.4.1 (colored) to branchpoint 1.57 (colored) next main 1.58 (colored)

>Allow DIAGNOSTIC kernels a FLUSHWIN trap ...

Revision 1.60 / (download) - annotate - [select for diffs], Thu Jun 13 22:26:36 1996 UTC (26 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.59: +1 -1 lines
Diff to previous 1.59 (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.57.4.1 / (download) - annotate - [select for diffs], Wed Jun 12 20:32:46 1996 UTC (26 years, 8 months ago) by pk
Branch: netbsd-1-2
CVS Tags: netbsd-1-2-BETA
Changes since 1.57: +10 -4 lines
Diff to previous 1.57 (colored)

Pull down from trunk:
Fixes in CMP_PTE_USER_READ4M macro.

Revision 1.59 / (download) - annotate - [select for diffs], Mon May 27 20:46:39 1996 UTC (26 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.58: +5 -2 lines
Diff to previous 1.58 (colored)

CMP_PTE_USER_READ4M: check against PPROT_RWX_RWX; this is the canonical
stack protection (saves many excursions into trap.c on window underflows
as was the sole intention of the macro..).

Revision 1.58 / (download) - annotate - [select for diffs], Sun May 26 22:33:31 1996 UTC (26 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.57: +6 -3 lines
Diff to previous 1.57 (colored)

Implement CMP_PTE_USER_WRITE4M more accurately.
CMP_PTE_USER_READ4M needs some more work..

Revision 1.57 / (download) - annotate - [select for diffs], Sun May 19 00:25:16 1996 UTC (26 years, 8 months ago) by pk
Branch: MAIN
CVS Tags: netbsd-1-2-base
Branch point for: netbsd-1-2
Changes since 1.56: +5 -2 lines
Diff to previous 1.56 (colored)

Make sure DELAY(0) returns within an hour..

Revision 1.56 / (download) - annotate - [select for diffs], Fri May 17 20:07:53 1996 UTC (26 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.55: +2 -1 lines
Diff to previous 1.55 (colored)

Add `_kernel_text' symbol for kvm_mkdb(8).

Revision 1.55 / (download) - annotate - [select for diffs], Thu May 16 15:57:23 1996 UTC (26 years, 8 months ago) by abrown
Branch: MAIN
Changes since 1.54: +1 -1 lines
Diff to previous 1.54 (colored)

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

Revision 1.54 / (download) - annotate - [select for diffs], Thu May 2 18:15:08 1996 UTC (26 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.53: +26 -19 lines
Diff to previous 1.53 (colored)

Simpler and more accurate delay() function from Chuck Cranor.

Revision 1.53 / (download) - annotate - [select for diffs], Mon Apr 29 21:08:40 1996 UTC (26 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.52: +23 -0 lines
Diff to previous 1.52 (colored)

Move delay() to locore, so we control code generation and can avoid
touching memory locations whose caching disposition can perturb timings.

Revision 1.52 / (download) - annotate - [select for diffs], Sun Mar 31 23:19:22 1996 UTC (26 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.51: +1048 -146 lines
Diff to previous 1.51 (colored)

Add sun4m support. Many, many changes..
Note on multi-architecture kernels: most architecture dependent traps are
forked off directly by having a separate trap table for each (sun4,sun4c,sun4m)
This reduces the number of tests on `cputyp' significantly, and it's easier
on the mind. There are still some entry points that need to test `cputyp',
most notably microtime().. yuck.

Revision 1.51 / (download) - annotate - [select for diffs], Thu Mar 14 00:54:06 1996 UTC (26 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.50: +30 -33 lines
Diff to previous 1.50 (colored)

Install machinery for cpu_set_kpc().

Revision 1.50 / (download) - annotate - [select for diffs], Tue Feb 6 12:11:15 1996 UTC (27 years ago) by pk
Branch: MAIN
Changes since 1.49: +5 -5 lines
Diff to previous 1.49 (colored)

beq -> be; some assemblers don't know about this alias.

Revision 1.49 / (download) - annotate - [select for diffs], Sat Feb 3 04:36:01 1996 UTC (27 years ago) by mycroft
Branch: MAIN
Changes since 1.48: +3 -3 lines
Diff to previous 1.48 (colored)

Make this compile with `traditional' cpp.

Revision 1.48 / (download) - annotate - [select for diffs], Fri Feb 2 20:05:40 1996 UTC (27 years ago) by mycroft
Branch: MAIN
Changes since 1.47: +0 -1 lines
Diff to previous 1.47 (colored)

Don't define _LOCORE here.

Revision 1.47 / (download) - annotate - [select for diffs], Fri Feb 2 02:37:26 1996 UTC (27 years ago) by mycroft
Branch: MAIN
Changes since 1.46: +1 -1 lines
Diff to previous 1.46 (colored)

assym.s -> assym.h
(Some ports did this already.)

Revision 1.46 / (download) - annotate - [select for diffs], Thu Feb 1 22:32:52 1996 UTC (27 years ago) by mycroft
Branch: MAIN
Changes since 1.45: +1 -1 lines
Diff to previous 1.45 (colored)

LOCORE -> _LOCORE

Revision 1.45 / (download) - annotate - [select for diffs], Wed Nov 29 01:52:41 1995 UTC (27 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.44: +0 -8 lines
Diff to previous 1.44 (colored)

In probe[gs]et() there's no need to check against KERNBASE, as pointed
out by David Jones and Chris Torek.

Revision 1.44 / (download) - annotate - [select for diffs], Sat Oct 7 22:27:31 1995 UTC (27 years, 4 months ago) by mycroft
Branch: MAIN
CVS Tags: netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001, netbsd-1-1
Changes since 1.43: +0 -23 lines
Diff to previous 1.43 (colored)

Remove __builtin_saveregs().

Revision 1.43 / (download) - annotate - [select for diffs], Sat Oct 7 22:24:50 1995 UTC (27 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.42: +0 -102 lines
Diff to previous 1.42 (colored)

Remove bzero().

Revision 1.42 / (download) - annotate - [select for diffs], Sat Oct 7 06:26:03 1995 UTC (27 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.41: +1 -1 lines
Diff to previous 1.41 (colored)

Prefix names of system call implementation functions with `sys_'.

Revision 1.41 / (download) - annotate - [select for diffs], Sat Jul 1 23:55:31 1995 UTC (27 years, 7 months ago) by christos
Branch: MAIN
Changes since 1.40: +122 -4 lines
Diff to previous 1.40 (colored)

svr4_machdep.c: Fix {get,set}context and sendsig.
locore.s: add signal trampoline code for svr4. There is a lot of code
	  duplication there. Maybe we should share the code?
SVR4 status now:
	/bin/sh:	works
	/bin/ls:	works
	/bin/sleep:	works
	/bin/csh:	gives unknown software trap 0xa7
	/bin/ldd:	works

Revision 1.40 / (download) - annotate - [select for diffs], Sun Jun 25 23:27:15 1995 UTC (27 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.39: +7 -5 lines
Diff to previous 1.39 (colored)

Reserve arguments 2-4 for SunOS loaders; pass DDB stuff in args 5 and 6.

Revision 1.39 / (download) - annotate - [select for diffs], Sat Jun 24 20:42:59 1995 UTC (27 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.38: +2 -7 lines
Diff to previous 1.38 (colored)

For a mmu3/sun4 too, it will suffice to just map the first 16MB.

Revision 1.38 / (download) - annotate - [select for diffs], Fri Jun 23 15:44:34 1995 UTC (27 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.37: +60 -26 lines
Diff to previous 1.37 (colored)

Assume kernel is < 16MB in size,
Massage the a few control bits before remapping (from David S. Miller).

Revision 1.37 / (download) - annotate - [select for diffs], Tue May 30 20:29:42 1995 UTC (27 years, 8 months ago) by pk
Branch: MAIN
Changes since 1.36: +38 -18 lines
Diff to previous 1.36 (colored)

Remove useless msgbufmapped definition.
Two cases of incorrect addressing while not mapped at KERNBASE.
Some more sun4m stuff.

Revision 1.36 / (download) - annotate - [select for diffs], Sat Apr 22 20:28:31 1995 UTC (27 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.35: +8 -0 lines
Diff to previous 1.35 (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.35 / (download) - annotate - [select for diffs], Wed Apr 19 12:49:27 1995 UTC (27 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.34: +6 -6 lines
Diff to previous 1.34 (colored)

probeset() was trashing its arguments; fix from Chuck Cranor.

Revision 1.34 / (download) - annotate - [select for diffs], Thu Apr 13 14:52:24 1995 UTC (27 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.33: +22 -2 lines
Diff to previous 1.33 (colored)

Remap regions to KERNBASE on 3-level MMU machines.

Revision 1.33 / (download) - annotate - [select for diffs], Fri Mar 31 02:54:10 1995 UTC (27 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.32: +2 -2 lines
Diff to previous 1.32 (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.32 / (download) - annotate - [select for diffs], Sun Mar 12 12:25:16 1995 UTC (27 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.31: +9 -9 lines
Diff to previous 1.31 (colored)

Move a comment back to appropriate place.

Revision 1.31 / (download) - annotate - [select for diffs], Wed Mar 1 09:26:29 1995 UTC (27 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.30: +0 -2 lines
Diff to previous 1.30 (colored)

Make setjmp/longjmp available on non-DDB kernels.

Revision 1.30 / (download) - annotate - [select for diffs], Sat Dec 17 08:45:35 1994 UTC (28 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.29: +4 -0 lines
Diff to previous 1.29 (colored)

microtime botch

Revision 1.29 / (download) - annotate - [select for diffs], Fri Dec 16 22:11:47 1994 UTC (28 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.28: +26 -4 lines
Diff to previous 1.28 (colored)

microtime -> lo_microtime (oclock is different)
on machines with 6 register windows, "nop" out a pair of save/restore's (big
performance win on slow 4/100 and 4/200 machines)

Revision 1.28 / (download) - annotate - [select for diffs], Wed Dec 7 14:47:06 1994 UTC (28 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.27: +27 -13 lines
Diff to previous 1.27 (colored)

Use symbolic constants to access the prom vector.
Deal with v0 openrom (on sun4c machines only).

Revision 1.27 / (download) - annotate - [select for diffs], Tue Dec 6 09:58:09 1994 UTC (28 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.26: +21 -15 lines
Diff to previous 1.26 (colored)

Move DDB argument processing up before our input registers get trashed.

Revision 1.26 / (download) - annotate - [select for diffs], Tue Dec 6 08:34:04 1994 UTC (28 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.25: +21 -14 lines
Diff to previous 1.25 (colored)

place message buffer in low physical memory, so that it can survive a
warm boot. the sun4 boot program corrupts some memory there so adjust
upwards on the sun4. (from chuck)

Revision 1.25 / (download) - annotate - [select for diffs], Wed Nov 23 20:33:22 1994 UTC (28 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.24: +4 -4 lines
Diff to previous 1.24 (colored)

CP exceptions in wrong slots in trap table (noticed by matt@rme.com)

Revision 1.24 / (download) - annotate - [select for diffs], Wed Nov 23 07:00:00 1994 UTC (28 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.23: +7 -0 lines
Diff to previous 1.23 (colored)

stack trace on crash

Revision 1.23 / (download) - annotate - [select for diffs], Sun Nov 20 20:54:25 1994 UTC (28 years, 2 months ago) by deraadt
Branch: MAIN
Changes since 1.22: +0 -3 lines
Diff to previous 1.22 (colored)

copyright/Id cleanup

Revision 1.22 / (download) - annotate - [select for diffs], Mon Nov 14 04:16:15 1994 UTC (28 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.21: +7 -5 lines
Diff to previous 1.21 (colored)

make ldcontrolb() use p->p_addr instead of cpcb for the onfault, also
save current onfault value and act at splhigh.

Revision 1.21 / (download) - annotate - [select for diffs], Wed Nov 2 04:57:02 1994 UTC (28 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.20: +18 -4 lines
Diff to previous 1.20 (colored)

add ldcontrolb

Revision 1.20 / (download) - annotate - [select for diffs], Sun Oct 2 22:00:48 1994 UTC (28 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.19: +27 -22 lines
Diff to previous 1.19 (colored)

sun4/300 support works

Revision 1.19 / (download) - annotate - [select for diffs], Sun Sep 25 20:51:51 1994 UTC (28 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.18: +90 -3 lines
Diff to previous 1.18 (colored)

sun4 memory error register code

Revision 1.18 / (download) - annotate - [select for diffs], Tue Sep 20 07:48:24 1994 UTC (28 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.17: +36 -6 lines
Diff to previous 1.17 (colored)

ask the ROM if we are sun4c/sun4m/sun4d.

Revision 1.17 / (download) - annotate - [select for diffs], Fri Sep 2 08:13:20 1994 UTC (28 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored)

Don't clobber our input arguments.

Revision 1.16 / (download) - annotate - [select for diffs], Wed Aug 24 09:27:57 1994 UTC (28 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored)

fix relocation error

Revision 1.15 / (download) - annotate - [select for diffs], Tue Aug 23 14:37:22 1994 UTC (28 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored)

typo

Revision 1.14 / (download) - annotate - [select for diffs], Tue Aug 23 11:24:55 1994 UTC (28 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.13: +11 -11 lines
Diff to previous 1.13 (colored)

fix 3 dumb bugs

Revision 1.13 / (download) - annotate - [select for diffs], Sat Aug 20 09:13:25 1994 UTC (28 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.12: +209 -66 lines
Diff to previous 1.12 (colored)

stop using NBPG; start using USPACE
initialize cputyp, nbpg, pgshift, and pgofset variables based on cpu type.
deal with varying pagesize in register window underflow/overflow and trap
enter functions (hellish)
add idprom reading function for the sun4.

Revision 1.12 / (download) - annotate - [select for diffs], Fri Jun 10 14:33:08 1994 UTC (28 years, 8 months ago) by pk
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.11: +2 -2 lines
Diff to previous 1.11 (colored)

Allocate pmap's segmap separately.
Keep some tags on segment boundaries to optimise ctx_alloc().

Revision 1.11 / (download) - annotate - [select for diffs], Fri May 27 08:56:01 1994 UTC (28 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.10: +19 -47 lines
Diff to previous 1.10 (colored)

4.4-lite init startup

Revision 1.10 / (download) - annotate - [select for diffs], Thu May 19 07:12:56 1994 UTC (28 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.9: +45 -73 lines
Diff to previous 1.9 (colored)

catchup to 4.4-lite and delete some debug stuff

Revision 1.9 / (download) - annotate - [select for diffs], Thu May 12 08:34:57 1994 UTC (28 years, 9 months ago) by deraadt
Branch: MAIN
Changes since 1.8: +121 -18 lines
Diff to previous 1.8 (colored)

rearrange code to make sun4m support easier to add.

Revision 1.8 / (download) - annotate - [select for diffs], Wed Mar 23 20:40:26 1994 UTC (28 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.7: +70 -2 lines
Diff to previous 1.7 (colored)

DDB support

Revision 1.7 / (download) - annotate - [select for diffs], Wed Mar 16 16:14:44 1994 UTC (28 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

make gas happy.

Revision 1.6 / (download) - annotate - [select for diffs], Thu Mar 10 20:59:28 1994 UTC (28 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.5: +4 -4 lines
Diff to previous 1.5 (colored)

Fix addupc().

Revision 1.5 / (download) - annotate - [select for diffs], Tue Feb 1 06:01:43 1994 UTC (29 years ago) by deraadt
Branch: MAIN
Changes since 1.4: +52 -24 lines
Diff to previous 1.4 (colored)

sparc runs in current today

Revision 1.4 / (download) - annotate - [select for diffs], Wed Nov 24 02:39:31 1993 UTC (29 years, 2 months ago) by deraadt
Branch: MAIN
CVS Tags: sparc-magnum
Changes since 1.3: +4 -4 lines
Diff to previous 1.3 (colored)

properly setup the kernel stack during startup
use CCFSZ not 96..

Revision 1.3 / (download) - annotate - [select for diffs], Wed Nov 10 03:13:43 1993 UTC (29 years, 3 months ago) by deraadt
Branch: MAIN
Changes since 1.2: +2 -18 lines
Diff to previous 1.2 (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.2 / (download) - annotate - [select for diffs], Mon Oct 11 02:16:20 1993 UTC (29 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +2 -6 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:18 1993 UTC (29 years, 4 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>