← Back to team overview

kernel-packages team mailing list archive

[Bug 1039998] Re: perf top (linux-tools) cannot find debug info for some gstreamer plugins

 

Looks like `perf` doesn't understand a path /usr/lib/debug/.build-id/

See: https://gist.github.com/evverx/bd0a6748f3c6254d2021#perf-probe
Environment: https://gist.github.com/evverx/bd0a6748f3c6254d2021#environment

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1039998

Title:
  perf top (linux-tools) cannot find debug info for some gstreamer
  plugins

Status in linux package in Ubuntu:
  Confirmed

Bug description:
  When tracking down performance problems in a GStreamer app, I noticed
  that the "perf top" command cannot resolve symbols in most GStreamer
  plugins, even though the debug packages are installed. Whereas gdb has
  no problem finding the symbols.

  % sudo apt-get install --no-install-recommends linux-tools gstreamer0.10-tools gstreamer0.10-plugins-good
  % sudo apt-get install --no-install-recommends libc6-dbg libglib2.0-0-dbg libgstreamer0.10-0-dbg gstreamer0.10-plugins-good-dbg

  Launch pipeline:
  % gst-launch-0.10 filesrc location=/dev/zero \! audio/x-raw-int, rate=8000, channels=1 \! alawenc \! fakesink
  And then monitor with perf in another terminal:
  % sudo perf top

  The status bar displays:
    no symbols found in /usr/lib/x86_64-linux-gnu/gstreamer-0.10/libgstalaw.so, maybe install a debug package?

  However, gdb can successfully find the symbols for this library:

  % gdb /usr/lib/x86_64-linux-gnu/gstreamer-0.10/libgstalaw.so
  [...]
  Reading symbols from /usr/lib/x86_64-linux-gnu/gstreamer-0.10/libgstalaw.so...Reading symbols from /usr/lib/debug/.build-id/34/5c9aa83c5e63082d994b6cc1436a561abdeb32.debug...done.
  (gdb) break gst_alaw_enc_getcaps
  Breakpoint 1 at 0x1860: file alaw-encode.c, line 301.
  --- 
  AlsaDevices:
   total 0
   crw-rw---T 1 root audio 116,  1 Aug 22 12:45 seq
   crw-rw---T 1 root audio 116, 33 Aug 22 12:45 timer
  AplayDevices: Error: [Errno 2] No such file or directory
  ApportVersion: 2.0.1-0ubuntu12
  Architecture: amd64
  ArecordDevices: Error: [Errno 2] No such file or directory
  AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
  CRDA: Error: [Errno 2] No such file or directory
  DistroRelease: Ubuntu 12.04
  HibernationDevice: RESUME=UUID=8ee1fbdd-440b-4174-9215-0b1b4bfce230
  InstallationMedia: Ubuntu-Server 12.04 LTS "Precise Pangolin" - Release amd64 (20120424.1)
  IwConfig:
   lo        no wireless extensions.
   
   eth0      no wireless extensions.
  Lsusb: Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  MachineType: Bochs Bochs
  Package: linux (not installed)
  PciMultimedia:
   
  ProcEnviron:
   LANGUAGE=en_US:en
   TERM=xterm
   PATH=(custom, user)
   LANG=en_US.UTF-8
   SHELL=/usr/bin/zsh
  ProcFB: 0 EFI VGA
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-29-virtual root=UUID=45dc8a54-713d-4d80-8ed8-8cc100335e08 ro quiet
  ProcVersionSignature: Ubuntu 3.2.0-29.46-virtual 3.2.24
  RelatedPackageVersions:
   linux-restricted-modules-3.2.0-29-virtual N/A
   linux-backports-modules-3.2.0-29-virtual  N/A
   linux-firmware                            1.79
  RfKill: Error: [Errno 2] No such file or directory
  Tags:  precise
  Uname: Linux 3.2.0-29-virtual x86_64
  UpgradeStatus: No upgrade log present (probably fresh install)
  UserGroups:
   
  dmi.bios.date: 01/01/2007
  dmi.bios.vendor: Bochs
  dmi.bios.version: Bochs
  dmi.chassis.type: 1
  dmi.chassis.vendor: Bochs
  dmi.modalias: dmi:bvnBochs:bvrBochs:bd01/01/2007:svnBochs:pnBochs:pvr:cvnBochs:ct1:cvr:
  dmi.product.name: Bochs
  dmi.sys.vendor: Bochs

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