← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1551897] Re: Excessive CPU utilization

 

This bug was fixed in the package ccid - 1.4.22-1ubuntu0.1

---------------
ccid (1.4.22-1ubuntu0.1) xenial-proposed; urgency=low

  * debian/patches/close-libusb-on-failure.patch: Make sure
    close_libusb_if_needed is called even if no device was opened,
    otherwise it triggers a segfault. (LP: #1551897)

 -- Evan Broder <evan@xxxxxxxxxxx>  Mon, 09 May 2016 12:28:36 -0700

** Changed in: ccid (Ubuntu Xenial)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1551897

Title:
  Excessive CPU utilization

Status in ccid package in Ubuntu:
  Fix Released
Status in pcsc-lite package in Ubuntu:
  Invalid
Status in ccid source package in Xenial:
  Fix Released
Status in pcsc-lite source package in Xenial:
  Invalid
Status in pcsc-lite package in Debian:
  Fix Released

Bug description:
  [Impact]

  When hotplugging a composite USB device that expose multiple
  interfaces (such as a Yubikey NEO or Yubikey 4), libccid does not
  correctly de-initialize the USB library when it skips over the non-
  CCID interface.

  This subsequently results in pcscd (or, presumably, anything that
  loads libccid, though I don't think anything else does) either using
  100% CPU or segfaulting when the device is unplugged.

  This seems worthy of an SRU as it is an easily reproducible bug with a
  simple, targeted fix.

  [Test Case]

  1. Make sure pcscd is running (sudo systemctl start pcscd; possibly sudo systemctl restart pcscd if a potentially fixed package has just been installed)
  2. Plug and then unplug a composite USB device that includes a CCID interface (such as a Yubikey NEO)
  3. Observe that pcscd has crashed with a segfault (sudo systemctl status pcscd)

  [Regression Potential]

  The patch is quite narrow, and thus the potential for regression
  should be limited. The new code adds calls to close_libusb_if_needed,
  which is already written to be fairly conservative.

  The worst case here is likely an unexpected call to libusb_exit, which
  could cause libusb to get into an inconsistent state. However, in
  practice the call seems quite safe, and the likelihood of regression
  low.

  ======
  Original bug description:

  In xenial, pcscd CPU utilization occasionally goes haywire:

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
  27404 root      20   0  384264   4992   2228 S 100.3  0.0  75:39.03 /usr/sbin/pcscd --foreground --auto-exit

  I get this about once a day since installing xenial. I can't quite
  connect it to any specific event on the system, it just seems to
  happen sporadically -- fan turns on, I run top, and there it is again.

  Never had this issue on same hardware incl. smartcard with trusty.

  I wonder if it might be this? https://bugs.debian.org/cgi-
  bin/bugreport.cgi?bug=718473

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ccid/+bug/1551897/+subscriptions