freebsd-dev/stand/libsa
Colin Percival 7457840230 loader: Set twiddle globaldiv to 16 by default
Booting FreeBSD on an EC2 c5.xlarge instance, the loader "twiddles"
810 times over the course of 510 ms, a rate of 1.59 kHz. Even accepting
that many systems are slower than this particular VM and will take
longer to boot (especially if using spinning-rust disks), this seems
like an unhelpfully large amount of twiddling when compared to the
~60 Hz frame rate of many displays; printing the twiddles also consumes
roughly 10% of the boot time on the aforementioned VM.

Setting the default globaldiv to 16 dramatically reduces the time spent
printing twiddles to the console while still twiddling at roughly 100
Hz; this should be ample even for systems which take longer to boot and
consequently twiddle slower.

Note that this can adjusted via the twiddle_divisor variable in
loader.conf, but that file is not processed until nearly halfway
through the loader's runtime.

Reviewed by:	allanjude, jrtc27, kevans
MFC after:	1 week
Sponsored by:	https://www.patreon.com/cperciva
Differential Revision:	<https://reviews.freebsd.org/D32163>
2021-09-28 15:24:02 -07:00
..
amd64 libsa: Remove conflicting .global/.weak directive 2021-03-30 14:59:41 +01:00
geli loader: implement GELI writes 2020-07-11 06:51:42 +00:00
i386
mips libsa: mips: fix typo that had slipped into the diff on local machine 2019-08-22 21:49:13 +00:00
powerpc Add CFI start/end proc directives to arm64, i386, and ppc 2020-12-05 00:33:28 +00:00
x86 Add support for hypervisor check on x86 2019-10-24 20:02:48 +00:00
zfs loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
__main.c
abort.c Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
arp.c The libstand's panic() appends its own '\n' to the message, so that users of the API 2018-11-29 18:37:48 +00:00
assert.c The libstand's panic() appends its own '\n' to the message, so that users of the API 2018-11-29 18:37:48 +00:00
bcd.c
bootp.c
bootp.h
bootparam.c
bootparam.h
bzipfs.c libsa: Fix infinite loop in bzipfs & gzipfs 2021-06-01 11:08:20 -05:00
cd9660.c loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
cd9660read.c loader: cd9660_open() warn: is 'buf' large enough for 'struct iso_primary_descriptor'? 2019-12-13 12:36:16 +00:00
close.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
closeall.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
crc32_libkern.c Separate kernel crc32() implementation to its own header (gsb_crc32.h) and 2019-06-17 19:49:08 +00:00
dev.c
dosfs.c loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
dosfs.h
environment.c libsa: remove leftover whitespace 2020-08-19 20:41:22 +00:00
ether.c
ext2fs.c libsa: Fix a typo in source code comments 2021-08-29 10:09:58 +02:00
fstat.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
getopt.c
gets.c
globals.c
gpt.c loader: remove libsa/crc32.c and use version from zlib 2020-03-19 21:05:11 +00:00
gpt.h Eliminate unused uuid parameters from gptread and gptread_table. We 2019-06-05 02:34:58 +00:00
gzipfs.c libsa: Fix infinite loop in bzipfs & gzipfs 2021-06-01 11:08:20 -05:00
hexdump.c zalloc_malloc:Free hexdump preceeding buffer when we detect overflow 2020-08-29 21:05:43 +00:00
in_cksum.c
inet_ntoa.c
ioctl.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
iodesc.h loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
ip.c Remove unnecessary include from libstand. 2018-10-31 19:59:20 +00:00
libsa.3
lseek.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
Makefile loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
Makefile.depend Enable veriexec for loader 2019-02-26 06:22:10 +00:00
mount.c loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
net.c Wait a maximum of 300 seconds for network send/recv in libsa 2018-12-20 19:27:46 +00:00
net.h loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
netif.c loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
netif.h
nfs.c Logging improvements to loader::nfs 2019-11-13 03:56:51 +00:00
nfsv2.h
nullfs.c
open.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
pager.c
panic.c
pkgfs.c pkgfs_open: follow symlinks 2021-01-14 17:33:05 -08:00
printf.c loader printf: Profile with TSLOG 2021-09-24 20:23:49 -07:00
random.c
rarp.c
read.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
readdir.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
rpc.c
rpc.h
rpcv2.h
saioctl.h
sbrk.c The libstand's panic() appends its own '\n' to the message, so that users of the API 2018-11-29 18:37:48 +00:00
smbios.c libsa: smbios: Parse the chassis type and export it as smbios.chassis.type 2020-08-20 12:50:49 +00:00
smbios.h Move smbios.c to libsa. 2020-02-20 00:46:22 +00:00
splitfs.c
stand.h loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
stat.c
strcasecmp.c
strdup.c
strerror.c
tftp.c loader: tftp client should use server address from rootip 2021-08-02 15:43:54 +03:00
tftp.h
time.c Implement some time variables from kernel 2020-09-29 16:29:50 +00:00
tslog.c loader tslog: Don't use sprintf 2021-09-24 20:23:37 -07:00
twiddle.c loader: Set twiddle globaldiv to 16 by default 2021-09-28 15:24:02 -07:00
udp.c Remove unnecessary include from libstand. 2018-10-31 19:59:20 +00:00
ufs.c loader: implement mount/unmount rootfs 2021-09-08 04:01:20 +03:00
ufsread.c
uuid_from_string.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
uuid_to_string.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
write.c loader: open file list should be dynamic 2021-08-10 21:54:32 +03:00
xlocale_private.h Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
zalloc_defs.h loader: cstyle cleanup libsa zalloc sources 2019-09-17 11:35:53 +00:00
zalloc_malloc.c zalloc_malloc:Free hexdump preceeding buffer when we detect overflow 2020-08-29 21:05:43 +00:00
zalloc_mem.h loader: cstyle cleanup libsa zalloc sources 2019-09-17 11:35:53 +00:00
zalloc_protos.h loader: add memalign() to libsa 2019-09-17 13:15:27 +00:00
zalloc.c loader: fix typo in zalloc. 2019-09-20 05:22:34 +00:00