Bug 1243731
| Summary: | smart card emulation doesn't work with USB3 (nec-xhci) controller | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Gerd Hoffmann <kraxel> |
| Component: | qemu-kvm | Assignee: | Gerd Hoffmann <kraxel> |
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> |
| Severity: | medium | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 7.2 | CC: | areis, djasa, hhuang, huding, juzhang, kraxel, mrezanin, pzhang, rbalakri, sharpwiner, spice-qe-bugs, virt-bugs, virt-maint, xfu, yama |
| Target Milestone: | rc | ||
| Target Release: | 7.2 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | qemu-kvm-1.5.3-99.el7 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | 1211970 | Environment: | |
| Last Closed: | 2015-11-19 05:11:29 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | 1211970 | ||
| Bug Blocks: | |||
|
Description
Gerd Hoffmann
2015-07-16 07:39:01 UTC
posted. Fix included in qemu-kvm-1.5.3-99.el7 reproduce the issue: host info: 3.10.0-302.el7.x86_64 qemu-kvm-1.5.3-86.el7.x86_64 steps: 1.boot up a rhel7.2 guest with smartcard controller and USB3 controller: -device nec-usb-xhci -chardev spicevmc,name=smartcard,id=ccid -device usb-ccid -device ccid-card-passthru,chardev=ccid 2.in both host and guest #yum groupinstall "smart card support" #yum remove '*openct*' #service pcscd start 3.plug in the reader before you run remote-viewer on host. remote-viewer --spice-smartcard spice://$IP:7000 4. open Smart Card Manager application in guest actual results: Smart Card Manager application can not find the samrt card in guest. verify the issue: host info: 3.10.0-302.el7.x86_64 qemu-kvm-1.5.3-100.el7.x86_64 steps: the same as above actual results: Smart Card Manager application can find the samrt card in guest. Verify this issue from libvirt :
verify version:
libvirt-1.2.17-5.el7.x86_64
qemu-kvm-1.5.3-101.el7.x86_64
verify steps:
1.prepare env
both host and guest :
# yum groupinstall "smart card support"
# service pcscd start
Redirecting to /bin/systemctl start pcscd.service
Plug physical smart card to host .
check in host :
Application ---> SystemTools ---> Smart Card Manager
2.define and start guest with following XML configuration.
#virsh dumpxml r708
usb3.0 controller:
<controller type='usb' index='0' model='nec-xhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</controller>
ccid controller :
<controller type='ccid' index='0'>
<alias name='ccid0'/>
</controller>
smart card passthrough :
<smartcard mode='passthrough' type='spicevmc'>
<alias name='smartcard0'/>
<address type='ccid' controller='0' slot='0'/>
</smartcard>
spice graphic:
<graphics type='spice' autoport='yes' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
2.1 check qemu cli, make sure guest's qemu cli like following :
-device nec-usb-xhci,id=usb,bus=pci.0,addr=0x6
-device usb-ccid,id=ccid0
-chardev spicevmc,id=charsmartcard0,name=smartcard
-device ccid-card-passthru,chardev=charsmartcard0,id=smartcard0,bus=ccid0.0
3.start guest to check
#virsh start r708
#virsh domdisplay r708
3.2 using remote-viewer to check, must with "--spice-smartcard"
# remote-viewer --spice-smartcard spice://$host-IP:5901
check in guest :
Application ---> SystemTools ---> Smart Card Manager
smartcard enrolled.
According to comment5 and commnet6, set this issue as verified. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-2213.html |