Kernel 5.10.29: Problems with Huawei ME906s

Torsten Hilbrich torsten.hilbrich at secunet.com
Mon May 17 08:41:12 UTC 2021


On 12.05.21 13:09, Torsten Hilbrich wrote:
...
> 2021-05-12 10:15:26.137 kernel: cdc_mbim 1-2:3.0: setting rx_max = 16384
> 2021-05-12 10:15:26.149 kernel: cdc_mbim 1-2:3.0: NDP will be placed at end of frame for this device.
> 2021-05-12 10:15:26.150 kernel: cdc_mbim 1-2:3.0: cdc-wdm0: USB WDM device
> 2021-05-12 10:15:26.150 kernel: cdc_mbim 1-2:3.0 wwan0: register 'cdc_mbim' at usb-0000:00:14.0-2, CDC MBIM, 9e:90:a9:6f:2d:31
> 2021-05-12 10:15:26.238 kernel: cdc_mbim 1-2:3.0 wwan0: unregister 'cdc_mbim' usb-0000:00:14.0-2, CDC MBIM
> 2021-05-12 10:15:29.405 kernel: cdc_mbim 1-2:3.0: setting rx_max = 16384
> 2021-05-12 10:15:29.411 kernel: cdc_mbim 1-2:3.0: NDP will be placed at end of frame for this device.
> 2021-05-12 10:15:29.413 kernel: cdc_mbim 1-2:3.0: cdc-wdm0: USB WDM device
> 2021-05-12 10:15:29.414 kernel: cdc_mbim 1-2:3.0 wwan0: register 'cdc_mbim' at usb-0000:00:14.0-2, CDC MBIM, 9e:90:a9:6f:2d:31
> 2021-05-12 10:15:29.464 kernel: cdc_mbim 1-2:3.0 wwan0: unregister 'cdc_mbim' usb-0000:00:14.0-2, CDC MBIM
> 2021-05-12 10:15:32.627 kernel: cdc_mbim 1-2:3.0: setting rx_max = 16384
> 2021-05-12 10:15:32.640 kernel: cdc_mbim 1-2:3.0: NDP will be placed at end of frame for this device.
> 2021-05-12 10:15:32.641 kernel: cdc_mbim 1-2:3.0: cdc-wdm0: USB WDM device
> 
...
> Are there any known regressions for this device in newer kernels?

I was able to identify the cause of the problem.

Based on the discussion started in <56D715C5.2080605 at secunet.com>
(Huawei me906s-158, March 2016) we had an udev rules in place to perform
the following actions:

- resetting the modem by writing 0 to bConfigurationValue
- waiting 3 seconds
- reconfiguring the modem by writing 3 to bConfigurationValue

This rule was executed when udev action != "remove" (so also on change
events).

When I run a "udevadm monitor kernel" while the driver is reprobing I
see a number of add, change, bind, unbind events. So it seems that the
timing for this events must have changed between the kernel versions to
cause problems in 5.10.29 (or some systemd-udevd behaviourial change
between versions 243 and 246).

I have modified the rule for this special device to trigger only when
the udev action is set to "add" and the problem vanished.

	Torsten


More information about the ModemManager-devel mailing list