Home | History | Annotate | Download | only in net
History log of /src/sys/net/nd.c
RevisionDateAuthorComments
 1.8  18-Aug-2025  ozaki-r nd: fix the number of requests for address resolution

ARP is expected to send requests for address resolution
net.inet.arp.nd_bmaxtries times at most. However, it sends
one more. IPv6 ND also behaves the same way.

The fix requires nd_set_timer reorganization to handle
scheduling timer without sending an NS message.

PR kern/59596
 1.7  30-May-2024  riastradh branches: 1.7.4;
nd_timer: Update la_numheld when we clear la_hold (a.k.a. ln_hold).

Followup for PR kern/58297 fix. Patch by mlelstv@.

PR kern/58301
 1.6  28-May-2024  riastradh nd_resolve: Maintain la_numheld.

Otherwise lltable_drop_entry_queue never drops anything.

Addresses mbuf leak, PR kern/58297.
 1.5  19-Nov-2022  yamt branches: 1.5.2;
Make arp have its own mowner

This helped me to debug mbuf leaks in arp.
(if_arp.c rev. 1.298)
 1.4  15-Sep-2020  roy nd: give missed a default of ND_LLINFO_NOSTATE

It's impossible to miss from this state, where-as 0 is ND_LLINFO_INCOMPLETE
which we can miss from.
 1.3  15-Sep-2020  roy Implement RFC 7048, making Neighbor Unreachability Detection less impatient

RFC 7048 Section 3 says in the UNREACHABLE state packets continue to be
sent to the link-layer address and then backoff exponentially.
We adjust this slightly and move to the INCOMPLETE state after
`nd_mmaxtries` probes and then start backing off.

This results in simpler code whilst providing a more robust model which
doubles the time to failure over what we did before.
We don't want to be back to the old ARP model where no unreachability
errors are returned because very few applications would look at
unreachability hints provided such as ND_LLINFO_UNREACHABLE or RTM_MISS.
 1.2  14-Sep-2020  roy nd: Name l3addr union of llentry and use in-place of nd_addr.

Probably makes more sense and makes nd.h less messy.
 1.1  11-Sep-2020  roy Implement address agnostic Neighbor Detection.

This is heavily based on IPv6 Neighbor Detection and allows per protocol
timers which also facilitate Neighor Unreachability Detection.
 1.5.2.2  29-Aug-2025  martin Pull up following revision(s) (requested by ozaki-r in ticket #1154):

sys/net/nd.c: revision 1.8
tests/net/arp/t_arp.sh: revision 1.49

nd: fix the number of requests for address resolution

ARP is expected to send requests for address resolution
net.inet.arp.nd_bmaxtries times at most. However, it sends
one more. IPv6 ND also behaves the same way.

The fix requires nd_set_timer reorganization to handle
scheduling timer without sending an NS message.
PR kern/59596

tests: add tests for ARP address resolution
 1.5.2.1  11-Sep-2024  martin Pull up following revision(s) (requested by rin in ticket #827):

sys/net/nd.c: revision 1.6
sys/net/nd.c: revision 1.7

nd_resolve: Maintain la_numheld.

Otherwise lltable_drop_entry_queue never drops anything.

Addresses mbuf leak, PR kern/58297.

nd_timer: Update la_numheld when we clear la_hold (a.k.a. ln_hold).

Followup for PR kern/58297 fix. Patch by mlelstv@.
PR kern/58301
 1.7.4.1  29-Aug-2025  martin Pull up following revision(s) (requested by ozaki-r in ticket #22):

sys/net/nd.c: revision 1.8
tests/net/arp/t_arp.sh: revision 1.49

nd: fix the number of requests for address resolution

ARP is expected to send requests for address resolution
net.inet.arp.nd_bmaxtries times at most. However, it sends
one more. IPv6 ND also behaves the same way.

The fix requires nd_set_timer reorganization to handle
scheduling timer without sending an NS message.
PR kern/59596

tests: add tests for ARP address resolution

RSS XML Feed