Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-11] src



Module Name:    src
Committed By:   martin
Date:           Wed Jun  3 18:41:37 UTC 2026

Modified Files:
        src/sys/net [netbsd-11]: if_llatbl.h nd.c
        src/sys/netinet [netbsd-11]: if_arp.c
        src/sys/netinet6 [netbsd-11]: nd6.c
        src/tests/net/arp [netbsd-11]: t_arp.sh

Log Message:
Pull up following revision(s) (requested by ozaki-r in ticket #300):

        sys/net/if_llatbl.h: revision 1.20
        sys/netinet/if_arp.c: revision 1.319
        sys/net/nd.c: revision 1.10
        tests/net/arp/t_arp.sh: revision 1.50
        tests/net/arp/t_arp.sh: revision 1.51
        sys/netinet6/nd6.c: revision 1.286

commit 27c3de6c8063a7850ef0efbea0d83f314e541ce8
Author: Ryota Ozaki <ozaki-r%iij.ad.jp@localhost>
Date:   Thu Mar 12 12:42:03 2026 +0900
    nd: reset ln_asked on state reset
    Even if a userland program such as ping continuously sends packets
    to a (temporarily) unreachable host, the ND resolver only sends
    request packets up to nd_mmaxtries times. This change allows ND
    request packets to continue being sent while the userland process
    is still sending packets.
    Additionally, introduce LLE_UNRESOLVED to fix another issue.
    nd_resolve may incorrectly return an error immediately after sending
    the last ND request packet. For example, if nd_mmaxtries = 1 and two
    packets arrive simultaneously, nd_resolve returns an error for the
    second packet. This occurs because ln_asked is used to determine
    whether the ND resolution is still in progress.
    Instead, use the new LLE_UNRESOLVED state. It is set when the state
    transitions to WAITDELETE, i.e., one second after the last request
    is sent without successful address resolution.
    PR kern/60071

tests, arp: add keep_sending test

It tests whether ARP sends requests more than net.inet.arp.nd_bmaxtries
times while ping is sending packets.
tests: skip arp_keep_sending test on qemu

It doesn't work on qemu (on NetBSD?) while it works on other
environments.


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.19.10.1 src/sys/net/if_llatbl.h
cvs rdiff -u -r1.7.4.1 -r1.7.4.2 src/sys/net/nd.c
cvs rdiff -u -r1.317.2.1 -r1.317.2.2 src/sys/netinet/if_arp.c
cvs rdiff -u -r1.284 -r1.284.2.1 src/sys/netinet6/nd6.c
cvs rdiff -u -r1.48.2.1 -r1.48.2.2 src/tests/net/arp/t_arp.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index