fwupd error 'Pipe error [-9]' / 'ioctl error: Bad address [14]' when Genesys USB hub is connected

Bug #2044022 reported by Paride Legovini
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fwupd
Fix Released
Unknown
fwupd (Ubuntu)
Fix Released
Low
Unassigned

Bug Description

Running Noble with fwupd, 1.9.8-1, I can't successfully run fwupdmgr commands when my external usb-c monitor (a Lenovo ThinkVision) is plugged in. This is because the USB hub internal to the monitor makes fwupd fail this way (from the fwupd journal):

fwupd[7399]: 21:22:25.771 FuEngine failed to add device usb:01:00:03: failed to get static tool info from device: USB error on device 05e3:0610 : Pipe error [-9]

This happens e.g. when I run `fwupdmgr get-updates`, which fails as it doesn't get the information it needs from the daemon. If I unplug the external monitor it works fine.

The output of `lsusb v` for the problematic device follows.

---

Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 2.00
  bDeviceClass 9 Hub
  bDeviceSubClass 0
  bDeviceProtocol 2 TT per port
  bMaxPacketSize0 64
  idVendor 0x05e3 Genesys Logic, Inc.
  idProduct 0x0610 Hub
  bcdDevice 61.60
  iManufacturer 0
  iProduct 1 USB2.0 Hub
  iSerial 0
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 0x0029
    bNumInterfaces 1
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0xe0
      Self Powered
      Remote Wakeup
    MaxPower 100mA
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 1
      bInterfaceClass 9 Hub
      bInterfaceSubClass 0
      bInterfaceProtocol 1 Single TT
      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 0x0001 1x 1 bytes
        bInterval 12
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 1
      bNumEndpoints 1
      bInterfaceClass 9 Hub
      bInterfaceSubClass 0
      bInterfaceProtocol 2 TT per port
      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 0x0001 1x 1 bytes
        bInterval 12

Paride Legovini (paride)
description: updated
summary: - fwupd gets stuck/unresponsive with error: Pipe error [-9]
+ fwupd gets stuck/unresponsive with error 'Pipe error [-9]' when specific
+ USB hub is connected
Revision history for this message
Mario Limonciello (superm1) wrote (last edit ): Re: fwupd gets stuck/unresponsive with error 'Pipe error [-9]' when specific USB hub is connected

There was a bunch of regressions in 1.9.8 due to Mediatek plugin overzealously probing stuff it shouldn't.

1.9.9 should sync from debian soon. Please see if it still happens there.

If it does please provide output for

sudo fwupdtool get-devices -vv

Revision history for this message
Richard Hughes (richard-hughes) wrote :

I think filing an issue upstream https://github.com/fwupd/fwupd/issues would be a good idea, then the Genesys guys can have a look.

Revision history for this message
Paride Legovini (paride) wrote :

Thanks. I'll try 1.9.9-1 once it syncs, and if not fixed there I'll file an upstream bug.

summary: - fwupd gets stuck/unresponsive with error 'Pipe error [-9]' when specific
+ fwupd gets stuck/unresponsive with error 'Pipe error [-9]' when Genesys
USB hub is connected
Revision history for this message
Paride Legovini (paride) wrote : Re: fwupd gets stuck/unresponsive with error 'Pipe error [-9]' when Genesys USB hub is connected

With 1.9.9-1 (from noble-proposed) the behavior changed a bit: fwupd doesn't get stuck anymore, but I still getting errors related to that Genesys 05e3:0610 device. I'll file an upstream bug.

Paride Legovini (paride)
summary: - fwupd gets stuck/unresponsive with error 'Pipe error [-9]' when Genesys
- USB hub is connected
+ fwupd error 'Pipe error [-9]' / 'ioctl error: Bad address [14]' when
+ Genesys USB hub is connected
Changed in fwupd:
status: Unknown → New
Changed in fwupd (Ubuntu):
status: New → Triaged
importance: Undecided → Low
Revision history for this message
Mario Limonciello (superm1) wrote :

Issue will be fixed in fwupd 1.9.10.

Changed in fwupd (Ubuntu):
status: Triaged → Fix Committed
Changed in fwupd:
status: New → Fix Released
Revision history for this message
Paride Legovini (paride) wrote :

Thanks Mario for the upstream debugging work!

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package fwupd - 1.9.10-1

---------------
fwupd (1.9.10-1) unstable; urgency=medium

  * New upstream version (1.9.10)
  * Fixes scroll bars from fwupd-refresh (Closes: #1040245)
  * Stop advertising update support for certain unsupported genesys hubs
    (LP: #2044022)
  * Remove extra conffiles with the 1.9.10~ version instead.
    (Closes: #932617)
  * Fix FTBFS when udev.pc changes (Closes: #1057241)

 -- Mario Limonciello <email address hidden> Mon, 04 Dec 2023 08:58:30 -0600

Changed in fwupd (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.