freebsd-dev/stand
Kyle Evans 502b7cf99b libsa: Fix IP recv timeout
readip() doesn't, at the moment, properly indicate to callers that it has
timed out. One can tell that it's timed out if errno == EAGAIN when it
returns, but this is not ideal. Restructure it a little bit to explicitly
set errno to ETIMEDOUT if we've exhausted tleft.

I found two places that care about where it timed out or not: sendrecv in
net.c and sendrecv_tftp. Both are structured to pass smaller timeout values
to readip while tracking a larger timeout. Neither of them were able to do
this properly with readip not indicating ETIMEDOUT, so fix it.

While here, straighten out the time (t/t1) usage in sendrecv_tftp.

This would have manifested itself in periodic failures to NFS/TFTP boot for
no apparent reason because MINTMO/MAXTMO were not actually being respected
properly. Problems were not reported with NFS, only TFTP.

Reported by:	sbruno
Reviewed by:	sbruno, tsoome
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D14350
2018-02-14 15:40:13 +00:00
..
arm Invent new LDR_INTERP for the loader interpreter to use. Use this in 2018-02-02 15:40:49 +00:00
arm64
common Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00
efi Remove now-unused variable after r328809 2018-02-04 17:31:50 +00:00
fdt Centralize several variables. 2018-02-02 06:32:26 +00:00
ficl Centralize several variables. 2018-02-02 06:32:26 +00:00
ficl32
forth Remove pcibios forth support. 2018-02-02 15:01:49 +00:00
geli Centralize several variables. 2018-02-02 06:32:26 +00:00
i386 Invent new LDR_INTERP for the loader interpreter to use. Use this in 2018-02-02 15:40:49 +00:00
kshim A more definitions to kernel emulation shim in order to build stand/usb. 2018-02-07 18:50:36 +00:00
liblua Add Lua as a scripting langauge to /boot/loader 2018-02-12 15:31:53 +00:00
liblua32 Add Lua as a scripting langauge to /boot/loader 2018-02-12 15:31:53 +00:00
libsa libsa: Fix IP recv timeout 2018-02-14 15:40:13 +00:00
libsa32
lua Add the lua scripts from the lua-bootloader SoC 2018-02-12 15:32:00 +00:00
man
mips Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00
ofw Fix regression introduced in r328806, preventing boot at least on all 2018-02-03 23:49:21 +00:00
powerpc Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00
sparc64 Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00
uboot Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00
usb Move the stand/usb test loader into its own directory. 2018-02-07 19:20:59 +00:00
userboot Fix build of userboot.so 2018-02-08 22:59:51 +00:00
zfs Centralize several variables. 2018-02-02 06:32:26 +00:00
zfs32
defs.mk Add Lua as a scripting langauge to /boot/loader 2018-02-12 15:31:53 +00:00
fdt.mk
ficl.mk Now that we no longer conditionally compile some files outside of ficl 2018-02-02 15:01:54 +00:00
loader.mk Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00
lua.mk Add Lua as a scripting langauge to /boot/loader 2018-02-12 15:31:53 +00:00
Makefile Add the lua scripts from the lua-bootloader SoC 2018-02-12 15:32:00 +00:00
Makefile.amd64 Add Lua as a scripting langauge to /boot/loader 2018-02-12 15:31:53 +00:00
Makefile.arm
Makefile.arm64
Makefile.i386 Switch to proper MK_LOADER_GELI tests. 2017-12-04 01:14:12 +00:00
Makefile.inc Minor flags cleanup 2017-12-02 00:06:58 +00:00
Makefile.mips
Makefile.powerpc
Makefile.sparc64
uboot.mk Unify metadata load files for arm, mips, powerpc, sparc64 2018-02-13 03:44:50 +00:00