freebsd-dev/sys/powerpc
Justin Hibbits 6260bfb087 powerpc: Optimize copyinstr() to avoid repeatedly mapping user strings
Currently copyinstr() uses fubyte() to read each byte from userspace.
However, this means that for each byte, it calls pmap_map_user_ptr() to
map the string into memory.  This is needlessly wasteful, since the
string will rarely ever cross a segment boundary.  Instead, map a
segment at a time, and copy as much from that segment as possible at a
time.

Measured with the HPT pmap on powerpc64, this saves roughly 8% time on
buildkernel, and 5% on buildworld, in wallclock time.
2020-12-30 23:45:35 +01:00
..
aim Radix dump updates 2020-12-30 23:45:28 +01:00
amigaone powerpc: clean up empty lines in .c and .h files 2020-09-01 21:20:08 +00:00
booke Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
conf Enable ROUTE_MPATH support in GENERIC kernels. 2020-12-14 22:23:08 +00:00
cpufreq powerpc: clean up empty lines in .c and .h files 2020-09-01 21:20:08 +00:00
fpu powerpc: clean up empty lines in .c and .h files 2020-09-01 21:20:08 +00:00
include [PowerPC] Floating-point exception trap followup 2020-12-13 03:58:43 +00:00
mambo Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
mikrotik powerpc: clean up empty lines in .c and .h files 2020-09-01 21:20:08 +00:00
mpc85xx Make MAXPHYS tunable. Bump MAXPHYS to 1M. 2020-11-28 12:12:51 +00:00
ofw Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
powermac powerpc: clean up empty lines in .c and .h files 2020-09-01 21:20:08 +00:00
powernv [POWERPC64LE] fix sysctl dev.opal_sensor.* on little-endian kernel 2020-12-30 22:00:28 -03:00
powerpc powerpc: Optimize copyinstr() to avoid repeatedly mapping user strings 2020-12-30 23:45:35 +01:00
ps3 Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
pseries Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
psim powerpc: clean up empty lines in .c and .h files 2020-09-01 21:20:08 +00:00