History log of /openbsd/sys/arch/m88k/m88k/process.S (Results 1 – 25 of 27)
Revision Date Author Comments
# 5746cf29 06-Dec-2022 guenther <guenther@openbsd.org>

_C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in m88k code.

ok aoyama@


# 14af23f1 17-May-2013 miod <miod@openbsd.org>

Unnecessary include


# 0b514a07 05-Jan-2013 miod <miod@openbsd.org>

Switch m88k ports to ELF.


# 8e726268 02-May-2009 miod <miod@openbsd.org>

Drop the pm_cpus bitmask field from struct pmap, and instead remember the
currently active userland pmap in each processors struct cpu_info.

This thus skips the complete tlb flush if idle switches b

Drop the pm_cpus bitmask field from struct pmap, and instead remember the
currently active userland pmap in each processors struct cpu_info.

This thus skips the complete tlb flush if idle switches back to
the proc previously running on this processor.

show more ...


# effa9a96 13-Feb-2009 miod <miod@openbsd.org>

When switching processes, do not reenable interrupts until pmap_activate()
has been invoked on the new process.


# dc6f3457 30-Oct-2008 miod <miod@openbsd.org>

In cpu_switchto(), always pmap_deactivate() the process being switched out,
even in non-MP kernels, to avoid unnecessary tlb flushes later when
pmap operates on shared pages.


# 77b7f9e2 06-Nov-2007 miod <miod@openbsd.org>

Be sure to pmap_deactivate() a process during context switches, so that
the cpu which runs it is accounted correctly in MP kernels.


# 05ef2169 28-Oct-2007 miod <miod@openbsd.org>

Disable interrupts around changing curproc and curpcb so these always match.


# 65cb2330 24-Oct-2007 miod <miod@openbsd.org>

Rely on 16 byte pcb alignment, and use double loads and stores during
context switches. Should have been commited ages ago (when pcb alignment
was fixed). No functional change.


# 99c8499e 13-Oct-2007 miod <miod@openbsd.org>

It is no longer necessary to fiddle with spl in cpu_idle_{enter,leave} now
that proc_trampoline has been fixed.


# 45053f4a 10-Oct-2007 art <art@openbsd.org>

Make context switching much more MI:
- Move the functionality of choosing a process from cpu_switch into
a much simpler function: cpu_switchto. Instead of having the locore
code walk the run q

Make context switching much more MI:
- Move the functionality of choosing a process from cpu_switch into
a much simpler function: cpu_switchto. Instead of having the locore
code walk the run queues, let the MI code choose the process we
want to run and only implement the context switching itself in MD
code.
- Let MD context switching run without worrying about spls or locks.
- Instead of having the idle loop implemented with special contexts
in MD code, implement one idle proc for each cpu. make the idle
loop MI with MD hooks.
- Change the proc lists from the old style vax queues to TAILQs.
- Change the sleep queue from vax queues to TAILQs. This makes
wakeup() go from O(n^2) to O(n)

there will be some MD fallout, but it will be fixed shortly.
There's also a few cleanups to be done after this.

deraadt@, kettenis@ ok

show more ...


# 8dee0001 12-May-2007 miod <miod@openbsd.org>

On multiprocessor kernels, update p->p_pcu on exit from the scheduler.


# e0004d15 22-Nov-2006 miod <miod@openbsd.org>

Be more generous with interrupt disabling in the scheduler.


# 269c9635 18-Nov-2006 miod <miod@openbsd.org>

Stop saving and restoring the current ipl in the pcb when switching processes,
since we know we are at splsched().


# 7625720e 11-Dec-2005 miod <miod@openbsd.org>

Work in progress SMP code; mvme88k boards can spin up secondary CPUs,
kernel boots single user. Still a lot of polishing and bugfixing to do.


# 7c0b16c7 07-Dec-2005 miod <miod@openbsd.org>

Better use of the scheduler lock; no functional change on UP kernels.


# 0934804c 03-Dec-2005 miod <miod@openbsd.org>

Switch m88k ports to __HAVE_CPUINFO. Current cpu pointer is held in SR0
on all running processors.
Tested aoyama@ and I


# 861837a5 27-Nov-2005 miod <miod@openbsd.org>

In the core of the idle loop, be sure to invoke spl0 more than once to
process soft interrupts; fixes luna88k hanging after the rootdev line.
Tested aoyama@ martin@ and I


# e8b8da4a 12-Oct-2005 miod <miod@openbsd.org>

Stop mapping the u area at fixed UADDR in addition to its actual va.
While there, attempt to clean and comment stack usage in the kernel.
No functional change.

From the m88k SMP tree; help&test mart

Stop mapping the u area at fixed UADDR in addition to its actual va.
While there, attempt to clean and comment stack usage in the kernel.
No functional change.

From the m88k SMP tree; help&test martin@

show more ...


# 2deafdeb 12-Oct-2005 miod <miod@openbsd.org>

General scheduler cleanup:
- at the end of switch_exit(), jump in a better location inside cpu_switch()
- skip unnecessary curproc == NULL tests, and remove other dead code
- simplify the idle loop
-

General scheduler cleanup:
- at the end of switch_exit(), jump in a better location inside cpu_switch()
- skip unnecessary curproc == NULL tests, and remove other dead code
- simplify the idle loop
- optimize whichqs bit operations
- and add comments at strategic places

help&test martin@

show more ...


# 5b4ba075 09-Aug-2004 miod <miod@openbsd.org>

Take advantage of the recent ABI change to use less stack space and do
less stack pointer manipulation; the kernel needs to be compiled by an
up-to-date compiler now, or a tree will fall on your hous

Take advantage of the recent ABI change to use less stack space and do
less stack pointer manipulation; the kernel needs to be compiled by an
up-to-date compiler now, or a tree will fall on your house.

show more ...


# ddbea95d 02-Aug-2004 miod <miod@openbsd.org>

No need to make __savectx visible and 8-byte aligned.


# 51b1d13d 02-Aug-2004 miod <miod@openbsd.org>

When restoring a process' ipl, invoke setipl() on behalf on the kernel stack,
rather than on the process stack.


# 963a39e2 13-Jul-2004 miod <miod@openbsd.org>

Do not trash r14 by mistake in __savectx.


# c16032af 26-Jun-2004 miod <miod@openbsd.org>

Fix alignment problem between savectx and __savectx. How could this have
ever worked?


12