Home | History | Annotate | Download | only in vr
History log of /src/sys/arch/hpcmips/vr/vr_idle.S
RevisionDateAuthorComments
 1.15  18-Feb-2008  tsutsui Remove unnecessary includes.
Many stuff was removed on newlock2 and yamt-idlelwp merges.
 1.14  17-Oct-2007  garbled branches: 1.14.2;
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.
 1.13  17-May-2007  yamt branches: 1.13.10;
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.
 1.12  11-May-2007  tsutsui uvm.page_idle_zero now is a bool, not a 32bit value any more.
Pointed out by Matthew Orgass in PR port-hpcmips/36249.
 1.11  09-Feb-2007  ad branches: 1.11.2; 1.11.6; 1.11.8; 1.11.14;
Merge newlock2 to head.
 1.10  24-Mar-2006  tsutsui branches: 1.10.8;
Release sched_lock before enabling interrupts on LOCKDEBUG in vr_idle().
Closes PR port-hpcmips/26427.
 1.9  11-Dec-2005  christos branches: 1.9.4; 1.9.6; 1.9.8; 1.9.10; 1.9.12;
merge ktrace-lwp.
 1.8  07-Aug-2003  agc branches: 1.8.16;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.7  17-Jan-2003  thorpej branches: 1.7.2;
Merge the nathanw_sa branch.
 1.6  20-Aug-2000  thorpej branches: 1.6.2; 1.6.10; 1.6.24;
Add a lock around the scheduler, and use it as necessary, including
in the non-MULTIPROCESSOR case (LOCKDEBUG requires it). Scheduler
lock is held upon entry to mi_switch() and cpu_switch(), and
cpu_switch() releases the lock before returning.

Largely from Bill Sommerfeld, with some minor bug fixes and
machine-dependent code hacking from me.
 1.5  26-May-2000  thorpej 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.
 1.4  09-May-2000  shin call uvm_pageidlezero() while CPU is idle.
 1.3  11-Apr-2000  nisimura Load delay slot is automagically adjusted at runtime since MIPS II
architecture.
 1.2  28-Mar-2000  nisimura Change 'goto cpu_switch1' to 'goto cpu_switch_queuescan' in vr_idle.S
and make the jump destination global.
 1.1  28-Jan-2000  takemura CPU specific idle hook and VR idle routine.
 1.6.24.1  18-Dec-2002  gmcgarry Remove the scheduler semantics from machine-dependent context switch.
 1.6.10.1  24-Jun-2002  nathanw 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).
 1.6.2.2  20-Nov-2000  bouyer 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.
 1.6.2.1  20-Aug-2000  bouyer file vr_idle.S was added on branch thorpej_scsipi on 2000-11-20 20:47:54 +0000
 1.7.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.7.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.7.2.1  03-Aug-2004  skrll Sync with HEAD
 1.8.16.4  27-Feb-2008  yamt sync with head.
 1.8.16.3  03-Sep-2007  yamt sync with head.
 1.8.16.2  26-Feb-2007  yamt sync with head.
 1.8.16.1  21-Jun-2006  yamt sync with head.
 1.9.12.1  28-Mar-2006  tron Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.
 1.9.10.1  19-Apr-2006  elad sync with head - hopefully this will work
 1.9.8.1  01-Apr-2006  yamt sync with head.
 1.9.6.1  22-Apr-2006  simonb Sync with head.
 1.9.4.1  09-Sep-2006  rpaulo sync with head
 1.10.8.1  30-Jan-2007  ad For now always call sched_unlock_idle/sched_lock_idle. They will be
removed by yamt's cpu_switchto() changes.
 1.11.14.1  22-May-2007  matt Update to HEAD.
 1.11.8.1  11-Jul-2007  mjf Sync with head.
 1.11.6.1  27-May-2007  ad Sync with head.
 1.11.2.2  17-May-2007  yamt sync with head.
 1.11.2.1  19-Apr-2007  ad Compile fixes.
 1.13.10.2  23-Mar-2008  matt sync with HEAD
 1.13.10.1  06-Nov-2007  matt sync with HEAD
 1.14.2.1  18-Feb-2008  mjf Sync with HEAD.

RSS XML Feed