4

My laptop uses a USB-Ethernet adapter for a wired connection. Periodically, while actively working, the connection is lost. NetworkManager tries to connect and to obtain an IP address via DHCP but each attempt fails. The connectivity lights on the USB-Ethernet adapter are off, as if the cable is unplugged. (The cable is good.) I can resolve the problem in two ways: either unplug and replug the USB-Ethernet adapter or reboot the laptop. Either works in the short term, but this problem happens every few hours at random intervals.

Performing ip link set dev eth0 down followed by ip link set dev eth0 up does not work and NetworkManager continues to be unable to obtain an IP address. I have observed the problem with two different Ethernet adapters, so it seems unlikely that it is a faulty adapter. The laptop is relatively new and it seems unlikely to be a problem with the USB port as that port functions normally otherwise. It does not appear to be related to power management in an obvious manner, as the problem happens while actively working.

Kernel: 4.17.11-arch1 #1 SMP PREEMPT Sun Jul 29 10:11:16 UTC 2018 x86_64 GNU/Linux DE: KDE plasmashell 5.13.3

lsusb -vvv while Ethernet is not working

Bus 004 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Device Descriptor:
bLength                18
bDescriptorType         1
bcdUSB               3.00
bDeviceClass          255 Vendor Specific Class
bDeviceSubClass       255 Vendor Specific Subclass
bDeviceProtocol         0
bMaxPacketSize0         9
idVendor           0x0b95 ASIX Electronics Corp.
idProduct          0x1790 AX88179 Gigabit Ethernet
bcdDevice            1.00
iManufacturer           1 ASIX Elec. Corp.
iProduct                2 AX88179
iSerial                 3
bNumConfigurations      1
Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0039
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
    (Bus Powered)
    Remote Wakeup
    MaxPower              496mA
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        0
    bAlternateSetting       0
    bNumEndpoints           3
    bInterfaceClass       255 Vendor Specific Class
    bInterfaceSubClass    255 Vendor Specific Subclass
    bInterfaceProtocol      0
    iInterface              4 Network_Interface
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
        Transfer Type            Interrupt
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              11
        bMaxBurst               0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               3
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
Binary Object Store Descriptor:
bLength                 5
bDescriptorType        15
wTotalLength       0x0016
bNumDeviceCaps          2
USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000002
    HIRD Link Power Management (LPM) Supported
SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
    Device can operate at Full Speed (12Mbps)
    Device can operate at High Speed (480Mbps)
    Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   1
    Lowest fully-functional device speed is Full Speed (12Mbps)
    bU1DevExitLat           1 micro seconds
    bU2DevExitLat         101 micro seconds
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x000c
(Bus Powered)
U1 Enabled
U2 Enabled

...

Bus 001 Device 005: ID 8087:0a2b Intel Corp.
Device Descriptor:
bLength                18
bDescriptorType         1
bcdUSB               2.00
bDeviceClass          224 Wireless
bDeviceSubClass         1 Radio Frequency
bDeviceProtocol         1 Bluetooth
bMaxPacketSize0        64
idVendor           0x8087 Intel Corp.
idProduct          0x0a2b
bcdDevice            0.10
iManufacturer           0
iProduct                0
iSerial                 0
bNumConfigurations      1
Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x00b1
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
    Self Powered
    Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        0
    bAlternateSetting       0
    bNumEndpoints           3
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
        Transfer Type            Interrupt
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       0
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       1
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       2
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       3
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       4
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       5
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0001
Self Powered

ip address while not working:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
2: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 42:82:d6:31:e7:1f brd ff:ff:ff:ff:ff:ff
3: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 42:82:d6:31:f7:2f brd ff:ff:ff:ff:ff:ff
4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 42:82:d6:31:a9:3a brd ff:ff:ff:ff:ff:ff

ip address after unplugging / replugging and with working connection:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
2: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 42:82:d6:31:e7:1f brd ff:ff:ff:ff:ff:ff
3: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 42:82:d6:31:f7:2f brd ff:ff:ff:ff:ff:ff
5: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 42:82:d6:31:a9:3a brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.237/24 brd 192.168.0.255 scope global dynamic noprefixroute eth1
    valid_lft 296sec preferred_lft 296sec

lsusb -vvv once it is working again (after unplugging / replugging adapter):

Bus 004 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Device Descriptor:
bLength                18
bDescriptorType         1
bcdUSB               3.00
bDeviceClass          255 Vendor Specific Class
bDeviceSubClass       255 Vendor Specific Subclass
bDeviceProtocol         0
bMaxPacketSize0         9
idVendor           0x0b95 ASIX Electronics Corp.
idProduct          0x1790 AX88179 Gigabit Ethernet
bcdDevice            1.00
iManufacturer           1 ASIX Elec. Corp.
iProduct                2 AX88179
iSerial                 3
bNumConfigurations      1
Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0039
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
    (Bus Powered)
    Remote Wakeup
    MaxPower              496mA
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        0
    bAlternateSetting       0
    bNumEndpoints           3
    bInterfaceClass       255 Vendor Specific Class
    bInterfaceSubClass    255 Vendor Specific Subclass
    bInterfaceProtocol      0
    iInterface              4 Network_Interface
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
        Transfer Type            Interrupt
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              11
        bMaxBurst               0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               3
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
Binary Object Store Descriptor:
bLength                 5
bDescriptorType        15
wTotalLength       0x0016
bNumDeviceCaps          2
USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000002
    HIRD Link Power Management (LPM) Supported
SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
    Device can operate at Full Speed (12Mbps)
    Device can operate at High Speed (480Mbps)
    Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   1
    Lowest fully-functional device speed is Full Speed (12Mbps)
    bU1DevExitLat           1 micro seconds
    bU2DevExitLat         101 micro seconds
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x000c
(Bus Powered)
U1 Enabled
U2 Enabled

Bus 001 Device 005: ID 8087:0a2b Intel Corp.
Device Descriptor:
bLength                18
bDescriptorType         1
bcdUSB               2.00
bDeviceClass          224 Wireless
bDeviceSubClass         1 Radio Frequency
bDeviceProtocol         1 Bluetooth
bMaxPacketSize0        64
idVendor           0x8087 Intel Corp.
idProduct          0x0a2b
bcdDevice            0.10
iManufacturer           0
iProduct                0
iSerial                 0
bNumConfigurations      1
Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x00b1
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
    Self Powered
    Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        0
    bAlternateSetting       0
    bNumEndpoints           3
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
        Transfer Type            Interrupt
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
        Transfer Type            Bulk
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       0
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       1
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       2
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       3
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       4
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
    bLength                 9
    bDescriptorType         4
    bInterfaceNumber        1
    bAlternateSetting       5
    bNumEndpoints           2
    bInterfaceClass       224 Wireless
    bInterfaceSubClass      1 Radio Frequency
    bInterfaceProtocol      1 Bluetooth
    iInterface              0
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
    Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
        Transfer Type            Isochronous
        Synch Type               None
        Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0001
Self Powered

The journal output including transition from not working to working ((unplugged/replugged adapter) is too large to include directly in the question, even after I eliminated the obviously unrelated log entries. Please find it here: https://paste.ee/p/f5OFZ

BugBuddy
  • 618
  • 1
  • 10
  • 19
  • asix hw/drivers are known to be problematic. I have seen cases where the driver still claims you have connection when you have taken the cable out and/or that do not update the bytes transfered. They are cheap but very unreliable. If you are using a compiled module/driver given by the manufacturer, they seem a botched job of converting a driver from kernel 3 to kernel 4. If you are testing two asix adapters, it is not much of a test. – Rui F Ribeiro Aug 01 '18 at 22:22
  • @RuiFRibeiro I also saw the same problem with a Dell Thunderbolt 3 dock. The dock worked well except Ethernet connectivity was lost periodically. I can try a 3rd different Ethernet adapter, but having tried 2 already, I'm not prepared to blame this on asix. What else might it be? Thank you. – BugBuddy Aug 01 '18 at 22:23
  • I was looking at the wrong interface actually. Your diagnostics *seem* more a DHCP problem than a link level problem. – Rui F Ribeiro Aug 01 '18 at 22:26
  • OK, thanks. I did notice those DHCP messages but I wasn't sure exactly what they meant. Any ideas? BTW, I switched from a USB-Ethernet adapter to the manufacturer's proprietary "mini Ethernet" adapter and the problem went away without making any changes to the system configuration or the DHCP server config. So I believe the main problem is not DHCP but I would like to solve whatever you see wrong in regard to DHCP. Thank you. – BugBuddy Aug 02 '18 at 23:16
  • I'm seeing similar symptoms with an AX88179 adapter (UGREEN branded), with linux-5.10.11's ax88179_178a driver. Linux sees the link as up but the LEDs on the physical adapter are off and packets aren't delivered; same behaviour in terms of needing to be physically reset to come back. – p00ya Mar 14 '21 at 04:35

1 Answers1

6

I've been able to repro the same symptoms (UGREEN branded AX88179 gigabit ethernet adapter stops tx/rx of any packets, and eventually the lights go off, ip link commands aren't sufficient to get things working again). However I've been able to successfully reset the adapter from software using the USBDEVFS_RESET ioctl() syscall.

To send the ioctl() syscall you can use usbreset from usbutils in Debian, or the ioctl command-line tool from https://github.com/jerome-pouiller/ioctl.

To reset every AX88179 (which have the ID 0b95:1790) using usbreset, run:

sudo usbreset 0b95:1790

Alternatively, to use the ioctl utility:

% lsusb |grep AX88179
Bus 002 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet

% sudo /usr/local/bin/ioctl /dev/bus/usb/002/002 USBDEVFS_RESET
Decoded values: ioctl=0x00005514, direction=NONE, arg size=0 bytes, device number=0x55 ('U'), function number=20
Used values: ioctl=0x00005514, direction=NONE, arg size=0 bytes, device number=0x55 ('U'), function number=20
Returned 0

The lsusb command is to determine the Bus and Device IDs (002 and 002), which determines the file to send the ioctl (/dev/bus/usb/002/002). You need to use the /dev/bus/usb filesystem, the stuff in /sys/bus/usb won't help here.

This works for me on Debian Buster arm64, kernel 5.10.17-v8+.

p00ya
  • 161
  • 1
  • 4
  • I have the same issue, same WiFi chip (AX88179) and this reset-tip works on Debian 11 (Bullseye). Better than re-inserting the USB cable which would often fail with "device not accepting address NN, error -71". The problem however quickly comes back within 1-3minutes. I.e. it's not a workable solution for me. But still a good lead as the same dongle used to be much less glitchy (but still not 100%) before changing OS from Ubuntu 20.04. – Michael Ambrus Sep 17 '22 at 18:51