Revision tags: release/14.0.0, release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0 |
|
#
631607ac |
| 28-Nov-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
t_mlock.c: Remove null_errno, it is write-only
Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
Revision tags: release/13.0.0, release/12.2.0, release/11.4.0, release/12.1.0, release/11.3.0 |
|
#
0269ae4c |
| 06-Jun-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead @348740
Sponsored by: The FreeBSD Foundation
|
#
54a3a114 |
| 13-May-2019 |
Mark Johnston <markj@FreeBSD.org> |
Provide separate accounting for user-wired pages.
Historically we have not distinguished between kernel wirings and user wirings for accounting purposes. User wirings (via mlock(2)) were subject to
Provide separate accounting for user-wired pages.
Historically we have not distinguished between kernel wirings and user wirings for accounting purposes. User wirings (via mlock(2)) were subject to a global limit on the number of wired pages, so if large swaths of physical memory were wired by the kernel, as happens with the ZFS ARC among other things, the limit could be exceeded, causing user wirings to fail.
The change adds a new counter, v_user_wire_count, which counts the number of virtual pages wired by user processes via mlock(2) and mlockall(2). Only user-wired pages are subject to the system-wide limit which helps provide some safety against deadlocks. In particular, while sources of kernel wirings typically support some backpressure mechanism, there is no way to reclaim user-wired pages shorting of killing the wiring process. The limit is exported as vm.max_user_wired, renamed from vm.max_wired, and changed from u_int to u_long.
The choice to count virtual user-wired pages rather than physical pages was done for simplicity. There are mechanisms that can cause user-wired mappings to be destroyed while maintaining a wiring of the backing physical page; these make it difficult to accurately track user wirings at the physical page layer.
The change also closes some holes which allowed user wirings to succeed even when they would cause the system limit to be exceeded. For instance, mmap() may now fail with ENOMEM in a process that has called mlockall(MCL_FUTURE) if the new mapping would cause the user wiring limit to be exceeded.
Note that bhyve -S is subject to the user wiring limit, which defaults to 1/3 of physical RAM. Users that wish to exceed the limit must tune vm.max_user_wired.
Reviewed by: kib, ngie (mlock() test changes) Tested by: pho (earlier version) MFC after: 45 days Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D19908
show more ...
|
Revision tags: release/12.0.0, release/11.2.0 |
|
#
76f9d275 |
| 22-Jan-2018 |
Alan Somers <asomers@FreeBSD.org> |
mlock(2): correct documentation for error conditions.
The man page is years out of date regarding errors. Our implementation _does_ allow unaligned addresses, and it _does_not_ check for negative le
mlock(2): correct documentation for error conditions.
The man page is years out of date regarding errors. Our implementation _does_ allow unaligned addresses, and it _does_not_ check for negative lengths, because the length is unsigned. It checks for overflow instead.
Update the tests accordingly.
Reviewed by: bcr MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D13826
show more ...
|
Revision tags: release/10.4.0 |
|
#
083c8ded |
| 13-Aug-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r322451
|
#
0275f9db |
| 11-Aug-2017 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Merge ^/head r321383 through r322397.
|
#
ca20f8ec |
| 07-Aug-2017 |
Ruslan Bukin <br@FreeBSD.org> |
o Replace __riscv__ with __riscv o Replace __riscv64 with (__riscv && __riscv_xlen == 64)
This is required to support new GCC 7.1 compiler. This is compatible with current GCC 6.1 compiler.
RISC-V
o Replace __riscv__ with __riscv o Replace __riscv64 with (__riscv && __riscv_xlen == 64)
This is required to support new GCC 7.1 compiler. This is compatible with current GCC 6.1 compiler.
RISC-V is extensible ISA and the idea here is to have built-in define per each extension, so together with __riscv we will have some subset of these as well (depending on -march string passed to compiler):
__riscv_compressed __riscv_atomic __riscv_mul __riscv_div __riscv_muldiv __riscv_fdiv __riscv_fsqrt __riscv_float_abi_soft __riscv_float_abi_single __riscv_float_abi_double __riscv_cmodel_medlow __riscv_cmodel_medany __riscv_cmodel_pic __riscv_xlen
Reviewed by: ngie Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D11901
show more ...
|
Revision tags: release/11.1.0 |
|
#
1a36faad |
| 11-Feb-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r313301 through r313643.
|
#
635f2911 |
| 08-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
Merge content from ^/projects/netbsd-tests-upstream-01-2017 into ^/head
The primary end-goal of this drop is ease future merges with NetBSD and collaborate further with the NetBSD project.
The goal
Merge content from ^/projects/netbsd-tests-upstream-01-2017 into ^/head
The primary end-goal of this drop is ease future merges with NetBSD and collaborate further with the NetBSD project.
The goal was (largely, not completely as some items are still oustanding in the NetBSD GNATS system) achieved by doing the following: - Pushing as many changes required to port contrib/netbsd-tests back to NetBSD as possible, then pull the upstream applied changes back in to FreeBSD. - Diff reduce with upstream where possible by: -- Improving libnetbsd header, etc compat glue. -- Using _SED variables to modify test scripts on the fly for items that could not be upstreamed to NetBSD.
As a bonus for this work, this change also introduces testcases for uniq(1).
Many thanks to Christos for working with me to get many of the changes back into the NetBSD project.
In collaboration with: Christos Zoulas <christos@netbsd.org> MFC after: 1 month Sponsored by: Dell EMC Isilon
show more ...
|
#
39a3103b |
| 16-Jan-2017 |
Enji Cooper <ngie@FreeBSD.org> |
Use sys/param.h instead of sys/types.h to prep for upstreaming to NetBSD
|
#
4f9d94bf |
| 04-Dec-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r309263 through r309518.
|
#
710542df |
| 01-Dec-2016 |
Bryan Drewery <bdrewery@FreeBSD.org> |
Fix setrlimit_test:setrlimit_memlock when the system has exceeded vm.max_wired.
This uses the same fix as r294894 did for the mlock test. The code from that commit is moved into a common object fil
Fix setrlimit_test:setrlimit_memlock when the system has exceeded vm.max_wired.
This uses the same fix as r294894 did for the mlock test. The code from that commit is moved into a common object file which PROGS supports building first.
Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D8689
show more ...
|
Revision tags: release/11.0.1, release/11.0.0 |
|
#
c22165b4 |
| 03-Sep-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r305346 through r305360.
|
#
74191470 |
| 03-Sep-2016 |
Enji Cooper <ngie@FreeBSD.org> |
Update contrib/netbsd-tests with new content from NetBSD
This updates the snapshot from 09/30/2014 to 08/11/2016
This brings in a number of new testcases from upstream, most notably:
- bin/cat - l
Update contrib/netbsd-tests with new content from NetBSD
This updates the snapshot from 09/30/2014 to 08/11/2016
This brings in a number of new testcases from upstream, most notably:
- bin/cat - lib/libc - lib/msun - lib/libthr - usr.bin/sort
lib/libc/tests/stdio/open_memstream_test.c was moved to lib/libc/tests/stdio/open_memstream2_test.c to accomodate the new open_memstream test from NetBSD.
MFC after: 2 months Tested on: amd64 (VMware fusion VM; various bare metal platforms); i386 (VMware fusion VM); make tinderbox Sponsored by: EMC / Isilon Storage Division
show more ...
|
#
640235e2 |
| 12-Aug-2016 |
Enji Cooper <ngie@FreeBSD.org> |
Checkpoint initial integration work
- Some of the lib/libc and lib/thr tests fail - lib/msun/exp_test:exp2_values now passes with clang 3.8.0
The Makefiles in contrib/netbsd-tests were pruned as th
Checkpoint initial integration work
- Some of the lib/libc and lib/thr tests fail - lib/msun/exp_test:exp2_values now passes with clang 3.8.0
The Makefiles in contrib/netbsd-tests were pruned as they have no value
Sponsored by: EMC / Isilon Storage Division
show more ...
|
#
b7b46892 |
| 25-May-2016 |
Ruslan Bukin <br@FreeBSD.org> |
Remove legacy brk and sbrk from RISC-V.
Discussed with: andrew Sponsored by: DARPA, AFRL Sponsored by: HEIF5
|
#
94098ab7 |
| 20-May-2016 |
Andrew Turner <andrew@FreeBSD.org> |
Remove brk and sbrk from arm64. They were defined in The Single UNIX Specification, Version 2, but marked as legacy, and have been removed from later specifications. After 12 years it is time to remo
Remove brk and sbrk from arm64. They were defined in The Single UNIX Specification, Version 2, but marked as legacy, and have been removed from later specifications. After 12 years it is time to remove them from new architectures when the main use for sbrk is an invalid method to attempt to find how much memory has been allocated from malloc.
There are a few places in the tree that still call sbrk, however they are not used on arm64. They will need to be fixed to cross build from arm64, but these will be fixed in a follow up commit.
Old copies of binutils from ports called into sbrk, however this has been fixed around 6 weeks ago. It is advised to update binutils on arm64 before installing a world that includes this change.
Reviewed by: brooks, emaste Obtained from: brooks Relnotes: yes Sponsored by: ABT Systems Ltd Differential Revision: https://reviews.freebsd.org/D6464
show more ...
|
Revision tags: release/10.3.0 |
|
#
2414e864 |
| 03-Feb-2016 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
MfH @r295202
Expect to see panics in routing code at least now.
|
#
752d0060 |
| 27-Jan-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r294777 through r294960.
|
#
0e186c0a |
| 27-Jan-2016 |
Glen Barber <gjb@FreeBSD.org> |
MFH
Sponsored by: The FreeBSD Foundation
|
#
8e62f841 |
| 27-Jan-2016 |
Enji Cooper <ngie@FreeBSD.org> |
Adjust vm.max_wired in order to avoid hitting EAGAIN artificially
Set vm.max_wired to INT_MAX in :mlock_err, :mlock_mmap, and :mlock_nested to avoid hitting EAGAIN artificially on the system when ru
Adjust vm.max_wired in order to avoid hitting EAGAIN artificially
Set vm.max_wired to INT_MAX in :mlock_err, :mlock_mmap, and :mlock_nested to avoid hitting EAGAIN artificially on the system when running the tests
Require root privileges in order to set the sysctl
Add allow_sysctl_side_effects to require.config as this test is now adjusting sysctls that can affect the global system state
Unlike the version submitted by cem in OneFS, this version uses a scratch file to save/restore the previous value of the sysctl. I _really_, _really_ wish there were better hooks in atf/kyua for per test suite setup/teardown -- using a file is kludgy, but it's the best I can do to avoid situations where (for instance), sysctl(3) may fail and drop a core outside the kyua sandbox.
Based on a patch submitted by cem, but modified to take business logic out of ATF_TP_ADD_TCS(3).
Differential Revision: https://reviews.freebsd.org/D4779 MFC after: 1 month Sponsored by: EMC / Isilon Storage Division
show more ...
|
Revision tags: release/10.2.0 |
|
#
8f0ea33f |
| 13-Jan-2015 |
Glen Barber <gjb@FreeBSD.org> |
Reintegrate head revisions r273096-r277147
Sponsored by: The FreeBSD Foundation
|
#
9268022b |
| 19-Nov-2014 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge from head@274682
|
Revision tags: release/10.1.0 |
|
#
5c9ef378 |
| 04-Nov-2014 |
Alexander V. Chernikov <melifaro@FreeBSD.org> |
Sync to HEAD@r274095.
|
#
55fd0faa |
| 24-Oct-2014 |
Enji Cooper <ngie@FreeBSD.org> |
- Add sys/types.h for the APIs in sys/sysctl.h - Poke at VM_MIN_ADDRESS in machine/vmparam.h because FreeBSD doesn't have a vm.minaddress sysctl analog - Expect ENOMEM instead of EAGAIN in mlock_li
- Add sys/types.h for the APIs in sys/sysctl.h - Poke at VM_MIN_ADDRESS in machine/vmparam.h because FreeBSD doesn't have a vm.minaddress sysctl analog - Expect ENOMEM instead of EAGAIN in mlock_limits - Provide mlock an mmap'ed page twice to simulate MAP_WIRED on NetBSD
In collaboration with: pho Sponsored by: EMC / Isilon Storage Division
show more ...
|