libmbim-proxy using 100% CPU on a Dell Edge Gateway 3002

Bug #1851347 reported by Jesse Sung on 2019-11-05
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
HWE Next
Undecided
Jesse Sung
linux (Ubuntu)
Undecided
Jesse Sung
Xenial
Undecided
Jesse Sung

Bug Description

== Impact ==
A Dell Edge Gateway 3002 user reported that `top` reports around 100% CPU usage for the libmbim-proxy process. Seen in at least 40% of their devices at some point during the last 6 months. The CPU keeps high at ~100% days or weeks, but does return back to normal without a reboot. The LTE connectivity is seemingly still working as usual.

The issue starts after an EPIPE error in the syslogs: 'cdc_mbim 1-3:1.12: nonzero urb status received: -EPIPE'.

== Fix ==
8fec9355a968 USB: cdc-wdm: ignore -EPIPE from GetEncapsulatedResponse
This has been in mainline kernel since 4.14.

== Testcase ==
Connect to the LTE network and see if libmbim-proxy uses 100% after some point.

== Risk of Regression ==
Low, since
1. Already tested by original reporter and no issue found after more than a week (usually it fails twice in a week).
2. Ignoring -EPIPE is the default behavior after 4.14.

CVE References

Jesse Sung (wenchien) on 2019-11-05
Changed in linux (Ubuntu Xenial):
status: New → In Progress
assignee: nobody → Jesse Sung (wenchien)
Changed in linux (Ubuntu):
status: In Progress → Fix Released
tags: added: oem-priority originate-from-1839516 plano
Jesse Sung (wenchien) on 2019-11-05
Changed in hwe-next:
status: New → Fix Released
assignee: nobody → Jesse Sung (wenchien)
Changed in linux (Ubuntu):
status: Fix Released → In Progress
Changed in linux (Ubuntu Xenial):
status: In Progress → Fix Committed
Jesse Sung (wenchien) on 2019-11-13
Changed in linux (Ubuntu):
status: In Progress → Fix Committed

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-xenial' to 'verification-done-xenial'. If the problem still exists, change the tag 'verification-needed-xenial' to 'verification-failed-xenial'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-xenial
Sultan Alsawaf (kerneltoast) wrote :

Jesse, could you please verify that this is fixed in -proposed? Thanks.

Jesse Sung (wenchien) on 2019-11-20
tags: added: verification-done-xenial
removed: verification-needed-xenial
Launchpad Janitor (janitor) wrote :
Download full text (12.8 KiB)

This bug was fixed in the package linux - 4.4.0-170.199

---------------
linux (4.4.0-170.199) xenial; urgency=medium

  * xenial/linux: 4.4.0-170.199 -proposed tracker (LP: #1852306)

  * update ENA driver to version 2.1.0 (LP: #1850175)
    - net: ena: fix: set freed objects to NULL to avoid failing future allocations
    - net: ena: fix swapped parameters when calling
      ena_com_indirect_table_fill_entry
    - net: ena: fix: Free napi resources when ena_up() fails
    - net: ena: fix incorrect test of supported hash function
    - net: ena: fix return value of ena_com_config_llq_info()
    - net: ena: improve latency by disabling adaptive interrupt moderation by
      default
    - net: ena: fix ena_com_fill_hash_function() implementation
    - net: ena: add handling of llq max tx burst size
    - net: ena: ethtool: add extra properties retrieval via get_priv_flags
    - net: ena: replace free_tx/rx_ids union with single free_ids field in
      ena_ring
    - net: ena: arrange ena_probe() function variables in reverse christmas tree
    - net: ena: add newline at the end of pr_err prints
    - net: ena: allow automatic fallback to polling mode
    - net: ena: add support for changing max_header_size in LLQ mode
    - net: ena: optimise calculations for CQ doorbell
    - net: ena: add good checksum counter
    - net: ena: use dev_info_once instead of static variable
    - net: ena: add MAX_QUEUES_EXT get feature admin command
    - net: ena: enable negotiating larger Rx ring size
    - net: ena: make ethtool show correct current and max queue sizes
    - net: ena: allow queue allocation backoff when low on memory
    - net: ena: add ethtool function for changing io queue sizes
    - net: ena: remove inline keyword from functions in *.c
    - net: ena: update driver version from 2.0.3 to 2.1.0
    - net: ena: Fix bug where ring allocation backoff stopped too late
    - Revert "net: ena: ethtool: add extra properties retrieval via
      get_priv_flags"
    - net: ena: don't wake up tx queue when down
    - net: ena: clean up indentation issue

  * Bionic update: upstream stable patchset 2019-08-01 (LP: #1838700) // update
    ENA driver to version 2.1.0 (LP: #1850175)
    - net: ena: gcc 8: fix compilation warning

  * Skip frame when buffer overflow on UVC camera (LP: #1849871)
    - media: uvcvideo: Mark buffer error where overflow

  * CVE-2018-20784
    - sched/fair: Fix infinite loop in update_blocked_averages() by reverting
      a9e7f6544b9c
    - sched/fair: Fix hierarchical order in rq->leaf_cfs_rq_list
    - sched/fair: Add tmp_alone_branch assertion
    - sched/fair: Fix insertion in rq->leaf_cfs_rq_list
    - sched/fair: Optimize update_blocked_averages()
    - sched/fair: Fix O(nr_cgroups) in the load balancing path

  * Xenial update: 4.4.200 upstream stable release (LP: #1852110)
    - kbuild: add -fcf-protection=none when using retpoline flags
    - regulator: ti-abb: Fix timeout in ti_abb_wait_txdone/ti_abb_clear_all_txdone
    - regulator: pfuze100-regulator: Variable "val" in pfuze100_regulator_probe()
      could be uninitialized
    - ASoc: rockchip: i2s: Fix RPM imbalance
    - ARM: dts: logicpd-torpedo-som: Remove tw...

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

Other bug subscribers