On Dec 23, 2025, at 08:29, Poul-Henning Kamp <[email protected]> wrote:

> --------
> Mark Millard writes:
> 
> 
>> This means that I'll have to set up and do before vs.
>> after-upgrading-FreeBSD-OS testing for
>> comparison/contrast.
> 
> You should be able to do it at runtime with 
> 
> usbconfig -d X.Y set_config [0|1]

Cool. I rarely do these sorts of activities and have to
refigure out the details each time.

. . . However, the result of:

# usbconfig -d ugen0.11 set_config

on the Windows Dev Kit 2023 was:

Fatal data abort
. . .
panic: vm_fault failed.

So all I have so far for testing is the prior cfg=0
test . . .


The FreeBSD OS here is pkgbase main with the
GENERIC-NODEBUG kernel on each machine.

For the below the "iperf3 -s" was done on a
amd64 7950X3D system using its build-in:

# pciconf -l rge0
rge0@pci0:8:0:0:        class=0x020000 rev=0x05 hdr=0x00 vendor=0x10ec 
device=0x8125 subvendor=0x1043 subdevice=0x87d7


Windows Dev Kit 2023 (so: aarch64) . . .

# usbconfig -l -d ugen0.11
ugen0.11: <RTL8153 Gigabit Ethernet Adapter Realtek Semiconductor Corp.> at 
usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (72mA)

# iperf3 -c 192.168.1.195 --get-server-output
Connecting to host 192.168.1.195, port 5201
[  5] local 192.168.1.143 port 50986 connected to 192.168.1.195 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   113 MBytes   945 Mbits/sec    0    488 KBytes       
[  5]   1.00-2.00   sec   112 MBytes   941 Mbits/sec    0    488 KBytes       
[  5]   2.00-3.00   sec   112 MBytes   941 Mbits/sec    0    488 KBytes       
[  5]   3.00-4.00   sec   112 MBytes   942 Mbits/sec    0    488 KBytes       
[  5]   4.00-5.00   sec   112 MBytes   942 Mbits/sec    0    488 KBytes       
[  5]   5.00-6.00   sec   112 MBytes   942 Mbits/sec    0    488 KBytes       
[  5]   6.00-7.00   sec   112 MBytes   941 Mbits/sec    0    488 KBytes       
[  5]   7.00-8.00   sec   112 MBytes   942 Mbits/sec    0    488 KBytes       
[  5]   8.00-9.00   sec   112 MBytes   942 Mbits/sec    0    488 KBytes       
[  5]   9.00-10.00  sec   112 MBytes   942 Mbits/sec    0    488 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.10 GBytes   942 Mbits/sec    0            sender
[  5]   0.00-10.01  sec  1.10 GBytes   941 Mbits/sec                  receiver

Server output:
Accepted connection from 192.168.1.143, port 61091
[  5] local 192.168.1.195 port 5201 connected to 192.168.1.143 port 50986
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.06   sec   119 MBytes   936 Mbits/sec                  
[  5]   1.06-2.06   sec   112 MBytes   942 Mbits/sec                  
[  5]   2.06-3.06   sec   112 MBytes   941 Mbits/sec                  
[  5]   3.06-4.06   sec   112 MBytes   942 Mbits/sec                  
[  5]   4.06-5.06   sec   112 MBytes   942 Mbits/sec                  
[  5]   5.06-6.06   sec   112 MBytes   941 Mbits/sec                  
[  5]   6.06-7.05   sec   112 MBytes   941 Mbits/sec                  
[  5]   7.05-8.06   sec   113 MBytes   942 Mbits/sec                  
[  5]   8.06-9.03   sec   109 MBytes   941 Mbits/sec                  
[  5]   9.03-10.01  sec   110 MBytes   942 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.01  sec  1.10 GBytes   941 Mbits/sec                  receiver


iperf Done.

# iperf3 -R -c 192.168.1.195 --get-server-output
you have mail
Connecting to host 192.168.1.195, port 5201
Reverse mode, remote host 192.168.1.195 is sending
[  5] local 192.168.1.143 port 17266 connected to 192.168.1.195 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.06   sec   118 MBytes   941 Mbits/sec                  
[  5]   1.06-2.04   sec   110 MBytes   942 Mbits/sec                  
[  5]   2.04-3.06   sec   115 MBytes   941 Mbits/sec                  
[  5]   3.06-4.06   sec   112 MBytes   941 Mbits/sec                  
[  5]   4.06-5.06   sec   112 MBytes   942 Mbits/sec                  
[  5]   5.06-6.02   sec   108 MBytes   941 Mbits/sec                  
[  5]   6.02-7.00   sec   110 MBytes   942 Mbits/sec                  
[  5]   7.00-8.06   sec   119 MBytes   941 Mbits/sec                  
[  5]   8.06-9.06   sec   112 MBytes   942 Mbits/sec                  
[  5]   9.06-10.00  sec   106 MBytes   941 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.10 GBytes   942 Mbits/sec    0            sender
[  5]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec                  receiver

Server output:
-----------------------------------------------------------
Server listening on 5201 (test #2)
-----------------------------------------------------------
Accepted connection from 192.168.1.143, port 64359
[  5] local 192.168.1.195 port 5201 connected to 192.168.1.143 port 17266
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.06   sec   120 MBytes   947 Mbits/sec    0    730 KBytes       
[  5]   1.06-2.06   sec   112 MBytes   941 Mbits/sec    0    730 KBytes       
[  5]   2.06-3.06   sec   112 MBytes   942 Mbits/sec    0    730 KBytes       
[  5]   3.06-4.05   sec   112 MBytes   941 Mbits/sec    0    730 KBytes       
[  5]   4.05-5.06   sec   113 MBytes   941 Mbits/sec    0    730 KBytes       
[  5]   5.06-6.06   sec   112 MBytes   942 Mbits/sec    0    730 KBytes       
[  5]   6.06-7.03   sec   108 MBytes   941 Mbits/sec    0    730 KBytes       
[  5]   7.03-8.06   sec   116 MBytes   942 Mbits/sec    0    730 KBytes       
[  5]   8.06-9.06   sec   112 MBytes   941 Mbits/sec    0    730 KBytes       
[  5]   9.06-10.00  sec   106 MBytes   941 Mbits/sec    0    730 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.10 GBytes   942 Mbits/sec    0            sender




For reference for the panic:

#8  0xffff0000005293e0 in vpanic (fmt=<optimized out>, ap=...)
    at /usr/src/sys/kern/kern_shutdown.c:962
        buf = "vm_fault failed: 0xffff00000074c5dc error 1", '\000' <repeats 
212 times>
        other_cpus = {__bits = {127, 0 <repeats 15 times>}}
        td = 0xffff0000eb228640
        newpanic = <optimized out>
        bootopt = <optimized out>
#9  0xffff0000005291d0 in panic (
    fmt=0x12 <error: Cannot access memory at address 0x12>)
    at /usr/src/sys/kern/kern_shutdown.c:887
        ap = {__stack = 0xffff00010cfec1a0, __gr_top = 0xffff00010cfec150, 
          __vr_top = 0xffffa00080cf7700, __gr_offs = -56, __vr_offs = 0}
#10 0xffff00000095ea5c in data_abort (td=<optimized out>, 
    frame=0xffff00010cfec270, esr=2516582404, far=<optimized out>, 
    lower=<optimized out>) at /usr/src/sys/arm64/arm64/trap.c:410
        sig = 11
        ucode = 1
        pcb = 0xffff00010cfecb20
        map = <optimized out>
        ftype = <optimized out>
        error = <optimized out>
        handled = <optimized out>
#11 <signal handler called>
No locals.
#12 0xffff00000074c5dc in in6m_disconnect_locked (
    inmh=inmh@entry=0xffff00010cfec498, inm=inm@entry=0xffffa00087100b00)
    at /usr/src/sys/netinet6/in6_mcast.c:604
        curelm = 0x0
        ifp = 0xffffa000870f9c00
        ifma = 0xffffa000872cc500
        ll_ifma = <optimized out>
        ifa = <optimized out>
        ifa6 = <optimized out>
        imm = <optimized out>
        imm_tmp = <optimized out>
#13 0xffff00000074d840 in in6_leavegroup_locked (inm=0xffffa00087100b00, 
    imf=<optimized out>, imf@entry=0xffff00010cfec4c0)
    at /usr/src/sys/netinet6/in6_mcast.c:1404
        inmh = {slh_first = 0x0}
        error = <optimized out>
        timf = <optimized out>
        ifp = 0xffffa000870f9c00
#14 0xffff000000752550 in in6_pcbpurgeif0 (pcbinfo=<optimized out>, 
    ifp=ifp@entry=0xffffa000870f9c00) at /usr/src/sys/netinet6/in6_pcb.c:857
        inpi = {ipi = 0xffff0000435dad38, inp = 0xffffa00087a8bc40, 
          match = 0xffff000000752590 <in6_multi_match>, ctx = 0x0, hash = -1, 
          lock = INPLOOKUP_RLOCKPCB}
        im6o = 0xffffa00087470260
        imf = <optimized out>
        inm = 0xffffa000870f9c00
        inp = <optimized out>
#15 0xffff00000074a348 in _in6_ifdetach (ifp=ifp@entry=0xffffa000870f9c00, 
    purgeulp=<optimized out>, purgeulp@entry=1)
    at /usr/src/sys/netinet6/in6_ifattach.c:877
        ifa = <optimized out>
        next = <optimized out>
#16 0xffff00000074a88c in in6_ifdeparture (arg=<optimized out>, 
    ifp=0xffffa000870f9c00) at /usr/src/sys/netinet6/in6_ifattach.c:918
        ext = 0xffffa000870f4340
#17 0xffff0000006834bc in if_detach_internal (
    ifp=ifp@entry=0xffffa000870f9c00, vmove=false)
    at /usr/src/sys/net/if.c:1122
        _ep = <optimized out>
        _t = 0xffffa00080cf7700
        _el = 0xffffa00080376a80
        shutdown = <optimized out>
        ifa = <optimized out>
#18 0xffff000000682c54 in if_detach (ifp=0xffffa000870f9c00)
    at /usr/src/sys/net/if.c:1029
        saved_vnet = 0x0
        found = <optimized out>
#19 0xffff0000006913e0 in ether_ifdetach (ifp=ifp@entry=0xffffa000870f9c00)
    at /usr/src/sys/net/if_ethersubr.c:1045
        sdl = <optimized out>
#20 0xffff00000033caec in uether_ifdetach (ue=ue@entry=0xffffa0008785b000)
    at /usr/src/sys/dev/usb/net/usb_ethernet.c:315
        ifp = 0xffffa000870f9c00
#21 0xffff00000033579c in ure_detach (dev=<optimized out>)
    at /usr/src/sys/dev/usb/net/if_ure.c:591
        ue = 0xffffa0008785b000
        sc = 0xffffa0008785b000
#22 0xffff000000569bb0 in DEVICE_DETACH (dev=0xffffa00087534d00)
    at ./device_if.h:234
        _m = 0x0
        rc = <optimized out>
        _desc = <optimized out>
        _cep = <optimized out>
        _ce = <optimized out>
#23 device_detach (dev=dev@entry=0xffffa00087534d00)
    at /usr/src/sys/kern/subr_bus.c:2709
        error = <optimized out>
#24 0xffff000000569744 in device_delete_child (dev=0xffffa0008786e500, 
    child=child@entry=0xffffa00087534d00) at /usr/src/sys/kern/subr_bus.c:1550
        error = <optimized out>
        grandchild = <optimized out>
#25 0xffff0000003175e8 in usb_detach_device_sub (udev=0xffffa00087847000, 
    ppdev=<optimized out>, ppnpinfo=<optimized out>, flag=<optimized out>)
    at /usr/src/sys/dev/usb/usb_device.c:1253
        dev = 0xffffa00087534d00
        err = <optimized out>
        pnpinfo = <optimized out>
#26 usb_detach_device (udev=udev@entry=0xffffa00087847000, 
    iface_index=<optimized out>, flag=<optimized out>)
    at /usr/src/sys/dev/usb/usb_device.c:1315
        i = 0 '\000'
        iface = <optimized out>
#27 0xffff000000316538 in usb_unconfigure (udev=udev@entry=0xffffa00087847000, 
    flag=0 '\000', flag@entry=144 '\220')
    at /usr/src/sys/dev/usb/usb_device.c:623
        do_unlock = <optimized out>
#28 0xffff0000003161f4 in usbd_set_config_index (
    udev=udev@entry=0xffffa00087847000, index=1 '\001')
    at /usr/src/sys/dev/usb/usb_device.c:686
        ds = {wStatus = "\000"}
        cdp = 0xffff000000e79000 <sdta_vfs_vop_vop_spare4_return1+16>
        err = <optimized out>
        selfpowered = <optimized out>
        power = <optimized out>
        max_power = <optimized out>
        do_unlock = <optimized out>
#29 0xffff0000003205f4 in uhub_explore_handle_re_enumerate (
    child=child@entry=0xffffa00087847000) at /usr/src/sys/dev/usb/usb_hub.c:479
        err = <optimized out>
        do_unlock = <optimized out>
#30 0xffff0000003212c4 in uhub_explore_sub (sc=0xffffa0008767b000, 
    up=0xffffa0008786e49c) at /usr/src/sys/dev/usb/usb_hub.c:527
        bus = 0x0
        err = USB_ERR_NORMAL_COMPLETION
        child = 0xffffa00087847000
        refcount = <optimized out>
#31 uhub_explore (udev=0xffffa00087658000)
    at /usr/src/sys/dev/usb/usb_hub.c:1107
        hub = 0xffffa0008786e400
        sc = 0xffffa0008767b000
        x = <optimized out>
        retval = USB_ERR_NORMAL_COMPLETION
        up = 0xffffa0008786e49c
        portno = 2 '\002'
        err = <optimized out>
        do_unlock = <optimized out>
#32 0xffff00000032130c in uhub_explore_sub (sc=0xffffa00087473580, 
    up=0xffffa00087448a9c) at /usr/src/sys/dev/usb/usb_hub.c:547
        bus = <optimized out>
        err = USB_ERR_NORMAL_COMPLETION
        child = 0xffffa00087658000
        refcount = <optimized out>
#33 uhub_explore (udev=0xffffa00087440000)
    at /usr/src/sys/dev/usb/usb_hub.c:1107
        hub = 0xffffa00087448a00
        sc = 0xffffa00087473580
        x = <optimized out>
        retval = USB_ERR_NORMAL_COMPLETION
        up = 0xffffa00087448a9c
        portno = 2 '\002'
        err = <optimized out>
        do_unlock = <optimized out>
#34 0xffff00000032130c in uhub_explore_sub (sc=0xffffa00080d88b00, 
    up=0xffffa00080da9bcc) at /usr/src/sys/dev/usb/usb_hub.c:547
        bus = <optimized out>
        err = USB_ERR_NORMAL_COMPLETION
        child = 0xffffa00087440000
        refcount = <optimized out>
#35 uhub_explore (udev=0xffffa00080de4000)
    at /usr/src/sys/dev/usb/usb_hub.c:1107
        hub = 0xffffa00080da9b00
        sc = 0xffffa00080d88b00
        x = <optimized out>
        retval = USB_ERR_NORMAL_COMPLETION
        up = 0xffffa00080da9bcc
        portno = 5 '\005'
        err = <optimized out>
        do_unlock = <optimized out>
#36 0xffff00000030c65c in usb_bus_explore (pm=<optimized out>)
    at /usr/src/sys/dev/usb/controller/usb_controller.c:409
        udev = 0xffffa00080de4000
        bus = 0xffff00010ef84428
#37 0xffff000000326434 in usb_process (arg=arg@entry=0xffff00010ef84538)
    at /usr/src/sys/dev/usb/usb_process.c:160
        up = 0xffff00010ef84538
        td = <optimized out>
        pm = 0xffff00010ef845e8
#38 0xffff0000004cc260 in fork_exit (callout=0xffff000000326320 <usb_process>, 
    arg=0xffff00010ef84538, frame=0xffff00010cfeca00)
    at /usr/src/sys/kern/kern_fork.c:1155
        td = 0xffff0000eb228640
        p = 0xffffa000824acaa0
        dtd = <optimized out>
#39 <signal handler called>


===
Mark Millard
marklmi at yahoo.com


Reply via email to