The branch main has been updated by manu:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=c5f24f5e0db24c8e33e6278a4fbb7e68364ca18d

commit c5f24f5e0db24c8e33e6278a4fbb7e68364ca18d
Author:     Emmanuel Vadot <m...@freebsd.org>
AuthorDate: 2021-12-09 14:46:39 +0000
Commit:     Emmanuel Vadot <m...@freebsd.org>
CommitDate: 2021-12-16 10:50:36 +0000

    loader: ip: Do not call getsecs so much
    
    getsecs is very costly, reuse the values we got before.
    
    Fetching a ~30MB kernel with the tftp command use to take ~26 seconds
    and now it's ~18 seconds.
    
    Reviewed by:    imp, tsoome
    MFC after:      2 weeks
    Sponsored by:   Beckhoff Automation GmbH & Co. KG
    Differential Revision:  https://reviews.freebsd.org/D33408
---
 stand/libsa/net.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/stand/libsa/net.c b/stand/libsa/net.c
index 3142616a5bf0..e04a370e466e 100644
--- a/stand/libsa/net.c
+++ b/stand/libsa/net.c
@@ -101,10 +101,9 @@ sendrecv(struct iodesc *d,
        tmo = MINTMO;
        tlast = 0;
        tleft = 0;
-       tref = getsecs();
-       t = getsecs();
+       tref = t = getsecs();
        for (;;) {
-               if (MAXWAIT > 0 && (getsecs() - tref) >= MAXWAIT) {
+               if (MAXWAIT > 0 && (t - tref) >= MAXWAIT) {
                        errno = ETIMEDOUT;
                        return -1;
                }

Reply via email to