History log of /src/sys/arch/arm/include/proc.h |
Revision | | Date | Author | Comments |
1.20 |
| 10-Feb-2024 |
andvar | Fix various typos in comments, log messages and documentation.
|
1.19 |
| 14-Aug-2020 |
skrll | Mirror the changes to aarch64 and
- Switch to TPIDRPRW_IS_CURLWP, because curlwp is accessed much more often by MI code. It also makes curlwp preemption safe,
- Make ASTs operate per-LWP rather than per-CPU, otherwise sometimes LWPs can see spurious ASTs (which doesn't cause a problem, it just means some time may be wasted).
- Make sure ASTs are always set on the same CPU as the target LWP, and delivered via IPI if posted from a remote CPU so that they are resolved quickly.
- Add some cache line padding to struct cpu_info.
- Add a memory barrier in a couple of places where ci_curlwp is set. This is needed whenever an LWP that is resuming on the CPU could hold an adaptive mutex. The barrier needs to drain the CPU's store buffer, so that the update to ci_curlwp becomes globally visible before the LWP can resume and call mutex_exit().
|
1.18 |
| 31-Oct-2017 |
martin | Allow architectures to define a macro PROC_MACHINE_ARCH(P) and PROC_MACHINE_ARCH32(P) to override the value for sysctl hw.machine_arch (native and netbsd32 commpat resp.).
Use these for arm and mips instead of the (not working, noisy, in case of arm) sysctl override and #ifdef __mips__ in architecture neutral code.
|
1.17 |
| 24-Feb-2014 |
christos | consistency in include protection
|
1.16 |
| 29-Jan-2014 |
matt | Make multiple inclusion symbols always start with _ARM_ (not _ARM32_ or _MACHINE_).
|
1.15 |
| 11-Sep-2013 |
matt | Add md_march and PROC0_MD_INITIALIZERS
|
1.14 |
| 23-Aug-2013 |
matt | Reap LWP_VFPUSED and use PCU internal tracking. Add bool vfp_used_p(void);
|
1.13 |
| 25-Dec-2012 |
matt | branches: 1.13.2; Fix comment. Add MDLWP_VFPINTR
|
1.12 |
| 16-Aug-2012 |
matt | branches: 1.12.2; small rototill. pcb_flags is dead. PCB_NOALIGNFLT is now in stored l_md.md_flags as MDLWP_NOALIGNFLT. This avoids a few loads of the PCB in exception handling. pcb_tf has been moved to l_md.md_tf. Again this avoids a lot of pcb references just to access or set this. It also means that pcb doesn't need to accessed by MI code. Move pcb_onfault to after the pcb union. Add pcb_sp macro to make code prettier. Add lwp_settrapframe(l, tf) to set the l_md.md_tf field. Use lwp_trapframe to access it (was process_frame but that name was changed in a previous commit). Kill off curpcb in acorn26. Kill the checks for curlwp being NULL. Move TRAP_USERMODE from arm32/fault.c to frame.h and a __PROG26 version. Replace tests for usermode with that macro.
|
1.11 |
| 12-Aug-2012 |
matt | Rework VFP support to use PCU. Add emulation of instruction which save/restore the VFP FPSCR. Add a sysarch hook to VFP FPSCR manipulation.
[The emulation will be used by libc to store/fetch exception modes and rounding mode on a per-thread basis.]
|
1.10 |
| 14-Jan-2011 |
rmind | branches: 1.10.8; 1.10.16; Retire struct user, remove sys/user.h inclusions. Note sys/user.h header as obsolete. Remove USER_TO_UAREA/UAREA_TO_USER macros.
Various #include fixes and review by matt@.
|
1.9 |
| 21-Nov-2009 |
rmind | branches: 1.9.4; Use lwp_getpcb() on ARM (and acorn26/32), clean from struct user usage.
|
1.8 |
| 29-Aug-2008 |
matt | branches: 1.8.12; use uint32_t.
|
1.7 |
| 15-Mar-2008 |
rearnsha | branches: 1.7.4; 1.7.6; 1.7.10; VFP support.
|
1.6 |
| 05-Mar-2003 |
agc | branches: 1.6.18; 1.6.80; 1.6.82; 1.6.102; 1.6.106; Forward declare struct lwp as well as struct trapframe.
|
1.5 |
| 01-Mar-2003 |
thorpej | Do the syscall_plain/syscall_fancy dance on ARM. Shaves a fair number of cycles off the syscall overhead.
Since all COMPAT_LINUX platforms now support __HAVE_SYSCALL_INTERN, garbage-collect the LINUX_SYSCALL_FUNCTION stuff.
|
1.4 |
| 17-Jan-2003 |
thorpej | Merge the nathanw_sa branch.
|
1.3 |
| 07-Aug-2002 |
briggs | Implement pmc(9) -- An interface to hardware performance monitoring counters. These counters do not exist on all CPUs, but where they do exist, can be used for counting events such as dcache misses that would otherwise be difficult or impossible to instrument by code inspection or hardware simulation.
pmc(9) is meant to be a general interface. Initially, the Intel XScale counters are the only ones supported.
|
1.2 |
| 28-Feb-2001 |
bjh21 | branches: 1.2.4; 1.2.6; 1.2.10; 1.2.18; PCB convergence, part the first: Move the pointer to the current user trapframe from struct mdproc to struct pcb (as on arm26). Only tested by compiling kernels on arm32 and hpcarm (dnard seems to be incomplete anyway). Someone should try running one.
|
1.1 |
| 23-Feb-2001 |
reinoud | Big patch for merging common include files of the new hpcarm tree and the old arm32 tree into the new arm substree. All moved files are relinked with a stub that included the file from the new location; this might be done better later.
|
1.2.18.1 |
| 30-Aug-2002 |
gehenna | catch up with -current.
|
1.2.10.3 |
| 31-Dec-2002 |
thorpej | Put PMC state into mdproc, not mdlwp; the PMC state should be per-proc.
Per discussion with Allen Briggs.
|
1.2.10.2 |
| 13-Aug-2002 |
nathanw | Catch up to -current.
|
1.2.10.1 |
| 14-Nov-2001 |
thorpej | Garbage-collect the __spare0 and __spare1 fields from mdproc; they're not used (obivously), and the space doesn't really need to be reserved.
This leaves us with an empty mdproc.
Add an empty mdlwp.
|
1.2.6.1 |
| 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.2.4.2 |
| 12-Mar-2001 |
bouyer | Sync with HEAD.
|
1.2.4.1 |
| 28-Feb-2001 |
bouyer | file proc.h was added on branch thorpej_scsipi on 2001-03-12 13:27:23 +0000
|
1.6.106.2 |
| 28-Sep-2008 |
mjf | Sync with HEAD.
|
1.6.106.1 |
| 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.6.102.1 |
| 24-Mar-2008 |
keiichi | sync with head.
|
1.6.82.1 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.6.80.1 |
| 21-Mar-2008 |
chris | Sync with head.
|
1.6.18.1 |
| 17-Mar-2008 |
yamt | sync with head.
|
1.7.10.1 |
| 19-Oct-2008 |
haad | Sync with HEAD.
|
1.7.6.1 |
| 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.7.4.2 |
| 11-Mar-2010 |
yamt | sync with head
|
1.7.4.1 |
| 04-May-2009 |
yamt | sync with head.
|
1.8.12.1 |
| 15-Feb-2014 |
matt | Merge armv7 support from HEAD, specifically support for the BCM5301X and BCM56340 evbarm kernels.
|
1.9.4.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.10.16.1 |
| 28-Nov-2012 |
matt | Merge improved arm support (especially Cortex) from HEAD including OMAP and BCM53xx support.
|
1.10.8.3 |
| 22-May-2014 |
yamt | 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")
|
1.10.8.2 |
| 23-Jan-2013 |
yamt | sync with head
|
1.10.8.1 |
| 30-Oct-2012 |
yamt | sync with head
|
1.12.2.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.12.2.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.12.2.1 |
| 25-Feb-2013 |
tls | resync with head
|
1.13.2.2 |
| 18-May-2014 |
rmind | sync with head
|
1.13.2.1 |
| 28-Aug-2013 |
rmind | sync with head
|