[Pkg-phototools-devel] Bug#727220: just crashes in libusb

Yuri D'Elia yuri.delia at eurac.edu
Wed Oct 23 14:27:49 UTC 2013


Package: gphoto2
Version: 2.4.14-1
Severity: normal

I cannot use gphoto2 in unstable. Everything I do results in a crash.

$ gphoto2 --list-ports 
Devices found: 10
Path                             Description
--------------------------------------------------------------
ptpip:                           PTP/IP Connection               
serial:/dev/ttyS0                Serial Port 0                   
serial:/dev/ttyS1                Serial Port 1                   
serial:/dev/ttyS2                Serial Port 2                   
serial:/dev/ttyS3                Serial Port 3                   
usb:004,003                      Universal Serial Bus            
usb:003,004                      Universal Serial Bus            
usb:003,003                      Universal Serial Bus            
usb:001,008                      Universal Serial Bus            

$ lsusb -s 1:8
Bus 001 Device 008: ID 04a9:3245 Canon, Inc. PowerShot SX240 HS

(watch out for huge libusbx noise following)

$ gphoto2 --port usb:001,008 -L
libusbx: debug [libusb_init] libusbx v1.0.17.10830                             
libusbx: debug [find_usbfs_path] found usbfs at /dev/bus/usb
libusbx: debug [op_init] bulk continuation flag supported
libusbx: debug [op_init] zero length packet flag supported
libusbx: debug [op_init] sysfs can relate devices
libusbx: debug [op_init] sysfs has complete descriptors
libusbx: debug [linux_get_device_address] getting address for device: usb1 detached: 0
libusbx: debug [linux_get_device_address] scan usb1
libusbx: debug [linux_get_device_address] bus=1 dev=1
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 1 session_id 257
libusbx: debug [linux_enumerate_device] allocating new device for 1/1 (session 257)
libusbx: debug [linux_get_device_address] getting address for device: 1-2 detached: 0
libusbx: debug [linux_get_device_address] scan 1-2
libusbx: debug [linux_get_device_address] bus=1 dev=8
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 8 session_id 264
libusbx: debug [linux_enumerate_device] allocating new device for 1/8 (session 264)
libusbx: debug [linux_get_parent_info] Dev 0x10a0f90 (1-2) has parent 0x10a0ed0 (usb1) port 2
libusbx: debug [linux_get_device_address] getting address for device: 1-3 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3
libusbx: debug [linux_get_device_address] bus=1 dev=2
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 2 session_id 258
libusbx: debug [linux_enumerate_device] allocating new device for 1/2 (session 258)
libusbx: debug [linux_get_parent_info] Dev 0x10a1050 (1-3) has parent 0x10a0ed0 (usb1) port 3
libusbx: debug [linux_get_device_address] getting address for device: 1-3.1 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3.1
libusbx: debug [linux_get_device_address] bus=1 dev=3
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 3 session_id 259
libusbx: debug [linux_enumerate_device] allocating new device for 1/3 (session 259)
libusbx: debug [linux_get_parent_info] Dev 0x10a1a10 (1-3.1) has parent 0x10a1050 (1-3) port 1
libusbx: debug [linux_get_device_address] getting address for device: 1-3.1.2 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3.1.2
libusbx: debug [linux_get_device_address] bus=1 dev=5
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 5 session_id 261
libusbx: debug [linux_enumerate_device] allocating new device for 1/5 (session 261)
libusbx: debug [linux_get_parent_info] Dev 0x10a1ad0 (1-3.1.2) has parent 0x10a1a10 (1-3.1) port 2
libusbx: debug [linux_get_device_address] getting address for device: 1-3.2 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3.2
libusbx: debug [linux_get_device_address] bus=1 dev=4
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 4 session_id 260
libusbx: debug [linux_enumerate_device] allocating new device for 1/4 (session 260)
libusbx: debug [linux_get_parent_info] Dev 0x10a2cd0 (1-3.2) has parent 0x10a1050 (1-3) port 2
libusbx: debug [linux_get_device_address] getting address for device: usb2 detached: 0
libusbx: debug [linux_get_device_address] scan usb2
libusbx: debug [linux_get_device_address] bus=2 dev=1
libusbx: debug [linux_enumerate_device] busnum 2 devaddr 1 session_id 513
libusbx: debug [linux_enumerate_device] allocating new device for 2/1 (session 513)
libusbx: debug [linux_get_device_address] getting address for device: usb3 detached: 0
libusbx: debug [linux_get_device_address] scan usb3
libusbx: debug [linux_get_device_address] bus=3 dev=1
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 1 session_id 769
libusbx: debug [linux_enumerate_device] allocating new device for 3/1 (session 769)
libusbx: debug [linux_get_device_address] getting address for device: 3-1 detached: 0
libusbx: debug [linux_get_device_address] scan 3-1
libusbx: debug [linux_get_device_address] bus=3 dev=2
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 2 session_id 770
libusbx: debug [linux_enumerate_device] allocating new device for 3/2 (session 770)
libusbx: debug [linux_get_parent_info] Dev 0x10a3a80 (3-1) has parent 0x10a1b70 (usb3) port 1
libusbx: debug [linux_get_device_address] getting address for device: 3-1.1 detached: 0
libusbx: debug [linux_get_device_address] scan 3-1.1
libusbx: debug [linux_get_device_address] bus=3 dev=3
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 3 session_id 771
libusbx: debug [linux_enumerate_device] allocating new device for 3/3 (session 771)
libusbx: debug [linux_get_parent_info] Dev 0x10a3bd0 (3-1.1) has parent 0x10a3a80 (3-1) port 1
libusbx: debug [linux_get_device_address] getting address for device: 3-1.3 detached: 0
libusbx: debug [linux_get_device_address] scan 3-1.3
libusbx: debug [linux_get_device_address] bus=3 dev=4
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 4 session_id 772
libusbx: debug [linux_enumerate_device] allocating new device for 3/4 (session 772)
libusbx: debug [linux_get_parent_info] Dev 0x10a3c70 (3-1.3) has parent 0x10a3a80 (3-1) port 3
libusbx: debug [linux_get_device_address] getting address for device: usb4 detached: 0
libusbx: debug [linux_get_device_address] scan usb4
libusbx: debug [linux_get_device_address] bus=4 dev=1
libusbx: debug [linux_enumerate_device] busnum 4 devaddr 1 session_id 1025
libusbx: debug [linux_enumerate_device] allocating new device for 4/1 (session 1025)
libusbx: debug [linux_get_device_address] getting address for device: 4-1 detached: 0
libusbx: debug [linux_get_device_address] scan 4-1
libusbx: debug [linux_get_device_address] bus=4 dev=2
libusbx: debug [linux_enumerate_device] busnum 4 devaddr 2 session_id 1026
libusbx: debug [linux_enumerate_device] allocating new device for 4/2 (session 1026)
libusbx: debug [linux_get_parent_info] Dev 0x10a4e50 (4-1) has parent 0x10a49a0 (usb4) port 1
libusbx: debug [linux_get_device_address] getting address for device: 4-1.6 detached: 0
libusbx: debug [linux_get_device_address] scan 4-1.6
libusbx: debug [linux_get_device_address] bus=4 dev=3
libusbx: debug [linux_enumerate_device] busnum 4 devaddr 3 session_id 1027
libusbx: debug [linux_enumerate_device] allocating new device for 4/3 (session 1027)
libusbx: debug [linux_get_parent_info] Dev 0x10a53b0 (4-1.6) has parent 0x10a4e50 (4-1) port 6
libusbx: debug [usbi_add_pollfd] add fd 12 events 1
libusbx: debug [usbi_add_pollfd] add fd 14 events 1
libusbx: debug [usbi_io_init] using timerfd for timeouts
libusbx: debug [usbi_add_pollfd] add fd 16 events 1
libusbx: debug [libusb_get_device_list] 
libusbx: debug [discovered_devs_append] need to increase capacity
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_device_descriptor] 
libusbx: debug [libusb_get_config_descriptor] index 0
libusbx: debug [libusb_exit] 
libusbx: debug [usbi_remove_pollfd] remove fd 12
libusbx: debug [usbi_remove_pollfd] remove fd 14
libusbx: debug [usbi_remove_pollfd] remove fd 16
libusbx: debug [libusb_unref_device] destroy device 4.3
libusbx: debug [libusb_unref_device] destroy device 4.2
libusbx: debug [libusb_unref_device] destroy device 4.1
libusbx: debug [libusb_unref_device] destroy device 3.4
libusbx: debug [libusb_unref_device] destroy device 3.3
libusbx: debug [libusb_unref_device] destroy device 3.2
libusbx: debug [libusb_unref_device] destroy device 3.1
libusbx: debug [libusb_unref_device] destroy device 2.1
libusbx: debug [libusb_unref_device] destroy device 1.4
libusbx: debug [libusb_unref_device] destroy device 1.5
libusbx: debug [libusb_unref_device] destroy device 1.3
libusbx: debug [libusb_unref_device] destroy device 1.2
libusbx: debug [libusb_unref_device] destroy device 1.8
libusbx: debug [libusb_unref_device] destroy device 1.1
libusbx: debug [libusb_init] libusbx v1.0.17.10830
libusbx: debug [find_usbfs_path] found usbfs at /dev/bus/usb
libusbx: debug [op_init] bulk continuation flag supported
libusbx: debug [op_init] zero length packet flag supported
libusbx: debug [op_init] sysfs can relate devices
libusbx: debug [op_init] sysfs has complete descriptors
libusbx: debug [linux_get_device_address] getting address for device: usb1 detached: 0
libusbx: debug [linux_get_device_address] scan usb1
libusbx: debug [linux_get_device_address] bus=1 dev=1
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 1 session_id 257
libusbx: debug [linux_enumerate_device] allocating new device for 1/1 (session 257)
libusbx: debug [linux_get_device_address] getting address for device: 1-2 detached: 0
libusbx: debug [linux_get_device_address] scan 1-2
libusbx: debug [linux_get_device_address] bus=1 dev=8
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 8 session_id 264
libusbx: debug [linux_enumerate_device] allocating new device for 1/8 (session 264)
libusbx: debug [linux_get_parent_info] Dev 0x10a0e90 (1-2) has parent 0x10a0dd0 (usb1) port 2
libusbx: debug [linux_get_device_address] getting address for device: 1-3 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3
libusbx: debug [linux_get_device_address] bus=1 dev=2
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 2 session_id 258
libusbx: debug [linux_enumerate_device] allocating new device for 1/2 (session 258)
libusbx: debug [linux_get_parent_info] Dev 0x10a0f50 (1-3) has parent 0x10a0dd0 (usb1) port 3
libusbx: debug [linux_get_device_address] getting address for device: 1-3.1 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3.1
libusbx: debug [linux_get_device_address] bus=1 dev=3
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 3 session_id 259
libusbx: debug [linux_enumerate_device] allocating new device for 1/3 (session 259)
libusbx: debug [linux_get_parent_info] Dev 0x10a1930 (1-3.1) has parent 0x10a0f50 (1-3) port 1
libusbx: debug [linux_get_device_address] getting address for device: 1-3.1.2 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3.1.2
libusbx: debug [linux_get_device_address] bus=1 dev=5
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 5 session_id 261
libusbx: debug [linux_enumerate_device] allocating new device for 1/5 (session 261)
libusbx: debug [linux_get_parent_info] Dev 0x10a19d0 (1-3.1.2) has parent 0x10a1930 (1-3.1) port 2
libusbx: debug [linux_get_device_address] getting address for device: 1-3.2 detached: 0
libusbx: debug [linux_get_device_address] scan 1-3.2
libusbx: debug [linux_get_device_address] bus=1 dev=4
libusbx: debug [linux_enumerate_device] busnum 1 devaddr 4 session_id 260
libusbx: debug [linux_enumerate_device] allocating new device for 1/4 (session 260)
libusbx: debug [linux_get_parent_info] Dev 0x10a1da0 (1-3.2) has parent 0x10a0f50 (1-3) port 2
libusbx: debug [linux_get_device_address] getting address for device: usb2 detached: 0
libusbx: debug [linux_get_device_address] scan usb2
libusbx: debug [linux_get_device_address] bus=2 dev=1
libusbx: debug [linux_enumerate_device] busnum 2 devaddr 1 session_id 513
libusbx: debug [linux_enumerate_device] allocating new device for 2/1 (session 513)
libusbx: debug [linux_get_device_address] getting address for device: usb3 detached: 0
libusbx: debug [linux_get_device_address] scan usb3
libusbx: debug [linux_get_device_address] bus=3 dev=1
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 1 session_id 769
libusbx: debug [linux_enumerate_device] allocating new device for 3/1 (session 769)
libusbx: debug [linux_get_device_address] getting address for device: 3-1 detached: 0
libusbx: debug [linux_get_device_address] scan 3-1
libusbx: debug [linux_get_device_address] bus=3 dev=2
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 2 session_id 770
libusbx: debug [linux_enumerate_device] allocating new device for 3/2 (session 770)
libusbx: debug [linux_get_parent_info] Dev 0x10a3b70 (3-1) has parent 0x10a1c50 (usb3) port 1
libusbx: debug [linux_get_device_address] getting address for device: 3-1.1 detached: 0
libusbx: debug [linux_get_device_address] scan 3-1.1
libusbx: debug [linux_get_device_address] bus=3 dev=3
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 3 session_id 771
libusbx: debug [linux_enumerate_device] allocating new device for 3/3 (session 771)
libusbx: debug [linux_get_parent_info] Dev 0x10a4040 (3-1.1) has parent 0x10a3b70 (3-1) port 1
libusbx: debug [linux_get_device_address] getting address for device: 3-1.3 detached: 0
libusbx: debug [linux_get_device_address] scan 3-1.3
libusbx: debug [linux_get_device_address] bus=3 dev=4
libusbx: debug [linux_enumerate_device] busnum 3 devaddr 4 session_id 772
libusbx: debug [linux_enumerate_device] allocating new device for 3/4 (session 772)
libusbx: debug [linux_get_parent_info] Dev 0x10a44f0 (3-1.3) has parent 0x10a3b70 (3-1) port 3
libusbx: debug [linux_get_device_address] getting address for device: usb4 detached: 0
libusbx: debug [linux_get_device_address] scan usb4
libusbx: debug [linux_get_device_address] bus=4 dev=1
libusbx: debug [linux_enumerate_device] busnum 4 devaddr 1 session_id 1025
libusbx: debug [linux_enumerate_device] allocating new device for 4/1 (session 1025)
libusbx: debug [linux_get_device_address] getting address for device: 4-1 detached: 0
libusbx: debug [linux_get_device_address] scan 4-1
libusbx: debug [linux_get_device_address] bus=4 dev=2
libusbx: debug [linux_enumerate_device] busnum 4 devaddr 2 session_id 1026
libusbx: debug [linux_enumerate_device] allocating new device for 4/2 (session 1026)
libusbx: debug [linux_get_parent_info] Dev 0x10a4e70 (4-1) has parent 0x10a49c0 (usb4) port 1
libusbx: debug [linux_get_device_address] getting address for device: 4-1.6 detached: 0
libusbx: debug [linux_get_device_address] scan 4-1.6
libusbx: debug [linux_get_device_address] bus=4 dev=3
libusbx: debug [linux_enumerate_device] busnum 4 devaddr 3 session_id 1027
libusbx: debug [linux_enumerate_device] allocating new device for 4/3 (session 1027)
libusbx: debug [linux_get_parent_info] Dev 0x10a53d0 (4-1.6) has parent 0x10a4e70 (4-1) port 6
libusbx: debug [usbi_add_pollfd] add fd 12 events 1
libusbx: debug [usbi_add_pollfd] add fd 14 events 1
libusbx: debug [usbi_io_init] using timerfd for timeouts
libusbx: debug [usbi_add_pollfd] add fd 16 events 1
segmentation fault

Backtrace:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff344f0d0 in libusb_get_bus_number () from /lib/x86_64-linux-gnu/libusb-1.0.so.0
(gdb) where
#0  0x00007ffff344f0d0 in libusb_get_bus_number () from /lib/x86_64-linux-gnu/libusb-1.0.so.0
#1  0x00007ffff3681a40 in ?? () from /usr/lib/x86_64-linux-gnu/libgphoto2_port/0.8.0/usb1.so
#2  0x00007ffff708cf07 in gp_port_usb_find_device_by_class ()
   from /usr/lib/x86_64-linux-gnu/libgphoto2_port.so.0
#3  0x00007ffff7298cb9 in gp_abilities_list_detect () from /usr/lib/x86_64-linux-gnu/libgphoto2.so.2
#4  0x00000000004070b0 in ?? ()
#5  0x00007ffff65ac995 in __libc_start_main (main=0x405210, argc=4, ubp_av=0x7fffffffe2b8, 
       init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe2a8)
    at libc-start.c:260
#6  0x0000000000407f69 in ?? ()
#7  0x00007fffffffe2a8 in ?? ()
#8  0x0000000000000000 in ?? ()

I don't think libusb-1.0-1 is at fault here though, because I can use
"darktable" and import my pictures just fine.

gphotofs crashes similarly.

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (900, 'unstable'), (800, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.11-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gphoto2 depends on:
ii  libc6             2.17-93
ii  libcdk5           5.0.20060507-4
ii  libexif12         0.6.21-1
ii  libgphoto2-2      2.4.14-2.3
ii  libgphoto2-port0  2.4.14-2.3
ii  libncurses5       5.9+20130608-1
ii  libpopt0          1.16-7
ii  libreadline6      6.2+dfsg-0.1

gphoto2 recommends no packages.

Versions of packages gphoto2 suggests:
pn  gthumb  <none>
pn  gtkam   <none>

-- no debconf information



More information about the Pkg-phototools-devel mailing list