Bug 1351106

Summary: symbol lookup error: /usr/libexec/qemu-kvm: undefined symbol: libusb_get_port_numbers
Product: Red Hat Enterprise Linux 7 Reporter: zhoujunqin <juzhou>
Component: qemu-kvmAssignee: Miroslav Rezanina <mrezanin>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.3CC: chayang, huding, juzhang, knoel, lcheng, mxie, mzhan, pzhang, rbalakri, rjones, tzheng, virt-maint, xiaodwan, yanyang, yduan
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-1.5.3-120.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-03 20:01:43 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:

Description zhoujunqin 2016-06-29 09:29:04 UTC
Description of problem:
After i update qemu-kvm to qemu-kvm-1.5.3-116.el7.x86_64
When run '/usr/libexec/qemu-kvm' meet following error
  /usr/libexec/qemu-kvm: symbol lookup error: /usr/libexec/qemu-kvm: undefined symbol: libusb_get_port_numbers

Version-Release number of selected component (if applicable):
qemu-kvm-tools-1.5.3-116.el7.x86_64
qemu-kvm-common-1.5.3-116.el7.x86_64
qemu-kvm-debuginfo-1.5.3-116.el7.x86_64
qemu-kvm-1.5.3-116.el7.x86_64
qemu-img-1.5.3-116.el7.x86_64
libusb-0.1.4-3.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Update my host qemu-kvm to latest one:

# yum update http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-img-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-common-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-tools-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-debuginfo-1.5.3-116.el7.x86_64.rpm -y
...

2. After updating finish, run 
# /usr/libexec/qemu-kvm --help
/usr/libexec/qemu-kvm: symbol lookup error: /usr/libexec/qemu-kvm: undefined symbol: libusb_get_port_numbers

3.Debug and find package 'libusbx' need higher version, after update it to 
libusbx-1.0.20-1.el7.x86_64, it works well.
# /usr/libexec/qemu-kvm --help
QEMU emulator version 1.5.3 (qemu-kvm-1.5.3-116.el7), Copyright (c) 2003-2008 Fabrice Bellard
....

Actual results:
As above.
No error prompt when i update qemu-kvm package, such as
Requires:  libusbx-1.0.20-1.el7.x86_64 
Installed: libusbx-1.0.15-4.el7.x86_64

So it led to '/usr/libexec/qemu-kvm' not works.

Expected results:
Should add 'libusbx' to dependence of qemu-kvm package.

Additional info:

Comment 1 Richard W.M. Jones 2016-06-29 10:34:32 UTC
Seems to need:

 Requires: libusbx >= [some version]

in qemu spec file.

Can be worked around by simply upgrading to the later version of libusbx.

Comment 3 yangyang 2016-07-13 02:37:10 UTC
I have the same problem when upgrading qemu-kvm-rhev to qemu-kvm-rhev-2.6.0-12.el7.x86_64.

Comment 4 Miroslav Rezanina 2016-07-29 05:41:02 UTC
Fix included in qemu-kvm-1.5.3-120.el7

Comment 6 yduan 2016-09-08 08:44:16 UTC
Reproduced with qemu-kvm-1.5.3-116.el7.x86_64 and verified with qemu-kvm-1.5.3-122.el7.x86_64.

*************************************************************
Version-Release number of selected component (if applicable):
libusbx-1.0.15-4.el7.x86_64
qemu-kvm-1.5.3-115.el7.x86_64

Steps to verify:
1. Update host qemu-kvm to qemu-kvm-1.5.3-116.el7.x86_64:

# yum update http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-img-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-common-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-tools-1.5.3-116.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/116.el7/x86_64/qemu-kvm-debuginfo-1.5.3-116.el7.x86_64.rpm -y
...

2. After updating finish, run 

# rpm -q qemu-kvm
qemu-kvm-1.5.3-116.el7.x86_64
# rpm -q libusbx
libusbx-1.0.15-4.el7.x86_64
# /usr/libexec/qemu-kvm -h
/usr/libexec/qemu-kvm: symbol lookup error: /usr/libexec/qemu-kvm: undefined symbol: libusb_get_port_numbers

3. Update host qemu-kvm to qemu-kvm-1.5.3-122.el7.x86_64:

# yum update http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/122.el7/x86_64/qemu-img-1.5.3-122.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/122.el7/x86_64/qemu-kvm-1.5.3-122.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/122.el7/x86_64/qemu-kvm-common-1.5.3-122.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/122.el7/x86_64/qemu-kvm-tools-1.5.3-122.el7.x86_64.rpm http://download.eng.bos.redhat.com/brewroot/packages/qemu-kvm/1.5.3/122.el7/x86_64/qemu-kvm-debuginfo-1.5.3-122.el7.x86_64.rpm -y
......
--> Processing Dependency: libusbx >= 1.0.19 for package: 10:qemu-kvm-1.5.3-122.el7.x86_64
......
---> Package libusbx.x86_64 0:1.0.15-4.el7 will be updated
---> Package libusbx.x86_64 0:1.0.20-1.el7 will be an update
......
Dependency Updated:
  libusbx.x86_64 0:1.0.20-1.el7                                                                Complete!

4. After updating finish, run 
# rpm -q qemu-kvm
qemu-kvm-1.5.3-122.el7.x86_64
# rpm -q libusbx
libusbx-1.0.20-1.el7.x86_64
# /usr/libexec/qemu-kvm -h
QEMU emulator version 1.5.3 (qemu-kvm-1.5.3-122.el7), Copyright (c) 2003-2008 Fabrice Bellard
......
*************************************************************

So this issue has been fixed already,change status to verified.

Comment 8 errata-xmlrpc 2016-11-03 20:01:43 UTC
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/RHSA-2016-2585.html