Home | History | Annotate | Download | only in arm32
History log of /src/sys/arch/arm/include/arm32/param.h
RevisionDateAuthorComments
 1.34  30-May-2021  rin Include opt_param.h for MSGBUFSIZE ifdef _KERNEL_OPT.
 1.33  10-Jul-2020  skrll branches: 1.33.6; 1.33.8;
Add support for KASAN on ARMv[67]

Thanks to maxv for many pointers and reviews.
 1.32  08-Jul-2020  skrll Define USPACE in terms of UPAGES (not the other way around) now that
NBPG is fixed at 4K
 1.31  08-Jul-2020  skrll Whitespace
 1.30  13-Feb-2020  skrll Bump the amount of KMEM allowed to 1/3rd of KVM. _ARCH_ARM_6 has a split
of 2:2 and others have a split of 3:1.

Tested by martin@ Thanks
 1.29  01-Feb-2020  skrll G/C
 1.28  18-Jan-2020  skrll Use 4K pages on ARM_MMU_EXTENDED platforms (all armv[67] except RPI) by
creating a new pool l1ttpl for the userland L1 translation table which
needs to be 8KB and 8KB aligned.

Limit the pool to maxproc and add hooks to allow the sysctl changing of
maxproc to adjust the pool.

This comes at a 5% performance penalty for build.sh -j8 kernel on a
Tegra TK1.
 1.27  19-Jun-2019  skrll branches: 1.27.2; 1.27.4;
KNF and add a comment
 1.26  04-Feb-2019  skrll Trailing whitespace
 1.25  09-Jun-2017  chs branches: 1.25.6;
if __HIDE_DELAY is defined, do not define delay() or DELAY().
needed by dtrace and ZFS.
 1.24  02-Apr-2015  matt Don't include <machine/cpu.h>
 1.23  05-Apr-2014  skrll branches: 1.23.6;
On second thoughts don't do the RPI hack for everyone.
 1.22  05-Apr-2014  skrll Drop down to 4KB pages on armv6 for now.
 1.21  30-Mar-2014  matt Make the ARM pmap use ASIDs, split TTBRs, and MP safe. This only happens for
ARMv6 or later CPUs. This means that on context switch that the TLBs and
caches no longer to cleaned/flushed. Also, eXecute Never (XN) protection has
been added so non-exec pages can not be run. Change the page size for ARMv6+
to be 8KB while allows a L1PT to be a normal page. This means that the L1PT
is not special. Use the XN support to only sync pages that are executed from.
 1.20  29-May-2013  rkujawa branches: 1.20.2;
Explicitely cast to unsigned. Avoid bugs caused by misintepreting the result as
signed.

riastradh@ suggested to change these macros into static inline functions.
But I'm still not convinced...

Obtained from Marvell, Semihalf.
 1.19  20-Mar-2013  skrll Bump MSGBUFSIZE on arm ports to 16KB.

OK matt@
 1.18  07-Dec-2012  matt FPCONTEXTSIZE is dead.
 1.17  04-Feb-2012  para branches: 1.17.6;
improve sizing of kmem_arena now that more allocations are made from it
don't enforce limits if not required

ok: riz@
 1.16  14-Jan-2011  rmind branches: 1.16.8; 1.16.12;
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.15  08-Feb-2010  joerg branches: 1.15.2;
Remove separate mb_map. The nmbclusters is computed at boot time based
on the amount of physical memory and limited by NMBCLUSTERS if present.
Architectures without direct mapping also limit it based on the kmem_map
size, which is used as backing store. On i386 and ARM, the maximum KVA
used for mbuf clusters is limited to 64MB by default.

The old default limits and limits based on GATEWAY have been removed.
key_registered_sb_max is hard-wired to a value derived from 2048
clusters.
 1.14  14-Mar-2009  dsl branches: 1.14.2;
Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.13  19-Jan-2008  chris branches: 1.13.10; 1.13.18; 1.13.24;
With the removal of IPKDB on arm, the undefined stack is only used to
bounce into SVC32 mode, there is no per-process data stored on it.

We can therefore use the undefined stack setup by the platform machdep.c
as a system wide undefined stack.

This removes the need for a per-process undefined stack, and the processor
mode switching overhead it causes in cpu_switchto.

The space freed in the USPACE is used to increase the per process kernel
stack size.
 1.12  11-Dec-2005  christos branches: 1.12.46; 1.12.50; 1.12.52; 1.12.58; 1.12.66;
merge ktrace-lwp.
 1.11  29-Dec-2004  joff branches: 1.11.10;
Bump UPAGES back down to 8KB now that real issue was found with ep93xx intr handling
 1.10  23-Dec-2004  joff bump default U-area size from 8KB to 64KB, 8KB is too little to even successfully boot a tsarm SBC
 1.9  24-Mar-2002  thorpej branches: 1.9.12;
* arm_byte_to_page() -> arm_btop()
* arm_page_to_byte() -> arm_ptob()
 1.8  26-Feb-2002  simonb Purge CLSIZE, CLSIZELOG2 and MCLOFSET.
Be consistant in the way that MSIZE, MCLSHIFT, MCLBYTES and NMBCLUSTERS
are defined.
Remove old VM constants from cesfic port.
Bump MSIZE to 256 on mipsco (the only one that wasn't already 256).
 1.7  22-Feb-2002  briggs Bumb NMBCLUSTER defaults to 2048 for GATEWAY and 1024 otherwise. These
match current powerpc defaults and are more reasonable for the current era.
 1.6  11-Aug-2001  chris branches: 1.6.6;
Add arm_trunc_page, similair to trunc_page but using a hardcoded PGOFSET.
 1.5  07-Aug-2001  bjh21 Use <arm/param.h> to get shared definitions.
 1.4  30-May-2001  mrg branches: 1.4.2;
use _KERNEL_OPT
 1.3  04-Mar-2001  matt branches: 1.3.2; 1.3.4;
Only define MACHINE & MACHINE_ARCH in port-dependent param.h.
Everything else (since it's common) is from <arm/arm32/param.h>
 1.2  24-Feb-2001  toshii Make hpcarm kernel compile again.
 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.3.4.2  12-Mar-2001  bouyer Sync with HEAD.
 1.3.4.1  04-Mar-2001  bouyer file param.h was added on branch thorpej_scsipi on 2001-03-12 13:27:25 +0000
 1.3.2.1  21-Jun-2001  nathanw Catch up to -current.
 1.4.2.3  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.4.2.2  16-Mar-2002  jdolecek Catch up with -current.
 1.4.2.1  25-Aug-2001  thorpej Merge Aug 24 -current into the kqueue branch.
 1.6.6.3  01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.6.6.2  28-Feb-2002  nathanw Catch up to -current.
 1.6.6.1  11-Aug-2001  nathanw file param.h was added on branch nathanw_sa on 2002-02-28 04:07:34 +0000
 1.9.12.1  17-Jan-2005  skrll Sync with HEAD.
 1.11.10.1  21-Jan-2008  yamt sync with head
 1.12.66.1  20-Jan-2008  bouyer Sync with HEAD
 1.12.58.1  18-Feb-2008  mjf Sync with HEAD.
 1.12.52.1  23-Mar-2008  matt sync with HEAD
 1.12.50.1  20-Jan-2008  chris Sync to HEAD.
 1.12.46.1  28-Feb-2008  rjs Sync with HEAD.
 1.13.24.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.13.18.1  28-Apr-2009  skrll Sync with HEAD.
 1.13.10.2  11-Mar-2010  yamt sync with head
 1.13.10.1  04-May-2009  yamt sync with head.
 1.14.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.15.2.1  05-Mar-2011  rmind sync with head
 1.16.12.1  18-Feb-2012  mrg merge to -current.
 1.16.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.16.8.2  16-Jan-2013  yamt sync with (a bit old) head
 1.16.8.1  17-Apr-2012  yamt sync with head
 1.17.6.4  03-Dec-2017  jdolecek update from HEAD
 1.17.6.3  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.17.6.2  23-Jun-2013  tls resync from head
 1.17.6.1  25-Feb-2013  tls resync with head
 1.20.2.1  18-May-2014  rmind sync with head
 1.23.6.2  28-Aug-2017  skrll Sync with HEAD
 1.23.6.1  06-Apr-2015  skrll Sync with HEAD
 1.25.6.3  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.25.6.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.25.6.1  10-Jun-2019  christos Sync with HEAD
 1.27.4.2  29-Feb-2020  ad Sync with head.
 1.27.4.1  25-Jan-2020  ad Sync with head.
 1.27.2.1  07-Jun-2020  martin Pull up following revision(s) (requested by skrll in ticket #951):

sys/arch/arm/include/arm32/param.h: revision 1.30

Bump the amount of KMEM allowed to 1/3rd of KVM. _ARCH_ARM_6 has a split
of 2:2 and others have a split of 3:1.

Tested by martin@ Thanks
 1.33.8.1  31-May-2021  cjep sync with head
 1.33.6.1  17-Jun-2021  thorpej Sync w/ HEAD.

RSS XML Feed