Hi Ludovic,

I'm getting the same problem with my Debian Testing.

I'll try to generate more logs related to libusb as explained in the bug
thread but here are some things I noticed:

I've a Yubikey Neo-n plugged constantly.

When the 100% problem arises, nothing special in pcscd logs, even with
-f -a -d
cf attached log.
And pcscd and Yubikey remain fully functional despite the 100%.

Now the interesting bits:

Without the yubikey inserted the problem never occurs.

With the yubikey inserted there are two cases:

1) works as normal, the problem never arises

2) sometimes when yubikey gets inserted or when pcscd service is
restarted I get the following error in syslog:

pcscd[26168]: 00000000 ifdhandler.c:144:CreateChannelByNameOrChannel()
failed
pcscd[26168]: 00000012 readerfactory.c:1097:RFInitializeReader() Open
Port 0x200000 Failed (usb:1050/0115:libudev:0:/dev/bus/usb/001/025)
pcscd[26168]: 00000002 readerfactory.c:372:RFAddReader() Yubico Yubikey
NEO U2F+CCID init failed.

At this point besides those lines in syslog, yubikey is functional and
CPU is ok *but* starting from this situation, whenever there will be a
change on another usb port, no matter what (inserting or removing
anything, even a simple USB hub) => CPU goes to 100%
Restarting pcscd brings CPU back to normal till another USB
insert/remove event.

Cheers
Phil


Package: pcscd
Version: 1.8.15-1

--- Please enter the report below this line. ---


--- System information. ---
Architecture: amd64
Kernel: Linux 4.5.0-rc4-amd64

Debian Release: stretch/sid
900 testing security.debian.org
900 testing ftp.be.debian.org
500 unstable ftp.be.debian.org
500 stable security.debian.org
500 stable ftp.be.debian.org
500 stable dl.google.com
500 debian-stretch apt.dockerproject.org
1 experimental httpredir.debian.org

--- Package information. ---
Package's Depends field is empty.

Package's Recommends field is empty.

Package's Suggests field is empty.



00000000 debuglog.c:289:DebugLogSetLevel() debug level=debug
00000025 utils.c:82:GetDaemonPid() Can't open /var/run/pcscd/pcscd.pid: No such file or directory
00000061 configfile.l:281:DBGetReaderListDir() Parsing conf directory: /etc/reader.conf.d
00000139 configfile.l:353:DBGetReaderList() Parsing conf file: /etc/reader.conf.d/libccidtwin
00000182 configfile.l:315:DBGetReaderListDir() Skipping non regular file: .
00000003 configfile.l:315:DBGetReaderListDir() Skipping non regular file: ..
00000004 pcscdaemon.c:567:main() pcsc-lite 1.8.15 daemon ready.
00003391 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001
00000062 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001
00000070 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0C45, PID: 0x6713, path: /dev/bus/usb/001/008
00000063 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0C45, PID: 0x6713, path: /dev/bus/usb/001/008
00000059 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001
00000063 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1050, PID: 0x0115, path: /dev/bus/usb/001/003
00000004 hotplug_libudev.c:433:HPAddDevice() Adding USB device: Yubico Yubikey NEO U2F+CCID
00000022 readerfactory.c:1066:RFInitializeReader() Attempting startup of Yubico Yubikey NEO U2F+CCID 00 00 using /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Linux/libccid.so
00000690 readerfactory.c:951:RFBindFunctions() Loading IFD Handler 3.0
00000104 ifdhandler.c:1950:init_driver() Driver version: 1.4.22
00000357 ifdhandler.c:1967:init_driver() LogLevel: 0x0003
00000003 ifdhandler.c:1978:init_driver() DriverOptions: 0x0000
00000084 ifdhandler.c:110:CreateChannelByNameOrChannel() Lun: 0, device: usb:1050/0115:libudev:0:/dev/bus/usb/001/003
00000010 ccid_usb.c:284:OpenUSBByName() Using: /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist
00000356 ccid_usb.c:302:OpenUSBByName() ifdManufacturerString: Ludovic Rousseau (ludovic.rouss...@free.fr)
00000003 ccid_usb.c:303:OpenUSBByName() ifdProductString: Generic CCID driver
00000001 ccid_usb.c:304:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version.
00001842 ccid_usb.c:587:OpenUSBByName() Found interface 1 but expecting 0
00000003 ccid_usb.c:589:OpenUSBByName() Wrong interface for USB device 1/3. Checking next one.
00000019 ccid_usb.c:729:OpenUSBByName() Device not found?
00000002 ifdhandler.c:144:CreateChannelByNameOrChannel() failed
00000002 readerfactory.c:1097:RFInitializeReader() Open Port 0x200000 Failed (usb:1050/0115:libudev:0:/dev/bus/usb/001/003)
00000002 readerfactory.c:372:RFAddReader() Yubico Yubikey NEO U2F+CCID init failed.
00000002 readerfactory.c:605:RFRemoveReader() UnrefReader() count was: 1
00000002 readerfactory.c:1117:RFUnInitializeReader() Attempting shutdown of Yubico Yubikey NEO U2F+CCID 00 00.
00000001 readerfactory.c:988:RFUnloadReader() Unloading reader driver.
00000093 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1050, PID: 0x0115, path: /dev/bus/usb/001/003
00000004 hotplug_libudev.c:433:HPAddDevice() Adding USB device: Yubico Yubikey NEO U2F+CCID
00000019 readerfactory.c:1066:RFInitializeReader() Attempting startup of Yubico Yubikey NEO U2F+CCID 00 00 using /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Linux/libccid.so
00000072 readerfactory.c:951:RFBindFunctions() Loading IFD Handler 3.0
00000012 ifdhandler.c:1950:init_driver() Driver version: 1.4.22
00000365 ifdhandler.c:1967:init_driver() LogLevel: 0x0003
00000003 ifdhandler.c:1978:init_driver() DriverOptions: 0x0000
00000102 ifdhandler.c:110:CreateChannelByNameOrChannel() Lun: 0, device: usb:1050/0115:libudev:1:/dev/bus/usb/001/003
00000008 ccid_usb.c:284:OpenUSBByName() Using: /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist
00000368 ccid_usb.c:302:OpenUSBByName() ifdManufacturerString: Ludovic Rousseau (ludovic.rouss...@free.fr)
00000002 ccid_usb.c:303:OpenUSBByName() ifdProductString: Generic CCID driver
00000002 ccid_usb.c:304:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version.
00001813 ccid_usb.c:609:OpenUSBByName() Found Vendor/Product: 1050/0115 (Yubico Yubikey NEO U2F+CCID)
00000003 ccid_usb.c:611:OpenUSBByName() Using USB bus/device: 1/3
00000002 ccid_usb.c:663:OpenUSBByName() bNumDataRatesSupported is 0
00025371 ifdhandler.c:376:IFDHGetCapabilities() tag: 0xFB3, usb:1050/0115:libudev:1:/dev/bus/usb/001/003 (lun: 0)
00000014 readerfactory.c:392:RFAddReader() Using the reader polling thread
00000214 ifdhandler.c:376:IFDHGetCapabilities() tag: 0xFAE, usb:1050/0115:libudev:1:/dev/bus/usb/001/003 (lun: 0)
00000009 ifdhandler.c:467:IFDHGetCapabilities() Reader supports 1 slot(s)
00000304 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001
00000121 ifdhandler.c:1143:IFDHPowerICC() action: PowerUp, usb:1050/0115:libudev:1:/dev/bus/usb/001/003 (lun: 0)
00000029 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0A5C, PID: 0x6410, path: /dev/bus/usb/001/005
00000133 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0A5C, PID: 0x6410, path: /dev/bus/usb/001/005
00000132 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0A5C, PID: 0x6410, path: /dev/bus/usb/001/005
00000131 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0A5C, PID: 0x6410, path: /dev/bus/usb/001/005
00000123 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001
00000129 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x04F3, PID: 0x21D5, path: /dev/bus/usb/001/007
00000193 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0003, path: /dev/bus/usb/002/001
00000057 readerfactory.c:1407:RFWaitForReaderInit() Waiting init for reader: Yubico Yubikey NEO U2F+CCID 00 00
00006056 eventhandler.c:286:EHStatusHandlerThread() powerState: POWER_STATE_POWERED
00000031 Card ATR: 3B FC 13 00 00 81 31 FE 15 59 75 62 69 6B 65 79 4E 45 4F 72 33 E1 
05000619 ifdhandler.c:1143:IFDHPowerICC() action: PowerDown, usb:1050/0115:libudev:1:/dev/bus/usb/001/003 (lun: 0)
00000157 eventhandler.c:479:EHStatusHandlerThread() powerState: POWER_STATE_UNPOWERED
99999999 hotplug_libudev.c:648:HPEstablishUSBNotifications() USB Device add
00000340 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x2109, PID: 0x0812, path: /dev/bus/usb/002/003
00009683 hotplug_libudev.c:648:HPEstablishUSBNotifications() USB Device add
00000108 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x2109, PID: 0x2812, path: /dev/bus/usb/001/013
00590773 hotplug_libudev.c:648:HPEstablishUSBNotifications() USB Device add
00000089 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x18D1, PID: 0x4EE2, path: /dev/bus/usb/001/014
01003200 hotplug_libudev.c:648:HPEstablishUSBNotifications() USB Device add
00000119 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x0CF3, PID: 0x9271, path: /dev/bus/usb/001/015
00000052 hotplug_libudev.c:648:HPEstablishUSBNotifications() USB Device add
00000207 hotplug_libudev.c:294:get_driver() Looking for a driver for VID: 0x18D1, PID: 0x4EE2, path: /dev/bus/usb/001/014
40736917 winscard_msg_srv.c:251:ProcessEventsServer() Common channel packet arrival
00000047 winscard_msg_srv.c:263:ProcessEventsServer() ProcessCommonChannelRequest detects: 18
00000002 pcscdaemon.c:132:SVCServiceRunLoop() A new context thread creation is requested: 18
00000067 winscard_svc.c:329:ContextThread() Authorized PC/SC client
00000002 winscard_svc.c:333:ContextThread() Thread is started: dwClientID=18, threadContext @0x1088cf0
00000005 winscard_svc.c:351:ContextThread() Received command: CMD_VERSION from client 18
00000002 winscard_svc.c:363:ContextThread() Client is protocol version 4:3
00000001 winscard_svc.c:383:ContextThread() CMD_VERSION rv=0x0 for client 18
00000032 winscard_svc.c:351:ContextThread() Received command: ESTABLISH_CONTEXT from client 18
00000006 winscard.c:213:SCardEstablishContext() Establishing Context: 0x2CC46595
00000001 winscard_svc.c:444:ContextThread() ESTABLISH_CONTEXT rv=0x0 for client 18
00000063 winscard_svc.c:351:ContextThread() Received command: CMD_GET_READERS_STATE from client 18
00000038 winscard_svc.c:351:ContextThread() Received command: CMD_WAIT_READER_STATE_CHANGE from client 18
00000011 winscard_svc.c:351:ContextThread() Received command: CMD_STOP_WAITING_READER_STATE_CHANGE from client 18
00000002 winscard_svc.c:425:ContextThread() CMD_STOP_WAITING_READER_STATE_CHANGE rv=0x0 for client 18
00000009 winscard_svc.c:351:ContextThread() Received command: CMD_GET_READERS_STATE from client 18
00000028 winscard_svc.c:351:ContextThread() Received command: CMD_GET_READERS_STATE from client 18
00000027 winscard_svc.c:351:ContextThread() Received command: CMD_GET_READERS_STATE from client 18
00000013 winscard_svc.c:351:ContextThread() Received command: CMD_GET_READERS_STATE from client 18
00031271 winscard_svc.c:351:ContextThread() Received command: CMD_GET_READERS_STATE from client 18
00000140 winscard_svc.c:351:ContextThread() Received command: CMD_WAIT_READER_STATE_CHANGE from client 18

Reply via email to