The NetBSD Project

CVS log for src/sys/arch/powerpc/powerpc/locore_subr.S

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

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.55.6.1: download - view: text, markup, annotated - select for diffs
Mon Jul 31 13:56:14 2023 UTC (17 months, 3 weeks ago) by martin
Branches: netbsd-8
CVS tags: netbsd-8-3-RELEASE
Diff to: previous 1.55: preferred, colored; next MAIN 1.56: preferred, colored
Changes since revision 1.55: +38 -1 lines
Pull up following revision(s) (requested by riastradh in ticket #1859):

	sys/arch/ia64/ia64/vm_machdep.c: revision 1.18
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.67
	sys/arch/aarch64/aarch64/locore.S: revision 1.91
	sys/arch/mips/include/asm.h: revision 1.74
	sys/arch/hppa/include/cpu.h: revision 1.13
	sys/arch/arm/arm/armv6_start.S: revision 1.38
	 (applied also to sys/arch/arm/cortex/a9_mpsubr.S,
	 sys/arch/arm/cortex/a9_mpsubr.S,
	 sys/arch/arm/cortex/cortex_init.S)
	sys/arch/evbmips/ingenic/cpu_startup.S: revision 1.2
	sys/arch/mips/mips/locore.S: revision 1.229
	sys/arch/alpha/include/asm.h: revision 1.45
	 (applied to sys/arch/alpha/alpha/multiproc.s)
	sys/arch/sparc64/sparc64/locore.s: revision 1.432
	sys/arch/vax/vax/subr.S: revision 1.42
	sys/arch/mips/mips/locore_mips3.S: revision 1.116
	sys/arch/ia64/ia64/machdep.c: revision 1.44
	sys/arch/arm/arm32/cpuswitch.S: revision 1.106
	sys/arch/sparc/sparc/locore.s: revision 1.284
	(all via patch)

aarch64: Add missing barriers in cpu_switchto.
Details in comments.

Note: This is a conservative change that inserts a barrier where
there was a comment saying none is needed, which is probably correct.
The goal of this change is to systematically add barriers to be
confident in correctness; subsequent changes may remove some bariers,
as an optimization, with an explanation of why each barrier is not
needed.

PR kern/57240

alpha: Add missing barriers in cpu_switchto.
Details in comments.

arm32: Add missing barriers in cpu_switchto.
Details in comments.

hppa: Add missing barriers in cpu_switchto.
Not sure hppa has ever had working MULTIPROCESSOR, so maybe no
pullups needed?

ia64: Add missing barriers in cpu_switchto.
(ia64 has never really worked, so no pullups needed, right?)

mips: Add missing barriers in cpu_switchto.
Details in comments.

powerpc: Add missing barriers in cpu_switchto.
Details in comments.

sparc: Add missing barriers in cpu_switchto.

sparc64: Add missing barriers in cpu_switchto.
Details in comments.

vax: Note where cpu_switchto needs barriers.

Not sure vax has ever had working MULTIPROCESSOR, though, and I'm not
even sure how to spell store-before-load barriers on VAX, so no
functional change for now.

Revision 1.57.4.3: download - view: text, markup, annotated - select for diffs
Mon Jul 31 13:44:15 2023 UTC (17 months, 3 weeks ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-4-RELEASE
Diff to: previous 1.57.4.2: preferred, colored; branchpoint 1.57: preferred, colored; next MAIN 1.58: preferred, colored
Changes since revision 1.57.4.2: +38 -1 lines
Pull up following revision(s) (requested by riastradh in ticket #1676):

	sys/arch/ia64/ia64/vm_machdep.c: revision 1.18
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.67
	sys/arch/aarch64/aarch64/locore.S: revision 1.91
	sys/arch/mips/include/asm.h: revision 1.74
	sys/arch/hppa/include/cpu.h: revision 1.13
	sys/arch/arm/arm/armv6_start.S: revision 1.38
	sys/arch/evbmips/ingenic/cpu_startup.S: revision 1.2
	sys/arch/mips/mips/locore.S: revision 1.229
	sys/arch/aarch64/aarch64/cpuswitch.S: revision 1.40
	sys/arch/alpha/include/asm.h: revision 1.45
	sys/arch/sparc64/sparc64/locore.s: revision 1.432
	sys/arch/vax/vax/subr.S: revision 1.42
	sys/arch/mips/mips/locore_mips3.S: revision 1.116
	sys/arch/ia64/ia64/machdep.c: revision 1.44
	sys/arch/arm/arm32/cpuswitch.S: revision 1.106
	sys/arch/sparc/sparc/locore.s: revision 1.284
	(all via patch)

aarch64: Add missing barriers in cpu_switchto.
Details in comments.

Note: This is a conservative change that inserts a barrier where
there was a comment saying none is needed, which is probably correct.
The goal of this change is to systematically add barriers to be
confident in correctness; subsequent changes may remove some bariers,
as an optimization, with an explanation of why each barrier is not
needed.

PR kern/57240

alpha: Add missing barriers in cpu_switchto.
Details in comments.

arm32: Add missing barriers in cpu_switchto.
Details in comments.

hppa: Add missing barriers in cpu_switchto.
Not sure hppa has ever had working MULTIPROCESSOR, so maybe no
pullups needed?

ia64: Add missing barriers in cpu_switchto.
(ia64 has never really worked, so no pullups needed, right?)

mips: Add missing barriers in cpu_switchto.
Details in comments.

powerpc: Add missing barriers in cpu_switchto.
Details in comments.

sparc: Add missing barriers in cpu_switchto.

sparc64: Add missing barriers in cpu_switchto.
Details in comments.

vax: Note where cpu_switchto needs barriers.

Not sure vax has ever had working MULTIPROCESSOR, though, and I'm not
even sure how to spell store-before-load barriers on VAX, so no
functional change for now.

Revision 1.66.4.1: download - view: text, markup, annotated - select for diffs
Mon Jul 31 13:36:30 2023 UTC (17 months, 3 weeks ago) by martin
Branches: netbsd-10
CVS tags: netbsd-10-1-RELEASE, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Diff to: previous 1.66: preferred, colored; next MAIN 1.67: preferred, colored
Changes since revision 1.66: +38 -1 lines
Pull up following revision(s) (requested by riastradh in ticket #264):

	sys/arch/ia64/ia64/vm_machdep.c: revision 1.18
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.67
	sys/arch/aarch64/aarch64/locore.S: revision 1.91
	sys/arch/mips/include/asm.h: revision 1.74
	sys/arch/hppa/include/cpu.h: revision 1.13
	sys/arch/arm/arm/armv6_start.S: revision 1.38
	sys/arch/evbmips/ingenic/cpu_startup.S: revision 1.2
	sys/arch/mips/mips/locore.S: revision 1.229
	sys/arch/aarch64/aarch64/cpuswitch.S: revision 1.40
	sys/arch/alpha/include/asm.h: revision 1.45
	sys/arch/sparc64/sparc64/locore.s: revision 1.432
	sys/arch/vax/vax/subr.S: revision 1.42
	sys/arch/mips/mips/locore_mips3.S: revision 1.116
	sys/arch/riscv/riscv/cpu_switch.S: revision 1.3
	sys/arch/ia64/ia64/machdep.c: revision 1.44
	sys/arch/arm/arm32/cpuswitch.S: revision 1.106
	sys/arch/sparc/sparc/locore.s: revision 1.284

aarch64: Add missing barriers in cpu_switchto.
Details in comments.

Note: This is a conservative change that inserts a barrier where
there was a comment saying none is needed, which is probably correct.
The goal of this change is to systematically add barriers to be
confident in correctness; subsequent changes may remove some bariers,
as an optimization, with an explanation of why each barrier is not
needed.

PR kern/57240

alpha: Add missing barriers in cpu_switchto.
Details in comments.

arm32: Add missing barriers in cpu_switchto.
Details in comments.

hppa: Add missing barriers in cpu_switchto.
Not sure hppa has ever had working MULTIPROCESSOR, so maybe no
pullups needed?

ia64: Add missing barriers in cpu_switchto.
(ia64 has never really worked, so no pullups needed, right?)

mips: Add missing barriers in cpu_switchto.
Details in comments.

powerpc: Add missing barriers in cpu_switchto.
Details in comments.

riscv: Add missing barriers in cpu_switchto.
Details in comments.

sparc: Add missing barriers in cpu_switchto.

sparc64: Add missing barriers in cpu_switchto.
Details in comments.

vax: Note where cpu_switchto needs barriers.

Not sure vax has ever had working MULTIPROCESSOR, though, and I'm not
even sure how to spell store-before-load barriers on VAX, so no
functional change for now.

Revision 1.68: download - view: text, markup, annotated - select for diffs
Wed Mar 1 08:18:13 2023 UTC (22 months, 3 weeks ago) by riastradh
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, HEAD
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +8 -4 lines
powerpc: Optimization: Omit needless membar when triggering softint.

When we are triggering a softint, it can't already hold any mutexes.
So any path to mutex_exit(mtx) must go via mutex_enter(mtx), which is
always done with atomic r/m/w, and we need not issue any explicit
barrier between ci->ci_curlwp = softlwp and a potential load of
mtx->mtx_owner in mutex_exit.

PR kern/57240

XXX pullup-8
XXX pullup-9
XXX pullup-10

Revision 1.67: download - view: text, markup, annotated - select for diffs
Thu Feb 23 14:56:11 2023 UTC (22 months, 4 weeks ago) by riastradh
Branches: MAIN
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +38 -1 lines
powerpc: Add missing barriers in cpu_switchto.

Details in comments.

PR kern/57240

XXX pullup-8
XXX pullup-9
XXX pullup-10

Revision 1.66: download - view: text, markup, annotated - select for diffs
Wed Mar 16 09:48:23 2022 UTC (2 years, 10 months ago) by andvar
Branches: MAIN
CVS tags: netbsd-10-base, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Branch point for: netbsd-10
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +2 -2 lines
s/frmae/frame/

Revision 1.63.2.1: download - view: text, markup, annotated - select for diffs
Sat Apr 3 22:28:35 2021 UTC (3 years, 9 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63: +2 -7 lines
Sync with HEAD.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Sat Mar 6 08:34:58 2021 UTC (3 years, 10 months ago) by rin
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +2 -2 lines
For ibm4xx and booke, restore saved PSL_EE bit as done for oea,
instead of forcibly enabling interrupts.

Revision 1.64: download - view: text, markup, annotated - select for diffs
Sat Mar 6 08:08:19 2021 UTC (3 years, 10 months ago) by rin
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +1 -6 lines
For booke and ibm4xx, switch to software-based single-stepping for PT_STEP
ptrace(2) command from broken hardware-based implementation.

As described in proposal on port-powerpc@,

http://mail-index.netbsd.org/port-powerpc/2021/02/26/msg003597.html

hardware debug facilities of booke and 4xx use critical interrupts, that
are difficult to handle for this purpose; they are not automatically masked
when entering kernel mode via system call trap or hardware interrupt.
See my proposal above for more details.

Now, hardware debug facilities are exclusively usable by kernel itself.
They are much more functional than PSL_SE MSR bit of oea, and should be
useful to, e.g., support byte-granular watchpoint for DDB in the future.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Mon Jul 6 11:06:52 2020 UTC (4 years, 6 months ago) by rin
Branches: MAIN
Branch point for: thorpej-futex
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +1 -2 lines
Drop unused opt_lockdebug.h.

Revision 1.62: download - view: text, markup, annotated - select for diffs
Mon Jul 6 09:34:18 2020 UTC (4 years, 6 months ago) by rin
Branches: MAIN
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +6 -4 lines
Style and cosmetic changes. No binary changes intended.

Revision 1.56.2.2: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:07:50 2020 UTC (4 years, 9 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.56.2.1: preferred, colored; branchpoint 1.56: preferred, colored; next MAIN 1.57: preferred, colored
Changes since revision 1.56.2.1: +8 -11 lines
Merge changes from current as of 20200406

Revision 1.57.4.2: download - view: text, markup, annotated - select for diffs
Tue Mar 3 18:54:59 2020 UTC (4 years, 10 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE
Diff to: previous 1.57.4.1: preferred, colored; branchpoint 1.57: preferred, colored
Changes since revision 1.57.4.1: +5 -1 lines
Pull up following revision(s) (requested by rin in ticket #755):

	sys/arch/evbppc/conf/std.virtex: revision 1.4
	sys/arch/powerpc/powerpc/trap_subr.S: revision 1.81
	sys/arch/powerpc/ibm4xx/4xx_trap_subr.S: revision 1.8
	sys/arch/evbppc/conf/std.walnut: revision 1.9
	common/lib/libc/arch/powerpc/atomic/atomic_op_asm.h: revision 1.7
	sys/arch/powerpc/include/asm.h: revision 1.49
	common/lib/libc/arch/powerpc/atomic/atomic_cas.S: revision 1.9
	sys/arch/powerpc/ibm4xx/trap_subr.S: revision 1.28
	sys/arch/powerpc/include/lock.h: revision 1.15
	sys/arch/evbppc/conf/std.obs266: revision 1.3
	common/lib/libc/arch/powerpc/atomic/atomic_swap.S: revision 1.8
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.61
	sys/arch/powerpc/powerpc/lock_stubs.S: revision 1.12
	sys/arch/evbppc/conf/std.obs200: revision 1.5

Implement workaround for IBM405 Errata 77 (aka CPU_210), where
interrupted stwcx. may errantly write data to memory:

     https://elinux.org/images/1/1d/Ppc405gp-errata.pdf

This is because stwcx. is split into two pieces in the pipeline.

We need to
(1) insert dcbt before every stwcx. instruction, as well as
(2) insert sync before every rfi/rfci instruction.

It is unclear which processors are affected, but according to Linux,
all 405-based cores up until 405GPR and 405EP are affected:

     https://github.com/torvalds/linux/blob/master/arch/powerpc/platforms/40x/Kconfig#L140

For kernel, this workaround can be restricted to affected processors.

However, for kernel modules and userland, we have to enable it for all
32bit powerpc archs in order to share common binaries as before.
Proposed on port-powerpc:

     http://mail-index.netbsd.org/port-powerpc/2020/02/21/msg003583.html

Revision 1.61: download - view: text, markup, annotated - select for diffs
Sun Mar 1 23:23:36 2020 UTC (4 years, 10 months ago) by rin
Branches: 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
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +5 -1 lines
Implement workaround for IBM405 Errata 77 (aka CPU_210), where
interrupted stwcx. may errantly write data to memory:

    https://elinux.org/images/1/1d/Ppc405gp-errata.pdf

This is because stwcx. is split into two pieces in the pipeline.

We need to
(1) insert dcbt before every stwcx. instruction, as well as
(2) insert sync before every rfi/rfci instruction.

It is unclear which processors are affected, but according to Linux,
all 405-based cores up until 405GPR and 405EP are affected:

    https://github.com/torvalds/linux/blob/master/arch/powerpc/platforms/40x/Kconfig#L140

For kernel, this workaround can be restricted to affected processors.
However, for kernel modules and userland, we have to enable it for all
32bit powerpc archs in order to share common binaries as before.

Proposed on port-powerpc:

    http://mail-index.netbsd.org/port-powerpc/2020/02/21/msg003583.html

Revision 1.57.6.2: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:18:30 2020 UTC (4 years, 10 months ago) by ad
Branches: ad-namecache
Diff to: previous 1.57.6.1: preferred, colored; branchpoint 1.57: preferred, colored; next MAIN 1.58: preferred, colored
Changes since revision 1.57.6.1: +3 -1 lines
Sync with head.

Revision 1.57.4.1: download - view: text, markup, annotated - select for diffs
Thu Feb 27 18:50:43 2020 UTC (4 years, 10 months ago) by martin
Branches: netbsd-9
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +3 -1 lines
Pull up following revision(s) (requested by rin in ticket #737):

	sys/arch/powerpc/powerpc/trap.c: revision 1.157
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.60

Comment out do_ucas_32(), only user of which, _ucas_32(), is commented out
since powerpc/trap.c rev 1.156:
     http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/powerpc/powerpc/trap.c#rev1.156

Revision 1.60: download - view: text, markup, annotated - select for diffs
Tue Feb 25 00:42:12 2020 UTC (4 years, 10 months ago) by rin
Branches: MAIN
CVS tags: ad-namecache-base3
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +3 -1 lines
Comment out do_ucas_32(), only user of which, _ucas_32(), is commented out
since powerpc/trap.c rev 1.156:

    http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/powerpc/powerpc/trap.c#rev1.156

Revision 1.57.6.1: download - view: text, markup, annotated - select for diffs
Fri Jan 17 21:47:27 2020 UTC (5 years ago) by ad
Branches: ad-namecache
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +2 -11 lines
Sync with head.

Revision 1.59: download - view: text, markup, annotated - select for diffs
Wed Jan 8 20:59:19 2020 UTC (5 years ago) by skrll
Branches: MAIN
CVS tags: ad-namecache-base2, ad-namecache-base1
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +2 -9 lines
oldlwp is always non-NULL in cpu_switchto so remove the test for NULL.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Wed Jan 8 17:38:42 2020 UTC (5 years ago) by ad
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +1 -3 lines
Hopefully fix some problems seen with MP support on non-x86, in particular
where curcpu() is defined as curlwp->l_cpu:

- mi_switch(): undo the ~2007ish optimisation to unlock curlwp before
  calling cpu_switchto().  It's not safe to let other actors mess with the
  LWP (in particular l->l_cpu) while it's still context switching.  This
  removes l->l_ctxswtch.

- Move the LP_RUNNING flag into l->l_flag and rename to LW_RUNNING since
  it's now covered by the LWP's lock.

- Ditch lwp_exit_switchaway() and just call mi_switch() instead.  Everything
  is in cache anyway so it wasn't buying much by trying to avoid saving old
  state.  This means cpu_switchto() will never be called with prevlwp ==
  NULL.

- Remove some KERNEL_LOCK handling which hasn't been needed for years.

Revision 1.56.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:06:39 2019 UTC (5 years, 7 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +2 -2 lines
Sync with HEAD

Revision 1.57: download - view: text, markup, annotated - select for diffs
Sat Apr 6 03:06:27 2019 UTC (5 years, 9 months ago) by thorpej
Branches: MAIN
CVS tags: phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, isaki-audio2-base, isaki-audio2, ad-namecache-base
Branch point for: netbsd-9, ad-namecache
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +2 -2 lines
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.55.12.1: download - view: text, markup, annotated - select for diffs
Mon May 21 04:36:01 2018 UTC (6 years, 8 months ago) by pgoyette
Branches: pgoyette-compat
CVS tags: pgoyette-compat-merge-20190127
Diff to: previous 1.55: preferred, colored; next MAIN 1.56: preferred, colored
Changes since revision 1.55: +13 -1 lines
Sync with HEAD

Revision 1.56: download - view: text, markup, annotated - select for diffs
Fri May 4 17:13:08 2018 UTC (6 years, 8 months ago) by macallan
Branches: MAIN
CVS tags: phil-wifi-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521
Branch point for: phil-wifi
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +13 -1 lines
when spinning up secondary CPUs, put them in bridge mode if the primary cpu is

Revision 1.49.2.2: download - view: text, markup, annotated - select for diffs
Sun Dec 3 11:36:38 2017 UTC (7 years, 1 month ago) by jdolecek
Branches: tls-maxphys
Diff to: previous 1.49.2.1: preferred, colored; branchpoint 1.49: preferred, colored; next MAIN 1.50: preferred, colored
Changes since revision 1.49.2.1: +3 -0 lines
update from HEAD

Revision 1.54.4.1: download - view: text, markup, annotated - select for diffs
Mon Aug 28 17:51:49 2017 UTC (7 years, 4 months ago) by skrll
Branches: nick-nhusb
Diff to: previous 1.54: preferred, colored; next MAIN 1.55: preferred, colored
Changes since revision 1.54: +4 -1 lines
Sync with HEAD

Revision 1.54.12.1: download - view: text, markup, annotated - select for diffs
Fri Apr 21 16:53:34 2017 UTC (7 years, 9 months ago) by bouyer
Branches: bouyer-socketcan
Diff to: previous 1.54: preferred, colored; next MAIN 1.55: preferred, colored
Changes since revision 1.54: +4 -1 lines
Sync with HEAD

Revision 1.54.2.1: download - view: text, markup, annotated - select for diffs
Wed Apr 19 17:02:43 2017 UTC (7 years, 9 months ago) by snj
Branches: netbsd-7
CVS tags: netbsd-7-2-RELEASE
Diff to: previous 1.54: preferred, colored; next MAIN 1.55: preferred, colored
Changes since revision 1.54: +4 -1 lines
Pull up following revision(s) (requested by phx in ticket #1382):
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.55
in cpu_switchto() and the fast-softint context switch code,
put back the stwcx. instruction to clear the reservation.
we used to have this in the old cpu_switch() until it was
if-0'd in 2003 and removed completely in 2007.
this fixes hangs I've seen where a softint thread is
blocked waiting for a mutex that is not held.
this should also fix PR 44387.

Revision 1.54.8.1: download - view: text, markup, annotated - select for diffs
Mon Mar 20 06:57:19 2017 UTC (7 years, 10 months ago) by pgoyette
Branches: pgoyette-localcount
Diff to: previous 1.54: preferred, colored; next MAIN 1.55: preferred, colored
Changes since revision 1.54: +4 -1 lines
Sync with HEAD

Revision 1.55: download - view: text, markup, annotated - select for diffs
Tue Feb 28 17:35:29 2017 UTC (7 years, 10 months ago) by chs
Branches: MAIN
CVS tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-compat-base, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1
Branch point for: pgoyette-compat, netbsd-8
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +4 -1 lines
in cpu_switchto() and the fast-softint context switch code,
put back the stwcx. instruction to clear the reservation.
we used to have this in the old cpu_switch() until it was
if-0'd in 2003 and removed completely in 2007.
this fixes hangs I've seen where a softint thread is
blocked waiting for a mutex that is not held.
this should also fix PR 44387.

Revision 1.49.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 20 00:03:20 2014 UTC (10 years, 5 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +10 -14 lines
Rebase to HEAD as of a few days ago.

Revision 1.50.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 10 06:54:05 2014 UTC (10 years, 5 months ago) by tls
Branches: tls-earlyentropy
Diff to: previous 1.50: preferred, colored; next MAIN 1.51: preferred, colored
Changes since revision 1.50: +9 -9 lines
Rebase.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Wed Jul 30 23:27:55 2014 UTC (10 years, 5 months ago) by matt
Branches: MAIN
CVS tags: tls-maxphys-base, tls-earlyentropy-base, pgoyette-localcount-base, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, 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, 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-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, 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, netbsd-7-0, localcount-20160914, bouyer-socketcan-base
Branch point for: pgoyette-localcount, nick-nhusb, netbsd-7, bouyer-socketcan
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +2 -2 lines
Fix diagnostic trap to be correct.  PSL_EE@l would be sign-extended and this
could never match the result of the andi. before it.

Revision 1.53: download - view: text, markup, annotated - select for diffs
Wed Jul 30 23:15:23 2014 UTC (10 years, 5 months ago) by joerg
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +2 -2 lines
Correct last, ha+l uses lis+addi, so use h+l.

Revision 1.52: download - view: text, markup, annotated - select for diffs
Wed Jul 30 22:45:21 2014 UTC (10 years, 5 months ago) by joerg
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +2 -2 lines
Build 32bit constant with lis+ori, not lis+addi. The instructions
differ on the sign extension handling of the immediate.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Tue Jul 29 19:15:47 2014 UTC (10 years, 5 months ago) by joerg
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +6 -6 lines
Official PPC ISA documentation has no SP register, so use R1 directly.

Revision 1.46.2.3: download - view: text, markup, annotated - select for diffs
Thu May 22 11:40:05 2014 UTC (10 years, 8 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.46.2.2: preferred, colored; branchpoint 1.46: preferred, colored; next MAIN 1.47: preferred, colored
Changes since revision 1.46.2.2: +2 -6 lines
sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.49.4.1: download - view: text, markup, annotated - select for diffs
Wed Aug 28 23:59:20 2013 UTC (11 years, 4 months ago) by rmind
Branches: rmind-smpnet
Diff to: previous 1.49: preferred, colored; next MAIN 1.50: preferred, colored
Changes since revision 1.49: +2 -6 lines
sync with head

Revision 1.50: download - view: text, markup, annotated - select for diffs
Fri Aug 23 06:22:32 2013 UTC (11 years, 5 months ago) by matt
Branches: MAIN
CVS tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +2 -6 lines
Simplify since we know curlwp is in %r13

Revision 1.46.2.2: download - view: text, markup, annotated - select for diffs
Tue Oct 30 17:20:13 2012 UTC (12 years, 2 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.46.2.1: preferred, colored; branchpoint 1.46: preferred, colored
Changes since revision 1.46.2.1: +11 -1 lines
sync with head

Revision 1.49: download - view: text, markup, annotated - select for diffs
Wed Aug 1 20:35:52 2012 UTC (12 years, 5 months ago) by matt
Branches: MAIN
CVS tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: tls-maxphys, rmind-smpnet
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +11 -1 lines
Add diagnostic code emptyidlespin verifying that the current IPL
is IPL_NONE and EE is set in the MSR.

Revision 1.46.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:06:48 2012 UTC (12 years, 9 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -10 lines
sync with head

Revision 1.46.6.2: download - view: text, markup, annotated - select for diffs
Fri Feb 24 09:11:33 2012 UTC (12 years, 11 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.46.6.1: preferred, colored; branchpoint 1.46: preferred, colored; next MAIN 1.47: preferred, colored
Changes since revision 1.46.6.1: +1 -8 lines
sync to -current.

Revision 1.48: download - view: text, markup, annotated - select for diffs
Sun Feb 19 21:06:23 2012 UTC (12 years, 11 months ago) by rmind
Branches: MAIN
CVS tags: 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
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +1 -8 lines
Remove COMPAT_SA / KERN_SA.  Welcome to 6.99.3!
Approved by core@.

Revision 1.46.6.1: download - view: text, markup, annotated - select for diffs
Sat Feb 18 07:33:00 2012 UTC (12 years, 11 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -3 lines
merge to -current.

Revision 1.47: download - view: text, markup, annotated - select for diffs
Tue Dec 13 11:03:52 2011 UTC (13 years, 1 month ago) by kiyohara
Branches: MAIN
CVS tags: 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, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base2
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -3 lines
Remove white-spaces.

Revision 1.41.4.1: download - view: text, markup, annotated - select for diffs
Thu Jun 23 14:19:34 2011 UTC (13 years, 7 months ago) by cherry
Branches: cherry-xenmp
Diff to: previous 1.41: preferred, colored; next MAIN 1.42: preferred, colored
Changes since revision 1.41: +21 -9 lines
Catchup with rmind-uvmplock merge.

Revision 1.46: download - view: text, markup, annotated - select for diffs
Tue Jun 21 05:14:26 2011 UTC (13 years, 7 months ago) by matt
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +1 -7 lines
remove a #if 0 block

Revision 1.45: download - view: text, markup, annotated - select for diffs
Mon Jun 20 08:18:28 2011 UTC (13 years, 7 months ago) by matt
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +9 -1 lines
If this is a MODULAR kernel, export USRSTACK and CPU_MAXNUM as linker symbols
so modules can access them.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Fri Jun 17 23:14:40 2011 UTC (13 years, 7 months ago) by matt
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +3 -2 lines
Call splraise(IPL_HIGH) instead splhigh.  Easier to a nasty problem.

Revision 1.43: download - view: text, markup, annotated - select for diffs
Fri Jun 17 05:11:48 2011 UTC (13 years, 7 months ago) by matt
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +4 -4 lines
USPRG0 is only on BOOKE

Revision 1.39.4.2: download - view: text, markup, annotated - select for diffs
Sun Jun 12 00:24:05 2011 UTC (13 years, 7 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.39.4.1: preferred, colored; branchpoint 1.39: preferred, colored; next MAIN 1.40: preferred, colored
Changes since revision 1.39.4.1: +12 -3 lines
sync with head

Revision 1.40.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:06:30 2011 UTC (13 years, 7 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.40: preferred, colored; next MAIN 1.41: preferred, colored
Changes since revision 1.40: +234 -13 lines
Sync with HEAD.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Sun Jun 5 16:52:26 2011 UTC (13 years, 7 months ago) by matt
Branches: MAIN
CVS tags: rmind-uvmplock-nbase, rmind-uvmplock-base
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +13 -4 lines
Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.

Revision 1.39.4.1: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:51:41 2011 UTC (13 years, 10 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +239 -11 lines
sync with head

Revision 1.41: download - view: text, markup, annotated - select for diffs
Tue Jan 18 01:02:55 2011 UTC (14 years ago) by matt
Branches: MAIN
CVS tags: uebayasi-xip-base7, jym-xensuspend-nbase, jym-xensuspend-base, cherry-xenmp-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: cherry-xenmp
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +223 -11 lines
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.

Revision 1.37.14.1.4.1: download - view: text, markup, annotated - select for diffs
Fri Jan 7 02:07:27 2011 UTC (14 years ago) by matt
Branches: matt-nb5-pq3
Diff to: previous 1.37.14.1: preferred, colored; next MAIN 1.37.20.1: preferred, colored
Changes since revision 1.37.14.1: +221 -8 lines
Add fast softint support.
Add booke support.

Revision 1.39.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 17 06:45:04 2010 UTC (14 years, 5 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.39: preferred, colored; next MAIN 1.40: preferred, colored
Changes since revision 1.39: +17 -1 lines
Sync with HEAD.

Revision 1.37.4.3: download - view: text, markup, annotated - select for diffs
Wed Aug 11 22:52:36 2010 UTC (14 years, 5 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.2: preferred, colored; branchpoint 1.37: preferred, colored; next MAIN 1.38: preferred, colored
Changes since revision 1.37.4.2: +17 -1 lines
sync with head.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Wed Jul 7 01:19:54 2010 UTC (14 years, 6 months ago) by chs
Branches: 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, matt-mips64-premerge-20101231, jruoho-x86intr-base
Branch point for: jruoho-x86intr
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +17 -1 lines
implement ucas_* for powerpc/oea.

Revision 1.37.20.1.2.1: download - view: text, markup, annotated - select for diffs
Wed Apr 21 00:36:39 2010 UTC (14 years, 9 months ago) by matt
Branches: matt-nb5-mips64
CVS tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Diff to: previous 1.37.20.1: preferred, colored; next MAIN 1.38: preferred, colored
Changes since revision 1.37.20.1: +1 -1 lines
sync to netbsd-5

Revision 1.37.4.2: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:02:51 2010 UTC (14 years, 10 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37.4.1: preferred, colored; branchpoint 1.37: preferred, colored
Changes since revision 1.37.4.1: +3 -3 lines
sync with head

Revision 1.39: download - view: text, markup, annotated - select for diffs
Thu Dec 10 05:10:03 2009 UTC (15 years, 1 month ago) by rmind
Branches: MAIN
CVS tags: yamt-nfs-mp-base9, uebayasi-xip-base1, uebayasi-xip-base, matt-premerge-20091211
Branch point for: uebayasi-xip, rmind-uvmplock
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +3 -3 lines
Rename L_ADDR to L_PCB and amend some comments accordingly.

Revision 1.37.4.1: download - view: text, markup, annotated - select for diffs
Sat Jun 20 07:20:07 2009 UTC (15 years, 7 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +4 -1 lines
sync with head

Revision 1.37.20.1: download - view: text, markup, annotated - select for diffs
Tue Jun 9 17:54:06 2009 UTC (15 years, 7 months ago) by snj
Branches: netbsd-5-0
CVS tags: netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, 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
Branch point for: matt-nb5-mips64
Diff to: previous 1.37: preferred, colored; next MAIN 1.38: preferred, colored
Changes since revision 1.37: +4 -1 lines
Pull up following revision(s) (requested by martin in ticket #801):
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.38
	sys/arch/powerpc/powerpc/vm_machdep.c: revision 1.77
Do not use the same trampoline for cpu_setfunc and cpu_lwp_fork, the
latter does a lot more work.

Revision 1.37.14.1: download - view: text, markup, annotated - select for diffs
Tue Jun 9 17:52:58 2009 UTC (15 years, 7 months ago) by snj
Branches: 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, 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
Branch point for: matt-nb5-pq3
Diff to: previous 1.37: preferred, colored; next MAIN 1.38: preferred, colored
Changes since revision 1.37: +4 -1 lines
Pull up following revision(s) (requested by martin in ticket #801):
	sys/arch/powerpc/powerpc/locore_subr.S: revision 1.38
	sys/arch/powerpc/powerpc/vm_machdep.c: revision 1.77
Do not use the same trampoline for cpu_setfunc and cpu_lwp_fork, the
latter does a lot more work.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Sun Jun 7 23:21:26 2009 UTC (15 years, 7 months ago) by martin
Branches: MAIN
CVS tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, jymxensuspend-base
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +4 -1 lines
Do not use the same trampoline for cpu_setfunc and cpu_lwp_fork, the
latter does a lot more work.

Revision 1.35.6.1: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:22:33 2008 UTC (16 years, 7 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.35: preferred, colored; next MAIN 1.36: preferred, colored
Changes since revision 1.35: +38 -3 lines
Sync with HEAD.

Revision 1.37: download - view: text, markup, annotated - select for diffs
Thu Apr 10 23:29:01 2008 UTC (16 years, 9 months ago) by matt
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base2, yamt-nfs-mp-base, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, 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, mjf-devfs2-base, matt-mips64-base2, jym-xensuspend, hpcarm-cleanup-nbase, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: yamt-nfs-mp, netbsd-5-0, netbsd-5
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +4 -1 lines
On MP systems, make sure to update l->l_cpu with the cpu_info of the current
processor (in case it was running on a different processor before).

Revision 1.36: download - view: text, markup, annotated - select for diffs
Tue Apr 8 02:33:03 2008 UTC (16 years, 9 months ago) by garbled
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +35 -3 lines
SMP support for ofppc.  (finally)  Much thanks to Matt Thomas for help in
figuring out all the crazy nuances of getting this working, and to
Michael Lorenz for testing/fixing my changes on macppc.  Tested with a
quad-proc 7044-270.
Summary of changes:

Bumped CPU_MAXNUM to 16 on ofppc.
Added md_* routines to ofppc/cpu.c, to sync the timebase, and awaken the CPUs.
Fixed a bug in the test for a 64bit bridge cpu early in locore.S
Added code to set the interrupt priority for all CPUs with an openpic.
Change rtas to probe before cpus, to allow use of the rtas freeze/thaw
timebase code routines.
Fix CPU_INFO_FOREACH macro to iterate through detected cpus, not CPU_MAXNUM.
Change most uses of ci_cpuid to ci_index, to deal with CPUs that do not allow
writing to SPR_PIR.  Don't write SPR_PIR unless the secondary cpu identifies
itself as 0.
Change the hatchstack/interrupt stack allocations to allocate a 8192byte
interrupt stack, and a 4096 byte hatch stack, align them to 16 bytes, and
allocate them no lower than 0x10000.  Allocate them separately to prevent the
hatch stack corrupting the interrupt stack later on.
If the CPU is a 64bit cpu, copy SPR_ASR in cpu_hatch()
Set the idle stack to ci->ci_data.cpu_idlelwp->l_addr->u_pcb.pcb_sp.
Add OF_start_cpu().  Add a routine to ofwoea_initppc to spin up secondary
procs early, and place them into a spinloop waiting for the hatch routines
to be ready.
Modify the ipi routines to deal with openpics that reverse byte order on read
from an ipi register. (such as on the 7044)
Change the rtas setup to allocate the rtas physical base address above
the kernel, to avoid mucking up the hatch/interrupt stacks.

Revision 1.32.6.2: download - view: text, markup, annotated - select for diffs
Sun Mar 23 02:04:18 2008 UTC (16 years, 10 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.32.6.1: preferred, colored; branchpoint 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32.6.1: +8 -8 lines
sync with HEAD

Revision 1.27.8.6: download - view: text, markup, annotated - select for diffs
Wed Feb 27 08:36:23 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.27.8.5: preferred, colored; branchpoint 1.27: preferred, colored; next MAIN 1.28: preferred, colored
Changes since revision 1.27.8.5: +5 -5 lines
sync with head.

Revision 1.33.2.1: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:04:59 2008 UTC (16 years, 11 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +8 -8 lines
Sync with HEAD.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Thu Feb 14 19:41:54 2008 UTC (16 years, 11 months ago) by garbled
Branches: MAIN
CVS tags: 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-base, ad-socklock-base1
Branch point for: mjf-devfs2
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +5 -5 lines
Some powerpc cleanup.  Remove unneeded/bad usage of extern oeacpufeat.
Convert asm code to use %r register format.  Done by comparison to
disassembled output, double checked with diff of dissasembled output
before and after, and test booted on my 7044.

Revision 1.27.8.5: download - view: text, markup, annotated - select for diffs
Mon Feb 11 14:59:29 2008 UTC (16 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.27.8.4: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.8.4: +4 -4 lines
sync with head.

Revision 1.34: download - view: text, markup, annotated - select for diffs
Tue Feb 5 18:10:48 2008 UTC (16 years, 11 months ago) by garbled
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +4 -4 lines
Rewrite a big chunk of the pmap and locore code for powerpc to better
deal with the 64bit bridge mode.  pmap changes by Matt Thomas, rest by myself.

Change pmap.c to work similar to exec_elf.c to allow us to compile in
multiple pmaps to a single kernel.  This allows the pmap for bridge64 to
co-exist with the 32bit pmap.

Yank __HAVE_PMAP_PHYSSEG from all the oea code.

Add a new global, "oeacpufeat", which is used early in locore to determine
certain cpu features.  This allows us to conditionalize code early in the boot
for certain CPUs that have special needs.

Yank most of the ifdef PPC_OEA_BRIDGE64 code from almost every file it was
found in.  Some of it seemed incorrect, and my 7044 booted just fine
without it.  It would appear that the bridge cpus treat BAT instructions
as nops, so they seem to be safe.

In ofppc, check the oeacpufeat, and if we are on a 64bit proc, clear
MSR[SF], and ASR[V].

With all of these changes, a kernel with both PPC_OEA and PPC_OEA_BRIDGE64
will boot on the POWERIII-2 cpu.  However, it will not yet boot on a 32bit
cpu, because of CACHELINESIZE.  Work remains to be done there to fix that.

Revision 1.32.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:21:01 2007 UTC (17 years, 2 months ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +14 -1 lines
sync with HEAD

Revision 1.27.8.4: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:28:03 2007 UTC (17 years, 2 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.27.8.3: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.8.3: +14 -1 lines
sync with head.

Revision 1.32.4.1: download - view: text, markup, annotated - select for diffs
Fri Oct 26 15:43:19 2007 UTC (17 years, 3 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +14 -1 lines
Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.

Revision 1.32.10.1: download - view: text, markup, annotated - select for diffs
Thu Oct 25 22:36:30 2007 UTC (17 years, 3 months ago) by bouyer
Branches: bouyer-xenamd64
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +14 -1 lines
Sync with HEAD.

Revision 1.30.6.3: download - view: text, markup, annotated - select for diffs
Tue Oct 23 20:14:14 2007 UTC (17 years, 3 months ago) by ad
Branches: vmlocking
Diff to: previous 1.30.6.2: preferred, colored; branchpoint 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30.6.2: +14 -1 lines
Sync with head.

Revision 1.32.8.1: download - view: text, markup, annotated - select for diffs
Thu Oct 18 08:32:48 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-x86pmap
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +14 -1 lines
sync with head.

Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Oct 17 19:56:47 2007 UTC (17 years, 3 months ago) by garbled
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, matt-armv6-base, jmcneill-pm-base, jmcneill-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: mjf-devfs
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +14 -1 lines
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.30.14.5: download - view: text, markup, annotated - select for diffs
Thu Oct 11 18:51:56 2007 UTC (17 years, 3 months ago) by garbled
Branches: ppcoea-renovation
Diff to: previous 1.30.14.4: preferred, colored; branchpoint 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30.14.4: +14 -1 lines
Move a bunch of the macppc SMP code out of macppc, and down into the
generic OEA code.  Add a set of md callbacks into these shared routines,
that any oeappc SMP machine needs to provide.  This allows for generally
shared SMP startup code, but still allows for machine-specific
differences in the setup and kicking of the new CPU.

Convert macppc to this new layout.  Tested by Macallan.

Add an initial attempt at SMP to prep.  Tested on UP machine only,
untested on SMP yet.

Revision 1.30.14.4: download - view: text, markup, annotated - select for diffs
Wed Oct 3 19:24:45 2007 UTC (17 years, 3 months ago) by garbled
Branches: ppcoea-renovation
Diff to: previous 1.30.14.3: preferred, colored; branchpoint 1.30: preferred, colored
Changes since revision 1.30.14.3: +0 -0 lines
Sync with HEAD

Revision 1.27.8.3: download - view: text, markup, annotated - select for diffs
Mon Sep 3 14:29:02 2007 UTC (17 years, 4 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.27.8.2: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.8.2: +59 -308 lines
sync with head.

Revision 1.30.6.2: download - view: text, markup, annotated - select for diffs
Mon Aug 20 18:38:38 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.30.6.1: preferred, colored; branchpoint 1.30: preferred, colored
Changes since revision 1.30.6.1: +2 -2 lines
Sync with HEAD.

Revision 1.31.4.1: download - view: text, markup, annotated - select for diffs
Wed Aug 15 13:47:35 2007 UTC (17 years, 5 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.31: preferred, colored; next MAIN 1.32: preferred, colored
Changes since revision 1.31: +2 -2 lines
Sync with HEAD.

Revision 1.31.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 7 18:05:36 2007 UTC (17 years, 5 months ago) by matt
Branches: matt-mips64
Diff to: previous 1.31: preferred, colored; next MAIN 1.32: preferred, colored
Changes since revision 1.31: +2 -2 lines
Sync with HEAD.

Revision 1.30.14.3: download - view: text, markup, annotated - select for diffs
Thu Aug 2 05:34:22 2007 UTC (17 years, 5 months ago) by macallan
Branches: ppcoea-renovation
Diff to: previous 1.30.14.2: preferred, colored; branchpoint 1.30: preferred, colored
Changes since revision 1.30.14.2: +3 -2 lines
sync with HEAD

Revision 1.32: download - view: text, markup, annotated - select for diffs
Sat Jul 21 19:26:14 2007 UTC (17 years, 6 months ago) by matt
Branches: MAIN
CVS tags: yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, vmlocking-base, ppcoea-renovation-base, nick-csl-alignment-base5, matt-mips64-base, hpcarm-cleanup
Branch point for: yamt-x86pmap, matt-armv6, jmcneill-pm, bouyer-xenamd64
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +2 -2 lines
Don't call proc_trampoline_mp when starting a lwp.  (XXX why did we do this
before?)

Revision 1.30.8.1: download - view: text, markup, annotated - select for diffs
Wed Jul 11 20:01:30 2007 UTC (17 years, 6 months ago) by mjf
Branches: mjf-ufs-trans
Diff to: previous 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30: +58 -307 lines
Sync with head.

Revision 1.30.6.1: download - view: text, markup, annotated - select for diffs
Sun May 27 12:27:58 2007 UTC (17 years, 8 months ago) by ad
Branches: vmlocking
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +58 -307 lines
Sync with head.

Revision 1.30.14.2: download - view: text, markup, annotated - select for diffs
Tue May 22 17:27:22 2007 UTC (17 years, 8 months ago) by matt
Branches: ppcoea-renovation
Diff to: previous 1.30.14.1: preferred, colored; branchpoint 1.30: preferred, colored
Changes since revision 1.30.14.1: +57 -307 lines
Update to HEAD.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Thu May 17 14:51:27 2007 UTC (17 years, 8 months ago) by yamt
Branches: MAIN
CVS tags: nick-csl-alignment-base, mjf-ufs-trans-base
Branch point for: nick-csl-alignment, matt-mips64
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +58 -307 lines
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.30.14.1: download - view: text, markup, annotated - select for diffs
Thu May 10 15:25:38 2007 UTC (17 years, 8 months ago) by garbled
Branches: ppcoea-renovation
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +4 -4 lines
More cleanup:
1) Remove lcsplx, strayintr, and foosoft from all the converted ports.
None of this stuff is needed anymore.
2) because lcsplx is just "return spllower", just call spllower from
locore_subr.S instead.
3) Every port (except macppc) had a pretty similar cpu_configure(), so
take the common parts out and make a genppc_cpu_configure() in an attempt
to stop using imask[] outside of intr.c

Revision 1.30.2.2: download - view: text, markup, annotated - select for diffs
Sat Apr 7 17:50:38 2007 UTC (17 years, 9 months ago) by matt
Branches: yamt-idlelwp
Diff to: previous 1.30.2.1: preferred, colored; branchpoint 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30.2.1: +2 -1 lines
Save curlwp in cpu_switchto

Revision 1.30.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 3 15:20:10 2007 UTC (17 years, 9 months ago) by matt
Branches: yamt-idlelwp
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +58 -308 lines
Adapt powerpc to yamt-idlelwp.  Nuke cpu_setfunc.
Don't define _HAVE_BITENDIAN_BITOPS.  Misc cleanups.

Revision 1.27.8.2: download - view: text, markup, annotated - select for diffs
Mon Feb 26 09:07:56 2007 UTC (17 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.27.8.1: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.8.1: +1 -9 lines
sync with head.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Fri Feb 9 21:55:11 2007 UTC (17 years, 11 months ago) by ad
Branches: MAIN
CVS tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, post-newlock2-merge, ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp, vmlocking, ppcoea-renovation, mjf-ufs-trans
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +1 -9 lines
Merge newlock2 to head.

Revision 1.29.4.2: download - view: text, markup, annotated - select for diffs
Tue Jan 30 11:45:27 2007 UTC (17 years, 11 months ago) by ad
Branches: newlock2
Diff to: previous 1.29.4.1: preferred, colored; branchpoint 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29.4.1: +1 -9 lines
For now always call sched_unlock_idle/sched_lock_idle. They will be
removed by yamt's cpu_switchto() changes.

Revision 1.29.4.1: download - view: text, markup, annotated - select for diffs
Sun Jan 28 08:59:45 2007 UTC (17 years, 11 months ago) by ad
Branches: newlock2
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +5 -5 lines
powerpc changes.

Revision 1.27.8.1: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:46:44 2006 UTC (18 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +6 -6 lines
sync with head.

Revision 1.28.4.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 02:42:34 2006 UTC (18 years, 4 months ago) by rpaulo
Branches: rpaulo-netinet-merge-pcb
Diff to: previous 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28: +6 -6 lines
sync with head

Revision 1.28.8.1: download - view: text, markup, annotated - select for diffs
Fri Aug 11 15:42:41 2006 UTC (18 years, 5 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28: +6 -6 lines
sync with head

Revision 1.29: download - view: text, markup, annotated - select for diffs
Sat Aug 5 21:26:49 2006 UTC (18 years, 5 months ago) by sanjayl
Branches: 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
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +6 -6 lines
1st cut of Powermac G5 support (uses bridge mode).

Revision 1.28: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:18:46 2005 UTC (19 years, 1 month ago) by christos
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, simonb-timecounters-base, simonb-timecounters, simonb-timcounters-final, peter-altq-base, peter-altq, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, elad-kernelauth, chap-midi-nbase, chap-midi-base, chap-midi
Branch point for: yamt-pdpolicy, rpaulo-netinet-merge-pcb
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +1 -1 lines
merge ktrace-lwp.

Revision 1.26.4.1: download - view: text, markup, annotated - select for diffs
Fri Apr 29 11:28:20 2005 UTC (19 years, 8 months ago) by kent
Branches: kent-audio2
Diff to: previous 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26: +7 -16 lines
sync with -current

Revision 1.13.2.5: download - view: text, markup, annotated - select for diffs
Mon Jan 24 08:34:27 2005 UTC (20 years ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.13.2.4: preferred, colored; next MAIN 1.14: preferred, colored
Changes since revision 1.13.2.4: +7 -16 lines
Sync with HEAD.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Wed Jan 19 22:22:56 2005 UTC (20 years ago) by matt
Branches: MAIN
CVS tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, yamt-km-base4, yamt-km-base3, yamt-km-base2, yamt-km-base, yamt-km, thorpej-vnode-attr-base, thorpej-vnode-attr, 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, ktrace-lwp-base, kent-audio2-base
Branch point for: yamt-lazymbuf
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +7 -16 lines
Split the hw-dependent powermanglement into its own function and make
Idle call that.  Add a ci_idlespin function pointer to cpu_info.
Update INIT_CPUINFO to initialize it to a naked 'blr' instruction.
In oea/cpu_subr.c, add cpu_idlespin and make ci_idlespin point to it.

Revision 1.13.2.4: download - view: text, markup, annotated - select for diffs
Sat Dec 18 09:31:27 2004 UTC (20 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.13.2.3: preferred, colored
Changes since revision 1.13.2.3: +9 -5 lines
Sync with HEAD.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Sat Dec 4 05:56:28 2004 UTC (20 years, 1 month ago) by matt
Branches: MAIN
CVS tags: kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: kent-audio2
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +9 -5 lines
Make sure to enable interrupts before lower IPL so we don't block any
interrupts (IPI) we shouldn't.

Revision 1.13.2.3: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:20:49 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.13.2.2: preferred, colored
Changes since revision 1.13.2.2: +1 -1 lines
Fix the sync with head I botched.

Revision 1.13.2.2: download - view: text, markup, annotated - select for diffs
Sat Sep 18 14:39:19 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.13.2.1: preferred, colored
Changes since revision 1.13.2.1: +0 -0 lines
Sync with HEAD.

Revision 1.13.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:39:37 2004 UTC (20 years, 5 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +295 -214 lines
Sync with HEAD

Revision 1.25: download - view: text, markup, annotated - select for diffs
Fri Jul 9 22:00:46 2004 UTC (20 years, 6 months ago) by matt
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +12 -6 lines
Add some comments, clean things up so routines can be called from the
idle loop.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Fri Nov 21 18:07:29 2003 UTC (21 years, 2 months ago) by matt
Branches: MAIN
CVS tags: netbsd-2-base, 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, netbsd-2-0-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, netbsd-2-0, netbsd-2
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +4 -3 lines
Restore ci_curpm since it re-enables 603 to working state.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Fri Oct 17 22:21:38 2003 UTC (21 years, 3 months ago) by matt
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +16 -16 lines
Remove worthless load.
Save curcpu before doing uniprocessor dispatch.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Fri Oct 17 21:08:57 2003 UTC (21 years, 3 months ago) by matt
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +19 -4 lines
Don't zero curlwp/curpcb in cpu_switchto.
Use correct register in the store conditional.
Add DIAGNOSTIC check for null curpcb on cpu_switch exit.

Revision 1.21: download - view: text, markup, annotated - select for diffs
Thu Sep 25 18:42:18 2003 UTC (21 years, 4 months ago) by matt
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +2 -2 lines
Add siginfo support for PowerPC.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Wed Aug 27 20:20:08 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +2 -2 lines
Move SFRAMELEN to frame.h and use it in vm_machdep.c.  In setfunc, setup
callframe linkages correctly.  Restore use of ldptr to locore_subr.S
[pthreads and gdb no longer crash/hang the system]

Revision 1.19: download - view: text, markup, annotated - select for diffs
Wed Aug 27 19:45:28 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +5 -1 lines
Switch back to adjusting stack by addi instead of ldptr until I can locate
who's setting up the stack wrong.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Tue Aug 12 18:34:51 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +73 -87 lines
Cleanup/rework cpu_switch*, switch_exit, Idle routine.  Remove pcb_psl
since it was write-only.  When setting up a process, make sure the fake
callframes are properly linked together.

Only lower SPL when in Idle loop.  Raise spl to previous level (which would
be IPL_SCHED) when exiting Idle loop.  Never lower SPL anyplace else.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Tue Aug 12 05:06:55 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +8 -7 lines
Nuke ci_curpm and curpm.  Nuke pcb_pmreal.  Those were use for spill stacks
and those no longer exist.  for few uses that need CURPM, use CURPCB/PCB_PM

Revision 1.16: download - view: text, markup, annotated - select for diffs
Mon Aug 11 15:39:24 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +29 -16 lines
When getting the lwp to switch to, test to see if the scheduling queue is
empty, and if so panic.  Change references to "proc/process" to lwp.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Mon Aug 4 00:32:49 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +124 -72 lines
Eliminate stmw/lmw substituting the individual load/store instructions.
Use more symbolic constants.  These are now safe for use on PPC64.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Thu Jul 31 15:30:41 2003 UTC (21 years, 5 months ago) by matt
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +167 -164 lines
Switch to regiser prefixes.  Also change numeric constants to symbolic ones.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Mon Jun 23 11:01:36 2003 UTC (21 years, 7 months ago) by martin
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +3 -1 lines
Make sure to include opt_foo.h if a defflag option FOO is used.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Wed Mar 12 06:00:36 2003 UTC (21 years, 10 months ago) by matt
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +2 -4 lines
Same code exists in both halves in #ifdef/#else/#endif.  move it outside.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Tue Mar 11 10:40:17 2003 UTC (21 years, 10 months ago) by hannken
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +2 -3 lines
Add support for the IBM 403GCX cpu. Enabled with "options PPC_IBM403".

  - different set of device control registers.
  - non-standard access to the time base.
  - 16 byte cache lines.

Approved by: Eduardo Horvath <eeh@netbsd.org>

Revision 1.10: download - view: text, markup, annotated - select for diffs
Fri Feb 21 15:14:08 2003 UTC (21 years, 11 months ago) by matt
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +10 -10 lines
witch from xor r,r,r to li r,0 to set a register to 0.  It's clearer (and
better for G4 processors).

Revision 1.9: download - view: text, markup, annotated - select for diffs
Mon Feb 3 17:10:11 2003 UTC (21 years, 11 months ago) by matt
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +11 -11 lines
Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea).

Revision 1.8: download - view: text, markup, annotated - select for diffs
Sun Feb 2 20:43:24 2003 UTC (21 years, 11 months ago) by matt
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +12 -73 lines
Perform a rototill of the powerpc code.  Mandate use of SPRG0 to store
a pointer to current cpu's cpu_info structure.  Use cpu_info for
intstk,intr_depth,still_stk,idle_pcb,curpcb,curlwp,etal even on
non-MULTIPROCESSOR machines.  Add common macros GET_CPUINFO and
INIT_CPUINFO to get and initialize the cpu_info struct on startup.  Make
ibm4xx use the standard <powerpc/frame.h>.  Use IFRAME_xx in ibm4xx
trap_subr.S instead of explicit magic offsets.  Move INTSTK and SPILLSTK
to std.<platform>.  Change faultbuf to a struct instead of an array.

On MPC6XX cpus, stop using the vector page for temporary space and use
reserved space in cpu_info.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Sat Jan 18 06:23:33 2003 UTC (22 years ago) by thorpej
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +130 -32 lines
Merge the nathanw_sa branch.

Revision 1.2.10.10: download - view: text, markup, annotated - select for diffs
Sun Jan 5 18:55:12 2003 UTC (22 years ago) by thorpej
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.2.10.9: preferred, colored; branchpoint 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2.10.9: +10 -32 lines
* Merge switch_exit() and switch_lwp_exit().
* Keep the stack 16-byte aligned; adjust by USPACE-16, not USPACE-20.

Revision 1.2.10.9: download - view: text, markup, annotated - select for diffs
Tue Dec 31 01:03:48 2002 UTC (22 years ago) by thorpej
Branches: nathanw_sa
Diff to: previous 1.2.10.8: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.8: +7 -29 lines
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.2.10.8: download - view: text, markup, annotated - select for diffs
Thu Dec 19 19:58:16 2002 UTC (22 years, 1 month ago) by thorpej
Branches: nathanw_sa
Diff to: previous 1.2.10.7: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.7: +6 -1 lines
Add IBM 4xx case to cpu_preempt().

Revision 1.2.10.7: download - view: text, markup, annotated - select for diffs
Thu Dec 19 19:50:59 2002 UTC (22 years, 1 month ago) by thorpej
Branches: nathanw_sa
Diff to: previous 1.2.10.6: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.6: +86 -1 lines
Sync with HEAD.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Thu Dec 19 19:37:26 2002 UTC (22 years, 1 month ago) by thorpej
Branches: MAIN
CVS tags: nathanw_sa_before_merge, nathanw_sa_base, fvdl_fs64_base
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +87 -1 lines
Merge the IBM 4xx into the common powerpc/locore_subr.S, and
eliminate all the duplicated context switch related code in
the IBM 4xx port.

Revision 1.2.6.1: download - view: text, markup, annotated - select for diffs
Fri Sep 6 08:39:26 2002 UTC (22 years, 4 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2: +16 -38 lines
sync kqueue branch with HEAD

Revision 1.2.18.3: download - view: text, markup, annotated - select for diffs
Sat Aug 31 13:45:49 2002 UTC (22 years, 4 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.2.18.2: preferred, colored; branchpoint 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2.18.2: +13 -37 lines
catch up with -current.

Revision 1.2.10.6: download - view: text, markup, annotated - select for diffs
Thu Aug 1 02:43:10 2002 UTC (22 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.2.10.5: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.5: +16 -38 lines
Catch up to -current.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Sun Jul 28 07:05:06 2002 UTC (22 years, 6 months ago) by chs
Branches: MAIN
CVS tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, gehenna-devsw-base
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +13 -37 lines
propagate the MP idle-loop fix to ppc from the other ports:

  Move call to sched_unlock_idle to later in the context switch to
  eliminate a race where another processor could grab the outgoing
  process before we were done saving our state into it, with predictable
  results.

  Bug spotted by Frank van der Linden <fvdl@wasabisystems.com>

also, don't re-enable interrupts temporarily in the middle of
switching to a new process, just wait until we're completely switched.
this didn't work on MP and it's not worth the effort.

Revision 1.2.18.2: download - view: text, markup, annotated - select for diffs
Sun Jul 21 13:00:48 2002 UTC (22 years, 6 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.2.18.1: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.18.1: +4 -4 lines
catch up with -current.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue Jul 16 23:04:21 2002 UTC (22 years, 6 months ago) by matt
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +4 -4 lines
Add machdep.powerpc sysctl.  Change the default value of powersave to -1
(< 0 mean no powersave available).  Enable powersave by default for
750/7400/7410 but leave if off for 7450/7455.

Revision 1.2.18.1: download - view: text, markup, annotated - select for diffs
Tue Jul 16 13:10:00 2002 UTC (22 years, 6 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +3 -1 lines
catch up with -current.

Revision 1.2.10.5: download - view: text, markup, annotated - select for diffs
Mon Jun 24 22:07:08 2002 UTC (22 years, 7 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.2.10.4: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.4: +10 -10 lines
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.2.20.1: download - view: text, markup, annotated - select for diffs
Fri Jun 21 05:34:42 2002 UTC (22 years, 7 months ago) by lukem
Branches: 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
Diff to: previous 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2: +3 -1 lines
Pull up revision 1.3 (requested by matt in ticket #334):
Don't load the SR registers on a context switch.  They get switched from
the user's SR registers to the kernel's SR registers on an exception or
interrupt from user level and restored with the user's SR register when the
exception or interrupt returns back to user level.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Fri Jun 21 00:46:18 2002 UTC (22 years, 7 months ago) by matt
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +3 -1 lines
Don't load the SR registers on a context switch.  They get switched from
the user's SR registers to the kernel's SR registers on an exception or
interrupt from user level and restored with the user's SR register when the
exception or interrupt returns back to user level.

Revision 1.2.10.4: download - view: text, markup, annotated - select for diffs
Thu Nov 15 19:30:04 2001 UTC (23 years, 2 months ago) by briggs
Branches: nathanw_sa
Diff to: previous 1.2.10.3: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.3: +20 -148 lines
Update sched_whichqs properly in cpu_preempt().
Ensure cpu_preempt() stack hack keeps stack pointer 16-byte aligned.
Reduce code duplication by jumping from cpu_preempt() into cpu_switch()
	to do post-new-lwp-selection work (thanks for the idea, thorpej).

Revision 1.2.10.3: download - view: text, markup, annotated - select for diffs
Tue Nov 13 20:00:30 2001 UTC (23 years, 2 months ago) by briggs
Branches: nathanw_sa
Diff to: previous 1.2.10.2: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.2: +2 -2 lines
Improve upcall to better work with libpthread.

Revision 1.2.10.2: download - view: text, markup, annotated - select for diffs
Thu Nov 8 05:07:18 2001 UTC (23 years, 2 months ago) by briggs
Branches: nathanw_sa
Diff to: previous 1.2.10.1: preferred, colored; branchpoint 1.2: preferred, colored
Changes since revision 1.2.10.1: +36 -15 lines
Ensure cpu_preempt and cpu_switch both use the same amount of stack.
Go ahead and fill lwp->l_cpu with &cpu_info_store on !MULTIPROCESSOR.

Revision 1.2.10.1: download - view: text, markup, annotated - select for diffs
Mon Nov 5 19:46:18 2001 UTC (23 years, 2 months ago) by briggs
Branches: nathanw_sa
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +265 -20 lines
Initial SA support for ppc.  Test-booted on sandpoint, macppc, & walnut.
mcontext and cpu_getmcontext()/cpu_setmcontext() from Klaus Klein
<kleink@netbsd.org>.

Revision 1.2.4.2: download - view: text, markup, annotated - select for diffs
Mon Mar 12 13:29:14 2001 UTC (23 years, 10 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.2.4.1: preferred, colored; branchpoint 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2.4.1: +372 -0 lines
Sync with HEAD.

Revision 1.2.4.1
Wed Feb 28 20:44:41 2001 UTC (23 years, 10 months ago) by bouyer
Branches: thorpej_scsipi
FILE REMOVED
Changes since revision 1.2: +0 -372 lines
file locore_subr.S was added on branch thorpej_scsipi on 2001-03-12 13:29:14 +0000

Revision 1.2: download - view: text, markup, annotated - select for diffs
Wed Feb 28 20:44:41 2001 UTC (23 years, 10 months ago) by tsubai
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base, thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf, newlock-base, newlock, netbsd-1-6-base, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: thorpej_scsipi, netbsd-1-6, nathanw_sa, kqueue, gehenna-devsw
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +2 -2 lines
Fix a bug in cpu_switch().
Reported by Tad Hunt <tad@entrisphere.com> on port-powerpc.

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Feb 25 20:21:53 2001 UTC (23 years, 11 months ago) by matt
Branches: MAIN
Get the ofppc/prep/macppc/sandpoint/bebox to share the process switch
/ setfault / fork_trampoline code.

Diff request

This form allows you to request diffs 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.

Log view options

CVSweb <webmaster@jp.NetBSD.org>