cheese crashed with SIGSEGV in v4lconvert_convert()

Bug #341624 reported by Fernando Miguel
18
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libv4l (Ubuntu)
Invalid
Medium
Unassigned

Bug Description

Binary package hint: cheese

bug 341618 contains much more detail then this bug.
this one was filed with apport

ProblemType: Crash
Architecture: amd64
CrashCounter: 1
DistroRelease: Ubuntu 9.04
ExecutablePath: /usr/bin/cheese
NonfreeKernelModules: nvidia
Package: cheese 2.25.92-0ubuntu1
ProcCmdline: cheese
ProcCwd: /home/bugabundo/temp/nvgl
ProcEnviron:
 SHELL=/bin/bash
 PATH=(custom, no user)
 LANG=en_US.UTF-8
Signal: 11
SourcePackage: cheese
StacktraceTop:
 ?? () from /usr/lib/libv4lconvert.so.0
 v4lconvert_convert ()
 ?? () from /usr/lib/libv4l2.so.0
 v4l2_ioctl () from /usr/lib/libv4l2.so.0
 gst_v4l2src_grab_frame (v4l2src=0x14a83a0,
Title: cheese crashed with SIGSEGV in v4lconvert_convert()
Uname: Linux 2.6.28-9-generic x86_64
UserGroups: adm admin cdrom davfs2 dialout dip fax floppy fuse kvm lpadmin nagios netdev plugdev polkituser sambashare scanner sudo sys syslog tape users video voice www-data

Revision history for this message
Fernando Miguel (fernandomiguel) wrote :
Revision history for this message
Fernando Miguel (fernandomiguel) wrote :
Download full text (69.9 KiB)

[ 22.155245] Genesys gl860: Genesys USB2.0 webcam driver startup
[ 22.155347] Genesys gl860: Release: 0103
[ 22.155410] Genesys gl860: Number of interfaces : 1
[ 22.155472] Genesys gl860: Version Hulkie/Iceman/Soro (his)
[ 22.155535] Genesys gl860: Genesys USB2.0 - GL860 based webcam found.
[ 22.155599] Genesys gl860: Genesys USB2.0 2.0M WebCam - Product ID 0x0503.
[ 25.257181] Genesys gl860: Genesys USB2.0 Camera is now controlling video device /dev/video0
[ 25.257320] usbcore: registered new interface driver usb_gl860_driver
[ 25.257422] Genesys gl860: v2.6.28d7 : Genesys gl860 USB Video Camera
[ 3516.264213] Genesys gl860: usb_gl860_exit: Genesys USB2.0 webcam driver shutdown
[ 3516.264218] usbcore: deregistering interface driver usb_gl860_driver
[ 3516.264239] Genesys gl860: Genesys USB2.0 Camera disconnected
[ 3516.264255] Genesys gl860: Genesys USB2.0 Camera release resources video device /dev/video0
[ 3516.318510] Genesys gl860: Genesys USB2.0 webcam driver startup
[ 3516.318537] Genesys gl860: Release: 0103
[ 3516.318539] Genesys gl860: Number of interfaces : 1
[ 3516.318540] Genesys gl860: Version Hulkie/Iceman/Soro (his)
[ 3516.318541] Genesys gl860: Genesys USB2.0 - GL860 based webcam found.
[ 3516.318543] Genesys gl860: Genesys USB2.0 2.0M WebCam - Product ID 0x0503.
[ 3519.408120] Genesys gl860: Genesys USB2.0 Camera is now controlling video device /dev/video0
[ 3519.408174] usbcore: registered new interface driver usb_gl860_driver
[ 3519.408179] Genesys gl860: v2.6.28d9 : Genesys gl860 USB Video Camera
[ 3551.317835] Genesys gl860: VIDIOC_G_FMT : RGB3 [640x480]
[ 3551.317853] Genesys gl860: VIDIOC_ENUM_FMT : 0=GBRG
[ 3551.317857] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 0=[640x480]
[ 3551.317861] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 1=[800x600]
[ 3551.317864] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 2=[1280x1024]
[ 3551.317868] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 3=[1600x1200]
[ 3551.317871] Genesys gl860: VIDIOC_ENUM_FMT : 1=BA81
[ 3551.317875] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 0=[640x480]
[ 3551.317878] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 1=[800x600]
[ 3551.317881] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 2=[1280x1024]
[ 3551.317884] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 3=[1600x1200]
[ 3551.317888] Genesys gl860: VIDIOC_ENUM_FMT : 2=RGB3
[ 3551.317891] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 0=[640x480]
[ 3551.317894] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 1=[800x600]
[ 3551.317897] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 2=[1280x1024]
[ 3551.317900] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 3=[1600x1200]
[ 3551.317904] Genesys gl860: VIDIOC_ENUM_FMT : 3=BGR3
[ 3551.317907] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 0=[640x480]
[ 3551.317910] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 1=[800x600]
[ 3551.317913] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 2=[1280x1024]
[ 3551.317916] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 3=[1600x1200]
[ 3551.317920] Genesys gl860: VIDIOC_ENUM_FMT : 4=RGB4
[ 3551.317922] Genesys gl860: VIDIOC_ENUM_FMT : 5=BGR4
[ 3551.317925] Genesys gl860: VIDIOC_ENUM_FMT : 6=YUYV
[ 3551.317928] Genesys gl860: VIDIOC_ENUM_FRAMESIZES : 0=[640x480]
[ 3551.317931] Genesys gl860: VIDIOC_ENU...

Revision history for this message
Apport retracing service (apport) wrote : Symbolic stack trace

StacktraceTop:v4lconvert_rgb24_to_yuv420 (
v4lconvert_convert (data=0x7fb8a0013890,
v4l2_dequeue_and_convert (index=0,
v4l2_ioctl (fd=<value optimized out>,
gst_v4l2src_grab_frame (v4l2src=0x14a83a0,

Revision history for this message
Apport retracing service (apport) wrote : Symbolic threaded stack trace
Revision history for this message
Apport retracing service (apport) wrote : Stack trace with source code
Changed in cheese:
importance: Undecided → Medium
Revision history for this message
Chris Coulson (chrisccoulson) wrote :

This isn't a cheese issue by the look of the trace. It looks like it's crashing in libv4l (but it could be a gstreamer bug too - I haven't looked at in much detail). Re-assigning to libv4l for now though.

In the meantime BUGabundo, would you mind trying to get a Valgrind log of the crash, following the steps at https://wiki.ubuntu.com/DebuggingProgramCrash ?

Thanks

Changed in cheese:
status: New → Incomplete
Revision history for this message
Fernando Miguel (fernandomiguel) wrote :
Download full text (11.9 KiB)

there's no gdb/bdgsym version for cheese or v4l, still i'm getting full backtraces

$ gdb --args cheese
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
(no debugging symbols found)
(gdb) r
Starting program: /usr/bin/cheese
[Thread debugging using libthread_db enabled]
[New Thread 0x7f4d1df10800 (LWP 3202)]
[New Thread 0x7f4d0e659950 (LWP 3208)]
[New Thread 0x7f4d0de58950 (LWP 3209)]
[Thread 0x7f4d0e659950 (LWP 3208) exited]
[Thread 0x7f4d0de58950 (LWP 3209) exited]
[New Thread 0x7f4d0de58950 (LWP 3210)]
[Thread 0x7f4d0de58950 (LWP 3210) exited]
[New Thread 0x7f4d0de58950 (LWP 3211)]
[Thread 0x7f4d0de58950 (LWP 3211) exited]
[New Thread 0x7f4d0de58950 (LWP 3212)]
[New Thread 0x7f4d0c5c6950 (LWP 3213)]

(cheese:3202): GStreamer-WARNING **: pad source:src returned caps which are not a real subset of its template caps
[New Thread 0x7f4d0e659950 (LWP 3240)]
[New Thread 0x7f4d06715950 (LWP 3241)]

(cheese:3202): GStreamer-WARNING **: pad source:src returned caps which are not a real subset of its template caps
[Thread 0x7f4d06715950 (LWP 3241) exited]
[Thread 0x7f4d0e659950 (LWP 3240) exited]
[New Thread 0x7f4d0e659950 (LWP 3250)]
[New Thread 0x7f4d06715950 (LWP 3251)]
[New Thread 0x7f4d04879950 (LWP 3252)]

(cheese:3202): GStreamer-WARNING **: pad video_source:src returned caps which are not a real subset of its template caps
[New Thread 0x7f4d011d2950 (LWP 3267)]
[Thread 0x7f4d0de58950 (LWP 3212) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f4d011d2950 (LWP 3267)]
0x00007f4d07b9bc70 in ?? () from /usr/lib/libv4lconvert.so.0
(gdb) bt full
#0 0x00007f4d07b9bc70 in ?? () from /usr/lib/libv4lconvert.so.0
No symbol table info available.
#1 0x00007f4d07b953fb in v4lconvert_convert () from /usr/lib/libv4lconvert.so.0
No symbol table info available.
#2 0x00007f4d07df91e9 in ?? () from /usr/lib/libv4l2.so.0
No symbol table info available.
#3 0x00007f4d07dfa08b in v4l2_ioctl () from /usr/lib/libv4l2.so.0
No symbol table info available.
#4 0x00007f4d0c31e55f in gst_v4l2src_grab_frame (v4l2src=0x20523c0, buf=0x7f4d011d1db0) at v4l2src_calls.c:993
 buffer = {index = 0, type = V4L2_BUF_TYPE_VIDEO_CAPTURE, bytesused = 5760000, flags = 1, field = V4L2_FIELD_NONE,
  timestamp = {tv_sec = 1236874237, tv_usec = 850353}, timecode = {type = 0, flags = 0, frames = 0 '\0', seconds = 0 '\0',
    minutes = 0 '\0', hours = 0 '\0', userbits = "\000\000\000"}, sequence = 0, memory = V4L2_MEMORY_MMAP, m = {offset = 0,
    userptr = 0}, length = 5760000, input = 0, reserved = 0}
 trials = 50
 pool_buffer = <value optimized out>
 need_copy = <value optimized out>
 index = <value optimized out>
 __FUNCTION__ = "gst_v4l2src_grab_frame"
#5 0x00007f4d0c315f70 in gst_v4l2src_create (src=0x20523c0, buf=0x7f4d011d1f00) at gstv4l2src.c:1280
 v4l2src = (Gs...

Changed in libv4l:
status: Incomplete → New
Revision history for this message
Fernando Miguel (fernandomiguel) wrote :

valgrind just closes it self...

attacing strace

Revision history for this message
Fernando Miguel (fernandomiguel) wrote :

LIBV4L2_LOG_FILENAME=/home/XXX/libv4l.log
export LIBV4L2_LOG_FILENAME
cheese
Camorama

trace attached

Revision history for this message
Nol (o-lorin) wrote :

The segfaults occurs because libv4l gets from the gl860 driver a badly filled structure about image size and format. This is fixed (http://downloads.sourceforge.net/gl860/gl860_2.6.28e.tgz).

Changed in libv4l:
status: New → Invalid
Revision history for this message
Chris Coulson (chrisccoulson) wrote :

Please don't just invalidate bug reports when they are clearly still a problem in the packages shipped with Ubuntu, regardless of whether a fix exists somewhere upstream. That is absolutely not the correct thing to do.

Changed in libv4l (Ubuntu):
status: Invalid → Confirmed
tags: added: iso-testing
Revision history for this message
dino99 (9d9) wrote :

This version is outdated and no more supported

Changed in libv4l (Ubuntu):
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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