perf broken on 4.11.0-9-generic (artful): /usr/lib/linux-tools/4.11.0-9-generic/perf: error while loading shared libraries: libbfd-2.28-system.so: cannot open shared object file: No such file or directory

Bug #1702056 reported by Trent Lloyd
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
binutils (Ubuntu)
Invalid
High
Unassigned
linux (Ubuntu)
Fix Released
High
Unassigned

Bug Description

I am unable to launch perf on 4.11.0-9-generic (artful) running on artful-proposed

/usr/lib/linux-tools/4.11.0-9-generic/perf: error while loading shared libraries: libbfd-2.28-system.so: cannot open shared object file: No such file or directory

It seems this library is provided by binutils, however the symlink doesn't exist like it does on my xenial system for comparison.

lathiat@ubuntu:~$ dpkg -L binutils|grep bfd|grep so
/usr/lib/x86_64-linux-gnu/libbfd-2.28.51-system.20170627.so

lathiat@ubuntu:~$ ls /usr/lib/x86_64-linux-gnu/*libbfd*
/usr/lib/x86_64-linux-gnu/libbfd-2.28.51-powerpc.20170627.so /usr/lib/x86_64-linux-gnu/libbfd-2.28.51-system.20170627.so

On xenial:
root@hyper:~# ls /usr/lib/x86_64-linux-gnu/*libbfd*
/usr/lib/x86_64-linux-gnu/libbfd-2.26.1-system.so /usr/lib/x86_64-linux-gnu/libbfd.a
/usr/lib/x86_64-linux-gnu/libbfd-2.26-system.so /usr/lib/x86_64-linux-gnu/libbfd.so

Not clear to me where the bug lies here, so starting with the 'perf' binary by way of the kernel package. But may be an issue with something else. I did notice quickly running 'ldd' in /usr/bin that it seems other files are linking against the above so directly.
---
ApportVersion: 2.20.5-0ubuntu5
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: lathiat 4190 F.... pulseaudio
 /dev/snd/controlC3: lathiat 4190 F.... pulseaudio
 /dev/snd/controlC0: lathiat 4190 F.... pulseaudio
 /dev/snd/controlC2: lathiat 4190 F.... pulseaudio
CurrentDesktop: GNOME
DistroRelease: Ubuntu 17.10
EcryptfsInUse: Yes
MachineType: Gigabyte Technology Co., Ltd. Z97X-Gaming G1 WIFI-BK
NonfreeKernelModules: zfs zunicode zavl zcommon znvpair
Package: linux (not installed)
ProcFB:
 0 radeondrmfb
 1 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/root@/boot/vmlinuz-4.11.0-9-generic root=ZFS=hostname/root ro
ProcVersionSignature: Ubuntu 4.11.0-9.14-generic 4.11.7
RelatedPackageVersions:
 linux-restricted-modules-4.11.0-9-generic N/A
 linux-backports-modules-4.11.0-9-generic N/A
 linux-firmware 1.167
Tags: artful
Uname: Linux 4.11.0-9-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dialout dip libvirt lxd plugdev sudo wireshark
_MarkForUpload: True
dmi.bios.date: 04/21/2015
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: F7
dmi.board.asset.tag: To be filled by O.E.M.
dmi.board.name: Z97X-Gaming G1 WIFI-BK
dmi.board.vendor: Gigabyte Technology Co., Ltd.
dmi.board.version: x.x
dmi.chassis.asset.tag: To Be Filled By O.E.M.
dmi.chassis.type: 3
dmi.chassis.vendor: Gigabyte Technology Co., Ltd.
dmi.chassis.version: To Be Filled By O.E.M.
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrF7:bd04/21/2015:svnGigabyteTechnologyCo.,Ltd.:pnZ97X-GamingG1WIFI-BK:pvrTobefilledbyO.E.M.:rvnGigabyteTechnologyCo.,Ltd.:rnZ97X-GamingG1WIFI-BK:rvrx.x:cvnGigabyteTechnologyCo.,Ltd.:ct3:cvrToBeFilledByO.E.M.:
dmi.product.name: Z97X-Gaming G1 WIFI-BK
dmi.product.version: To be filled by O.E.M.
dmi.sys.vendor: Gigabyte Technology Co., Ltd.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1702056

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: artful
Revision history for this message
Trent Lloyd (lathiat) wrote :

lathiat@ubuntu:~$ apt-cache policy binutils
binutils:
  Installed: 2.28.51.20170627-1ubuntu1
  Candidate: 2.28.51.20170627-1ubuntu1
  Version table:
 *** 2.28.51.20170627-1ubuntu1 500
        500 http://mirror.tcc.wa.edu.au/ubuntu artful-proposed/main amd64 Packages
        100 /var/lib/dpkg/status
     2.28-6ubuntu1 500
        500 http://mirror.tcc.wa.edu.au/ubuntu artful/main amd64 Packages

lathiat@ubuntu:~$ apt-cache policy linux-tools-4.11.0-9-generic
linux-tools-4.11.0-9-generic:
  Installed: 4.11.0-9.14
  Candidate: 4.11.0-9.14
  Version table:
 *** 4.11.0-9.14 100
        100 /var/lib/dpkg/status

Revision history for this message
Colin Ian King (colin-king) wrote :

I've got the same issue too with artful

Changed in linux (Ubuntu):
importance: Undecided → Medium
importance: Medium → High
Revision history for this message
Colin Ian King (colin-king) wrote :

There seems to be a missing symlink in /usr/lib/x86_64-linux-gnu

cd /usr/lib/x86_64-linux-gnu
sudo ln -s libbfd-2.28.51-system.20170627.so libbfd-2.28-system.so

and that allows perf to run

Revision history for this message
Trent Lloyd (lathiat) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Trent Lloyd (lathiat) wrote : CRDA.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : IwConfig.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : JournalErrors.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : Lspci.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : Lsusb.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : ProcEnviron.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : ProcModules.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : PulseList.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : RfKill.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : UdevDb.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote : WifiSyslog.txt

apport information

Revision history for this message
Trent Lloyd (lathiat) wrote :

Doing a quick google, it seems third party binaries can get linked against this shared library as well possibly. Ran apport-collect for the extra logs; and both today's binutils and kernel upgrade haven't fixed it.

Thinking we might need to propose for affecting binutils?

Changed in binutils (Ubuntu):
status: New → Confirmed
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Trent Lloyd (lathiat)
Changed in binutils (Ubuntu):
importance: Undecided → High
Revision history for this message
Trent Lloyd (lathiat) wrote :

I rebuilt both binutils and linux-4.11.0-11 locally to see if anything changed.

binutils still has the same libbfd-2.28.90-system.20170718.so soname in the package

however perf in linux-tools is now linked against the new soname. So a rebuild may solve it however I am not entirely sure if this soname change made sense or not. I'm not familiar enough with how it works.. Building the current Debian version (2.28-6) renders libbfd-2.28-system.so

lathiat@ubuntu:/src/z$ ldd ./usr/lib/linux-tools-4.11.0-11/perf|grep bfd
 libbfd-2.28.90-system.20170718.so => /usr/lib/x86_64-linux-gnu/libbfd-2.28.90-system.20170718.so (0x00007fd09cbbf000)

lathiat@ubuntu:~$ ldd /usr/lib/linux-tools-4.11.0-11/perf |grep bfd
 libbfd-2.28-system.so => not found

Revision history for this message
Trent Lloyd (lathiat) wrote :

New binutils upload today of 2.29, which conflicts with linux-tools as it turns out it Depends binutils (>= 2.28), binutils (<< 2.29)

Revision history for this message
Trent Lloyd (lathiat) wrote :

Same problem with the new 4.11.0-12 upload, i'm assuming since binutils is still in -proposed it wasn't built against?

 linux-tools-4.11.0-12 : Depends: binutils (< 2.29) but 2.29-2ubuntu1 is to be installed

Revision history for this message
Matthias Klose (doko) wrote :

please use -proposed on your own risk. it's the area where packages stabilize. The kernel should always build with the proposed pocket enabled.

Changed in binutils (Ubuntu):
status: Confirmed → Invalid
Revision history for this message
Trent Lloyd (lathiat) wrote :

This is resolved now.

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Chris West (faux) wrote :

I have "reopened" this bug as: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1718897 , as it still fails for me (a month later).

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.