Home | History | Annotate | Download | only in include
History log of /src/sys/arch/usermode/include/cpu.h
RevisionDateAuthorComments
 1.13  01-Dec-2019  ad Fix false sharing problems with cpu_info. Identified with tprof(8).
This was a very nice win in my tests on a 48 CPU box.

- Reorganise cpu_data slightly according to usage.
- Put cpu_onproc into struct cpu_info alongside ci_curlwp (now is ci_onproc).
- On x86, put some items in their own cache lines according to usage, like
the IPI bitmask and ci_want_resched.
 1.12  23-Nov-2019  ad cpu_need_resched():

- Remove all code that should be MI, leaving the bare minimum under arch/.
- Make the required actions very explicit.
- Pass in LWP pointer for convenience.
- When a trap is required on another CPU, have the IPI set it locally.
- Expunge cpu_did_resched().
 1.11  01-Aug-2018  reinoud Add preliminary KGDB support for NetBSD/usermode, currently only under amd64
 1.10  08-Feb-2012  reinoud branches: 1.10.46; 1.10.48;
Fix /dev/kmem access and make vmstat(1) `work'. Not sure all the results are
indeed valid or correct but at least it shows them without coredumping or
coredumping the kernel.
 1.9  19-Jan-2012  reinoud My fault, forgot that cpu_need_resched() is indeed already declared as a function
 1.8  19-Jan-2012  reinoud Add macro cpu_need_resched
 1.7  14-Jan-2012  reinoud Define astpending flag and the aston() setter
 1.6  13-Aug-2011  jmcneill branches: 1.6.2; 1.6.6;
- initialize cpu_info_primary early, before cpu0 attaches
- track idepth in cpu_info struct and use it in cpu_intr_p
- for debug and diagnostic kernels, abort when rebooting
- fill in __cpu_simple_lock_* stubs
- splraise(IPL_HIGH) before calling kernmain
- pmap_extract: only return phys addr if pap is not NULL
 1.5  12-Aug-2011  jmcneill Clean up extern mess by adding an API for kernel components to call libc
functions. thunk.c is built with special cflags that makes it compile
against standard system headers instead of kernel ones.
 1.4  11-Aug-2011  jmcneill initialize lwp0 l_addr so we can switch back to it
 1.3  21-Oct-2009  rmind Remove uarea swap-out functionality:

- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code. Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.
 1.2  21-Oct-2009  snj Drop 3rd and 4th clauses. OK jmcneill (copyright holder).
 1.1  29-Dec-2007  jmcneill branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.18;
Import work-in-progress NetBSD/usermode port.
 1.1.18.1  11-Mar-2010  yamt sync with head
 1.1.8.2  18-Feb-2008  mjf Sync with HEAD.
 1.1.8.1  29-Dec-2007  mjf file cpu.h was added on branch mjf-devfs on 2008-02-18 21:05:12 +0000
 1.1.6.2  21-Jan-2008  yamt sync with head
 1.1.6.1  29-Dec-2007  yamt file cpu.h was added on branch yamt-lazymbuf on 2008-01-21 09:39:47 +0000
 1.1.4.2  09-Jan-2008  matt sync with HEAD
 1.1.4.1  29-Dec-2007  matt file cpu.h was added on branch matt-armv6 on 2008-01-09 01:49:22 +0000
 1.1.2.2  02-Jan-2008  bouyer Sync with HEAD
 1.1.2.1  29-Dec-2007  bouyer file cpu.h was added on branch bouyer-xeni386 on 2008-01-02 21:50:48 +0000
 1.6.6.1  18-Feb-2012  mrg merge to -current.
 1.6.2.1  17-Apr-2012  yamt sync with head
 1.10.48.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.10.48.1  10-Jun-2019  christos Sync with HEAD
 1.10.46.1  06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

RSS XML Feed