Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Feb 2023 11:13:54 +0000
From:      bugzilla-noreply@freebsd.org
To:        usb@FreeBSD.org
Subject:   [Bug 269405] Problems in PXE booting for laptops with usb ethernet adapter
Message-ID:  <bug-269405-19105@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D269405

            Bug ID: 269405
           Summary: Problems in PXE booting for laptops with usb ethernet
                    adapter
           Product: Base System
           Version: 13.1-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: usb
          Assignee: usb@FreeBSD.org
          Reporter: maggiebol89@gmail.com

Created attachment 239990
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D239990&action=
=3Dedit
booting screen photo

Hi

  We need to automate network installation on some laptops.=20
  For laptops with  Ethernet cards pxe booting works fine in our configurat=
ion
environment. But for laptops with ethernet Type-C connector (USB), we met s=
ome
problems.=20
   After loading kernel from server, OS starts initializing all devices, but
the process of booting stops when system try to mount nfs root file system =
(see
attached image).
  It stops with error:

nfs_diskless: no interface

   In nfs_diskless.c we just insert a printf() line to display interface, to
make sure about device initialization works properly.

retry:
        CURVNET_SET(TD_TO_VNET(curthread));
        IFNET_RLOCK();
        CK_STAILQ_FOREACH(ifp, &V_ifnet, if_link) {
                printf("name=3D%s\n", ifp->if_xname); /* smalll debug */
                CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
                        if (ifa->ifa_addr->sa_family =3D=3D AF_LINK) {
                                sdl =3D (struct sockaddr_dl *)ifa->ifa_addr;
                                if ((sdl->sdl_type =3D=3D ourdl.sdl_type) &&
                                    (sdl->sdl_alen =3D=3D ourdl.sdl_alen) &&
                                    !bcmp(LLADDR(sdl),
                                          LLADDR(&ourdl),
                                          sdl->sdl_alen)) {
                                    IFNET_RUNLOCK();
                                    CURVNET_RESTORE();
                                    goto match_done;
                                }
                        }
                }
        }


The result of booting process in attached image.

  Looks like initialization of usb (also network) happens after system try =
to
mount root, so we cannot boot system properly. Is that so?
   Is there any opportunity to boot laptops with USB ethernet adapter via
network? May be some workaround.

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-269405-19105>