Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src
Module Name: src
Committed By: tsutsui
Date: Sat Feb 1 19:41:50 UTC 2020
Modified Files:
src/distrib/sets/lists/comp: ad.m68k
src/sys/arch/amiga/include: vmparam.h
src/sys/arch/atari/include: vmparam.h
src/sys/arch/cesfic/include: vmparam.h
src/sys/arch/hp300/include: vmparam.h
src/sys/arch/luna68k/include: vmparam.h
src/sys/arch/m68k/include: Makefile
src/sys/arch/mac68k/include: vmparam.h
src/sys/arch/mvme68k/include: vmparam.h
src/sys/arch/news68k/include: vmparam.h
src/sys/arch/next68k/include: vmparam.h
src/sys/arch/sun3/include: vmparam.h
src/sys/arch/x68k/include: vmparam.h
Added Files:
src/sys/arch/m68k/include: vmparam.h
Log Message:
Add MAX/MIN PAGE_SIZE and PAGE_SHIFT definitions of m68k for jemalloc(3).
Background:
- All m68k ports have fixed PAGE_SIZE value in their kernels,
but each port uses different PAGE_SIZE value (4096 or 8192)
due to historical reasons.
- Currently module(7) binaries are built per each port so
all m68k kernel sources don't support run-time variable PAGE_SIZE.
- MI <uvm/uvm_param.h> assumes that the port supports a variable
PAGE_SIZE on module(7) builds if both MAX_PAGE_SIZE and MIN_PAGE_SIZE
are defined and they have different values.
- On the other hand, jemalloc(3) checks MAX_PAGE_SHIFT in
src/external/bsd/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h
for internal optimization.
- m68k ports share userland binaries (especially pkgsrc binaries)
among all ports, so we need to define MAX_PAGE_SHIFT as 13 to
support m68k ports where PAGE_SIZE==8192.
(though this would affect only if static binaries built on
4k page hosts are executed on 8k page hosts)
To solve these inconsistency on PAGE_SIZE definitions,
we should have an independent PAGE_SIZE related definitions
for userland, but it requires major reorganization.
For now (especially for netbsd-9) we define MAX/MIN PAGE_SIZE and
PAGE_SHIFT values in <m68k/vmparam.h> only in !defined(_KERNEL) case.
Discussed on source-changes-d@ and tech-kern@ with christos@ and thorpej@:
https://mail-index.netbsd.org/source-changes-d/2020/01/thread1.html#012035
https://mail-index.netbsd.org/tech-kern/2020/01/thread1.html#025954
Should be pulled up to netbsd-9.
To generate a diff of this commit:
cvs rdiff -u -r1.62 -r1.63 src/distrib/sets/lists/comp/ad.m68k
cvs rdiff -u -r1.47 -r1.48 src/sys/arch/amiga/include/vmparam.h
cvs rdiff -u -r1.33 -r1.34 src/sys/arch/atari/include/vmparam.h
cvs rdiff -u -r1.18 -r1.19 src/sys/arch/cesfic/include/vmparam.h
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/hp300/include/vmparam.h
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/luna68k/include/vmparam.h
cvs rdiff -u -r1.31 -r1.32 src/sys/arch/m68k/include/Makefile
cvs rdiff -u -r0 -r1.1 src/sys/arch/m68k/include/vmparam.h
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/mac68k/include/vmparam.h
cvs rdiff -u -r1.37 -r1.38 src/sys/arch/mvme68k/include/vmparam.h
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/news68k/include/vmparam.h
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/next68k/include/vmparam.h
cvs rdiff -u -r1.37 -r1.38 src/sys/arch/sun3/include/vmparam.h
cvs rdiff -u -r1.39 -r1.40 src/sys/arch/x68k/include/vmparam.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index