This pushes the bulk of the rx servicing into a single loop that's only slightly convoluted, and it addresses a problem with rx handling in the process. If we hit a tx interrupt while we're processing, we'd previously drop the frame on the floor completely and ultimately timeout, increasing boot time on particularly busy hosts as we keep having to backoff and resend. After this patch, we don't seem to hit timeouts at all on zoo anymore though loading a 27M kernel is still relatively slow (~1m20s). Reviewed by: tsoome Triage by: Ash Gokhale <ashfixit gmail com> Sponsored By: National Bureau of Economic Research Sponsored by: Klara, Inc. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D31512 |
||
---|---|---|
.. | ||
amd64_tramp.S | ||
bio.c | ||
biosacpi.c | ||
biosdisk.c | ||
biosmem.c | ||
biospci.c | ||
biospnp.c | ||
biossmap.c | ||
bootinfo32.c | ||
bootinfo64.c | ||
bootinfo.c | ||
comconsole.c | ||
devicename.c | ||
elf32_freebsd.c | ||
elf64_freebsd.c | ||
i386_copy.c | ||
i386_module.c | ||
libi386.h | ||
Makefile | ||
Makefile.depend | ||
multiboot_tramp.S | ||
multiboot.c | ||
multiboot.h | ||
nullconsole.c | ||
pread.c | ||
pxe.c | ||
pxe.h | ||
pxetramp.S | ||
relocater_tramp.S | ||
spinconsole.c | ||
time.c | ||
vbe.c | ||
vbe.h | ||
vidconsole.c |