History log of /netbsd-current/tests/rump/modautoload/Makefile
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.14 24-Apr-2023 uwe

tests/rump/modautoload: reorder -lrumpvfs_nofifofs

Make the way we spell "-lrumpvfs -lrumpvfs_nofifofs" hack consistent.
The order doesn't matter here because of --whole-archive.


Revision tags: netbsd-10-base
# 1.13 07-Jul-2021 martin

Allow to set sanitizer flags for the rump build from the
build.sh command line, like: -V RUMP_SANITIZE=address


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
# 1.12 26-May-2020 christos

Fix alpha build (relocation truncated to fit: GPREL16 against symbol ...)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47230


# 1.11 16-May-2020 christos

Do the same thing with linker flags instead of directly specifying the archives.


# 1.10 16-May-2020 christos

more nofifofs


Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 phil-wifi-20191119
# 1.9 17-Aug-2019 kamil

Avoid symbol clashes in test/rump/modautoload/t_modautoload with sanitizers

Set SANITIZER_RENAME_SYMBOL.t_modautoload to:

* sysctlbyname
* sysctlgetmibinfo


Revision tags: netbsd-8-2-RELEASE netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104
# 1.8 14-Oct-2016 christos

branches: 1.8.14; 1.8.16;
Disable aslr too since we are playing address space range tricks.


Revision tags: localcount-20160914
# 1.7 10-Sep-2016 christos

need bsd.init.mk


# 1.6 27-Aug-2016 christos

don't disable PIE


# 1.5 27-Aug-2016 christos

needs mprotect disable since it loads kernel code and relocates it.


# 1.4 20-Aug-2016 christos

add missing library dependencies.


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.3 27-Dec-2015 pgoyette

branches: 1.3.2;
When MODULAR kernels grew a MODULAR_DEFAULT_AUTOLOAD option, (in rev 1.98
of src/sys/kern/kern_module.c), the default was "off" for all kernels
including rump kernels. While many (most?) kernel config files were
updated to include the new option, rump kernels weren't so lucky. Thus,
rump kernels still had autoload disabled.

This commit uses rump_sysctl to change the module_autoload_on value to
true (ie, enabled) before trying to test if autoloading actually works.

For now, I am _not_ changing the default for all rump kernels. I'll
leave that for another day, after all appropriate discussion has occurred.


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.2 10-Mar-2014 pooka

Move the "is arch capable of loading native kernel modules into
rump kernel" clauses from bsd.own.mk to Makefile.rump. Also,
add a rump_nativeabi_p() call to determine if rump kernel is
compiled with native ABI support.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.1 09-Jun-2010 pooka

branches: 1.1.6; 1.1.12;
Add a test which checks autoloading modules from the host's
/stand/arch/vers/kmods works in rump (and that the result is usable ;).

On i386 this "just works". For amd64, due to -mcmodel=kernel,
things are a little more complicated. We must have the entire rump
kernel loaded in the lower 2GB. Currently, this can be done either
by using the non-PIC version for the rump kernel compiled with
-mcmodel=small, or, as njoly pointed out, using netbsd32, which
causes vm_default_addr() to give something in the lower 2GB and
therefore shared libs "magically" getting loaded there. I guess
it would be possible to put a suggested vaddr into the rump kernel
libs and make ld.elf_so map memory from the suggested address if
present ... but that's another show.

Also thanks to tron for access to an amd64 so that I could verify
the test works.


# 1.13 07-Jul-2021 martin

Allow to set sanitizer flags for the rump build from the
build.sh command line, like: -V RUMP_SANITIZE=address


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
# 1.12 26-May-2020 christos

Fix alpha build (relocation truncated to fit: GPREL16 against symbol ...)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47230


# 1.11 16-May-2020 christos

Do the same thing with linker flags instead of directly specifying the archives.


# 1.10 16-May-2020 christos

more nofifofs


Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 phil-wifi-20191119
# 1.9 17-Aug-2019 kamil

Avoid symbol clashes in test/rump/modautoload/t_modautoload with sanitizers

Set SANITIZER_RENAME_SYMBOL.t_modautoload to:

* sysctlbyname
* sysctlgetmibinfo


Revision tags: netbsd-8-2-RELEASE netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104
# 1.8 14-Oct-2016 christos

branches: 1.8.14; 1.8.16;
Disable aslr too since we are playing address space range tricks.


Revision tags: localcount-20160914
# 1.7 10-Sep-2016 christos

need bsd.init.mk


# 1.6 27-Aug-2016 christos

don't disable PIE


# 1.5 27-Aug-2016 christos

needs mprotect disable since it loads kernel code and relocates it.


# 1.4 20-Aug-2016 christos

add missing library dependencies.


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.3 27-Dec-2015 pgoyette

branches: 1.3.2;
When MODULAR kernels grew a MODULAR_DEFAULT_AUTOLOAD option, (in rev 1.98
of src/sys/kern/kern_module.c), the default was "off" for all kernels
including rump kernels. While many (most?) kernel config files were
updated to include the new option, rump kernels weren't so lucky. Thus,
rump kernels still had autoload disabled.

This commit uses rump_sysctl to change the module_autoload_on value to
true (ie, enabled) before trying to test if autoloading actually works.

For now, I am _not_ changing the default for all rump kernels. I'll
leave that for another day, after all appropriate discussion has occurred.


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.2 10-Mar-2014 pooka

Move the "is arch capable of loading native kernel modules into
rump kernel" clauses from bsd.own.mk to Makefile.rump. Also,
add a rump_nativeabi_p() call to determine if rump kernel is
compiled with native ABI support.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.1 09-Jun-2010 pooka

branches: 1.1.6; 1.1.12;
Add a test which checks autoloading modules from the host's
/stand/arch/vers/kmods works in rump (and that the result is usable ;).

On i386 this "just works". For amd64, due to -mcmodel=kernel,
things are a little more complicated. We must have the entire rump
kernel loaded in the lower 2GB. Currently, this can be done either
by using the non-PIC version for the rump kernel compiled with
-mcmodel=small, or, as njoly pointed out, using netbsd32, which
causes vm_default_addr() to give something in the lower 2GB and
therefore shared libs "magically" getting loaded there. I guess
it would be possible to put a suggested vaddr into the rump kernel
libs and make ld.elf_so map memory from the suggested address if
present ... but that's another show.

Also thanks to tron for access to an amd64 so that I could verify
the test works.


# 1.12 26-May-2020 christos

Fix alpha build (relocation truncated to fit: GPREL16 against symbol ...)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47230


# 1.11 16-May-2020 christos

Do the same thing with linker flags instead of directly specifying the archives.


# 1.10 16-May-2020 christos

more nofifofs


Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 phil-wifi-20191119
# 1.9 17-Aug-2019 kamil

Avoid symbol clashes in test/rump/modautoload/t_modautoload with sanitizers

Set SANITIZER_RENAME_SYMBOL.t_modautoload to:

* sysctlbyname
* sysctlgetmibinfo


Revision tags: netbsd-8-2-RELEASE netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104
# 1.8 14-Oct-2016 christos

branches: 1.8.14; 1.8.16;
Disable aslr too since we are playing address space range tricks.


Revision tags: localcount-20160914
# 1.7 10-Sep-2016 christos

need bsd.init.mk


# 1.6 27-Aug-2016 christos

don't disable PIE


# 1.5 27-Aug-2016 christos

needs mprotect disable since it loads kernel code and relocates it.


# 1.4 20-Aug-2016 christos

add missing library dependencies.


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.3 27-Dec-2015 pgoyette

branches: 1.3.2;
When MODULAR kernels grew a MODULAR_DEFAULT_AUTOLOAD option, (in rev 1.98
of src/sys/kern/kern_module.c), the default was "off" for all kernels
including rump kernels. While many (most?) kernel config files were
updated to include the new option, rump kernels weren't so lucky. Thus,
rump kernels still had autoload disabled.

This commit uses rump_sysctl to change the module_autoload_on value to
true (ie, enabled) before trying to test if autoloading actually works.

For now, I am _not_ changing the default for all rump kernels. I'll
leave that for another day, after all appropriate discussion has occurred.


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.2 10-Mar-2014 pooka

Move the "is arch capable of loading native kernel modules into
rump kernel" clauses from bsd.own.mk to Makefile.rump. Also,
add a rump_nativeabi_p() call to determine if rump kernel is
compiled with native ABI support.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.1 09-Jun-2010 pooka

branches: 1.1.6; 1.1.12;
Add a test which checks autoloading modules from the host's
/stand/arch/vers/kmods works in rump (and that the result is usable ;).

On i386 this "just works". For amd64, due to -mcmodel=kernel,
things are a little more complicated. We must have the entire rump
kernel loaded in the lower 2GB. Currently, this can be done either
by using the non-PIC version for the rump kernel compiled with
-mcmodel=small, or, as njoly pointed out, using netbsd32, which
causes vm_default_addr() to give something in the lower 2GB and
therefore shared libs "magically" getting loaded there. I guess
it would be possible to put a suggested vaddr into the rump kernel
libs and make ld.elf_so map memory from the suggested address if
present ... but that's another show.

Also thanks to tron for access to an amd64 so that I could verify
the test works.


# 1.11 16-May-2020 christos

Do the same thing with linker flags instead of directly specifying the archives.


# 1.10 16-May-2020 christos

more nofifofs


Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 phil-wifi-20191119
# 1.9 17-Aug-2019 kamil

Avoid symbol clashes in test/rump/modautoload/t_modautoload with sanitizers

Set SANITIZER_RENAME_SYMBOL.t_modautoload to:

* sysctlbyname
* sysctlgetmibinfo


Revision tags: netbsd-8-2-RELEASE netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104
# 1.8 14-Oct-2016 christos

branches: 1.8.14; 1.8.16;
Disable aslr too since we are playing address space range tricks.


Revision tags: localcount-20160914
# 1.7 10-Sep-2016 christos

need bsd.init.mk


# 1.6 27-Aug-2016 christos

don't disable PIE


# 1.5 27-Aug-2016 christos

needs mprotect disable since it loads kernel code and relocates it.


# 1.4 20-Aug-2016 christos

add missing library dependencies.


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.3 27-Dec-2015 pgoyette

branches: 1.3.2;
When MODULAR kernels grew a MODULAR_DEFAULT_AUTOLOAD option, (in rev 1.98
of src/sys/kern/kern_module.c), the default was "off" for all kernels
including rump kernels. While many (most?) kernel config files were
updated to include the new option, rump kernels weren't so lucky. Thus,
rump kernels still had autoload disabled.

This commit uses rump_sysctl to change the module_autoload_on value to
true (ie, enabled) before trying to test if autoloading actually works.

For now, I am _not_ changing the default for all rump kernels. I'll
leave that for another day, after all appropriate discussion has occurred.


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.2 10-Mar-2014 pooka

Move the "is arch capable of loading native kernel modules into
rump kernel" clauses from bsd.own.mk to Makefile.rump. Also,
add a rump_nativeabi_p() call to determine if rump kernel is
compiled with native ABI support.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.1 09-Jun-2010 pooka

branches: 1.1.6; 1.1.12;
Add a test which checks autoloading modules from the host's
/stand/arch/vers/kmods works in rump (and that the result is usable ;).

On i386 this "just works". For amd64, due to -mcmodel=kernel,
things are a little more complicated. We must have the entire rump
kernel loaded in the lower 2GB. Currently, this can be done either
by using the non-PIC version for the rump kernel compiled with
-mcmodel=small, or, as njoly pointed out, using netbsd32, which
causes vm_default_addr() to give something in the lower 2GB and
therefore shared libs "magically" getting loaded there. I guess
it would be possible to put a suggested vaddr into the rump kernel
libs and make ld.elf_so map memory from the suggested address if
present ... but that's another show.

Also thanks to tron for access to an amd64 so that I could verify
the test works.


# 1.9 17-Aug-2019 kamil

Avoid symbol clashes in test/rump/modautoload/t_modautoload with sanitizers

Set SANITIZER_RENAME_SYMBOL.t_modautoload to:

* sysctlbyname
* sysctlgetmibinfo


Revision tags: netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104
# 1.8 14-Oct-2016 christos

Disable aslr too since we are playing address space range tricks.


Revision tags: localcount-20160914
# 1.7 10-Sep-2016 christos

need bsd.init.mk


# 1.6 27-Aug-2016 christos

don't disable PIE


# 1.5 27-Aug-2016 christos

needs mprotect disable since it loads kernel code and relocates it.


# 1.4 20-Aug-2016 christos

add missing library dependencies.


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.3 27-Dec-2015 pgoyette

branches: 1.3.2;
When MODULAR kernels grew a MODULAR_DEFAULT_AUTOLOAD option, (in rev 1.98
of src/sys/kern/kern_module.c), the default was "off" for all kernels
including rump kernels. While many (most?) kernel config files were
updated to include the new option, rump kernels weren't so lucky. Thus,
rump kernels still had autoload disabled.

This commit uses rump_sysctl to change the module_autoload_on value to
true (ie, enabled) before trying to test if autoloading actually works.

For now, I am _not_ changing the default for all rump kernels. I'll
leave that for another day, after all appropriate discussion has occurred.


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.2 10-Mar-2014 pooka

Move the "is arch capable of loading native kernel modules into
rump kernel" clauses from bsd.own.mk to Makefile.rump. Also,
add a rump_nativeabi_p() call to determine if rump kernel is
compiled with native ABI support.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.1 09-Jun-2010 pooka

branches: 1.1.6; 1.1.12;
Add a test which checks autoloading modules from the host's
/stand/arch/vers/kmods works in rump (and that the result is usable ;).

On i386 this "just works". For amd64, due to -mcmodel=kernel,
things are a little more complicated. We must have the entire rump
kernel loaded in the lower 2GB. Currently, this can be done either
by using the non-PIC version for the rump kernel compiled with
-mcmodel=small, or, as njoly pointed out, using netbsd32, which
causes vm_default_addr() to give something in the lower 2GB and
therefore shared libs "magically" getting loaded there. I guess
it would be possible to put a suggested vaddr into the rump kernel
libs and make ld.elf_so map memory from the suggested address if
present ... but that's another show.

Also thanks to tron for access to an amd64 so that I could verify
the test works.


Revision tags: pgoyette-localcount-20161104
# 1.8 14-Oct-2016 christos

Disable aslr too since we are playing address space range tricks.


Revision tags: localcount-20160914
# 1.7 10-Sep-2016 christos

need bsd.init.mk


# 1.6 27-Aug-2016 christos

don't disable PIE


# 1.5 27-Aug-2016 christos

needs mprotect disable since it loads kernel code and relocates it.


# 1.4 20-Aug-2016 christos

add missing library dependencies.


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.3 27-Dec-2015 pgoyette

branches: 1.3.2;
When MODULAR kernels grew a MODULAR_DEFAULT_AUTOLOAD option, (in rev 1.98
of src/sys/kern/kern_module.c), the default was "off" for all kernels
including rump kernels. While many (most?) kernel config files were
updated to include the new option, rump kernels weren't so lucky. Thus,
rump kernels still had autoload disabled.

This commit uses rump_sysctl to change the module_autoload_on value to
true (ie, enabled) before trying to test if autoloading actually works.

For now, I am _not_ changing the default for all rump kernels. I'll
leave that for another day, after all appropriate discussion has occurred.


Revision tags: netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.2 10-Mar-2014 pooka

Move the "is arch capable of loading native kernel modules into
rump kernel" clauses from bsd.own.mk to Makefile.rump. Also,
add a rump_nativeabi_p() call to determine if rump kernel is
compiled with native ABI support.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.1 09-Jun-2010 pooka

branches: 1.1.6; 1.1.12;
Add a test which checks autoloading modules from the host's
/stand/arch/vers/kmods works in rump (and that the result is usable ;).

On i386 this "just works". For amd64, due to -mcmodel=kernel,
things are a little more complicated. We must have the entire rump
kernel loaded in the lower 2GB. Currently, this can be done either
by using the non-PIC version for the rump kernel compiled with
-mcmodel=small, or, as njoly pointed out, using netbsd32, which
causes vm_default_addr() to give something in the lower 2GB and
therefore shared libs "magically" getting loaded there. I guess
it would be possible to put a suggested vaddr into the rump kernel
libs and make ld.elf_so map memory from the suggested address if
present ... but that's another show.

Also thanks to tron for access to an amd64 so that I could verify
the test works.