[Bug 248005] nd6 initializes nd_ifinfo->maxmtu = 0 on newly inserted network interfaces

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Jul 15 18:44:25 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=248005

            Bug ID: 248005
           Summary: nd6 initializes nd_ifinfo->maxmtu = 0 on newly
                    inserted network interfaces
           Product: Base System
           Version: 12.1-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: kern
          Assignee: bugs at FreeBSD.org
          Reporter: mjanelle at blackberry.com

Created attachment 216476
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=216476&action=edit
Proposed patch

The issue is that if_attach is called prior to setting the interface MTU, which
will cause nd6_ifattach to attach the interface with an uninitialized MTU
value(0).

This issue will typically go unnoticed unless you start adding new network
interface after the system has finished starting-up since drivers are
mounted/attached then at some time after domainattach will explicitly be called
by:
SYSINIT(domainifattach, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_SECOND,
    if_attachdomain, NULL);

To reproduce the observed behaviour:
1. Start-up without a USB Ethernet device plugged in
2. Insert one and load the driver.
3. ndp -i <ifname> will show maxmtu=0 and not maxmtu=1500.

I've attached a diff that will resolve the issue.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list