aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/traceroute6/Makefile
diff options
context:
space:
mode:
authorMateusz Piotrowski <0mp@FreeBSD.org>2025-09-26 07:08:30 +0000
committerMateusz Piotrowski <0mp@FreeBSD.org>2025-11-11 16:06:59 +0000
commitd01183fddf37b15da7ab3d69039e7759ae144451 (patch)
tree63e53d7fa0ff7e821f97e53c298429e16671b51e /usr.sbin/traceroute6/Makefile
parent77b1e4f32f31b219c238c81b726d079a003b465c (diff)
geom/zero: Add support for unmapped I/OHEADmain
This patch adds support for unmapped I/O to gzero(4). Let's consider the following script to illustrate the change in gzero(4)'s behavior: ``` dd="dd if=/dev/gzero of=/dev/null bs=512 count=100000" dtrace -q -c "$dd" -n ' fbt::pmap_qenter:entry, fbt::uiomove_fromphys:entry, fbt::memset:entry /execname == "dd"/ { @[probefunc] = count(); } ' ``` Let's run that script 4 times: ``` ==> 1: unmapped I/O not supported (fallback to mapped I/O), kern.geom.zero.clear=1 51200000 bytes transferred in 1.795809 secs (28510829 bytes/sec) pmap_qenter 100000 memset 400011 ==> 2: unmapped I/O not supported (fallback to mapped I/O), kern.geom.zero.clear=0 51200000 bytes transferred in 0.701079 secs (73030337 bytes/sec) memset 300011 ==> 3: unmapped I/O supported, kern.geom.zero.clear=1 51200000 bytes transferred in 0.771680 secs (66348750 bytes/sec) uiomove_fromphys 100000 memset 300011 ==> 4: unmapped I/O supported, kern.geom.zero.clear=0 51200000 bytes transferred in 0.621303 secs (82407407 bytes/sec) memset 300011 ``` If kern.geom.zero.clear=0, then nothing really changes as no copying takes place. Otherwise, we see by adding unmapped I/O support we avoid calls to pmap_qenter(), which was called by GEOM to turn unmapped I/O requests into mapped ones before passing them for processing to gzero(4). Reviewed by: bnovkov, markj Approved by: bnovkov (mentor), markj (mentor) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D52998
Diffstat (limited to 'usr.sbin/traceroute6/Makefile')
0 files changed, 0 insertions, 0 deletions