[Bug 287078] multimedia/cheese: fails to show images/video for a working webcam

[email protected]
Newsgroups gmane.os.freebsd.devel.gnome
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287078

--- Comment #4 from Marcin Cieślak <[email protected]> ---
Thread 20 hit Breakpoint 1, vb2_core_expbuf (q=0x801e872e0, fd=0x7fffddbebcc0,
type=1, index=0, 
    plane=0, flags=1048578) at
media_tree/drivers/media/common/videobuf2/videobuf2-core.c:2192
2192            struct vb2_buffer *vb = NULL;
(gdb) bt
#0  vb2_core_expbuf (q=0x801e872e0, fd=0x7fffddbebcc0, type=1, index=0,
plane=0, flags=1048578)
    at media_tree/drivers/media/common/videobuf2/videobuf2-core.c:2192
#1  0x00000000014c0a2e in vb2_expbuf (q=0x801e872e0, eb=0x7fffddbebcb0)
    at media_tree/drivers/media/common/videobuf2/videobuf2-v4l2.c:877
#2  0x000000000153ef8d in uvc_export_buffer (queue=0x801e872e0,
exp=0x7fffddbebcb0)
    at media_tree/drivers/media/usb/uvc/uvc_queue.c:314
#3  0x00000000015400e3 in uvc_ioctl_expbuf (file=0x803c03020, fh=0x803c1c000,
exp=0x7fffddbebcb0)
    at media_tree/drivers/media/usb/uvc/uvc_v4l2.c:805
#4  0x0000000001453f01 in v4l_stub_expbuf (ops=0x1675fe0 <uvc_ioctl_ops>,
file=0x803c03020, 
    fh=0x803c1c000, p=0x7fffddbebcb0) at
media_tree/drivers/media/v4l2-core/v4l2-ioctl.c:2733
#5  0x000000000145290a in __video_do_ioctl (file=0x803c03020, cmd=3225441808,
arg=0x7fffddbebcb0)
    at media_tree/drivers/media/v4l2-core/v4l2-ioctl.c:2979
#6  0x0000000001451aac in video_usercopy (file=0x803c03020,
orig_cmd=3225441808, arg=65536, 
    func=0x14526b0 <__video_do_ioctl>) at
media_tree/drivers/media/v4l2-core/v4l2-ioctl.c:3327
#7  0x00000000014526aa in video_ioctl2 (file=0x803c03020, cmd=3225441808,
arg=65536)
    at media_tree/drivers/media/v4l2-core/v4l2-ioctl.c:3375
#8  0x0000000001450ec9 in v4l2_ioctl (filp=0x803c03020, cmd=3225441808,
arg=65536)
    at media_tree/drivers/media/v4l2-core/v4l2-dev.c:374
#9  0x00000000011f92c1 in linux_ioctl (handle=0x803c03000, fflags=0,
cmd=3225441808, arg=0x10000)
    at kernel/linux_file.c:158
#10 0x00000000016457e7 in v4b_ioctl (cdev=0x801e47030, fflags=3,
cmd=3225441808, 
    peer_data=0x10000) at webcamd.c:301
#11 0x00000008017391de in cuse_wait_and_process () at
/usr/src/lib/libcuse/cuse_lib.c:549
#12 0x0000000001644dd4 in v4b_work (arg=0x0) at webcamd.c:145
#13 0x00000008016feecb in thread_start (curthread=0x801aca810)
    at /usr/src/lib/libthr/thread/thr_create.c:299
#14 0x0000000000000000 in ?? ()
Backtrace stopped: Cannot access memory at address 0x7fffddbec000
(gdb) p *q
$12 = {type = 1, io_modes = 19, dev = 0x0, dma_attrs = 0, bidirectional = 0, 
  fileio_read_once = 0, fileio_write_immediately = 0, allow_zero_bytesused = 0, 
  quirk_poll_must_check_waiting_for_buffers = 1, supports_requests = 0,
requires_requests = 0, 
  uses_qbuf = 0, uses_requests = 0, allow_cache_hints = 0, non_coherent_mem =
0, 
  lock = 0x801e87510, owner = 0x0, ops = 0x1675f80 <uvc_queue_qops>, 
  mem_ops = 0x166d198 <vb2_vmalloc_memops>, buf_ops = 0x166d158 <v4l2_buf_ops>, 
  drv_priv = 0x801e872e0, subsystem_flags = 0, buf_struct_size = 984,
timestamp_flags = 73728, 
  gfp_flags = 0, min_buffers_needed = 0, alloc_devs = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, 
  mmap_lock = {sem = {value = 1, owner = 0xffffffffffffffff}}, memory = 1, 
  dma_dir = (unknown: 0x1), bufs = {0x803802000, 0x803802400, 0x803802800,
0x803802c00, 
    0x0 <repeats 28 times>}, num_buffers = 4, queued_list = {next =
0x801e874a8, 
    prev = 0x801e874a8}, queued_count = 0, owned_by_drv_count = {counter = 0},
done_list = {
    next = 0x801e874c0, prev = 0x801e874c0}, done_lock = {<No data fields>},
done_wq = {
    sleep_ref = 5, sleep_count = 0, do_selwakeup = 0}, streaming = 0,
start_streaming_called = 0, 
  error = 0, waiting_for_buffers = 1, waiting_in_dqbuf = 0, is_multiplanar = 0,
is_output = 0, 
  copy_timestamp = 0, last_buffer_dequeued = 0, fileio = 0x0, threadio = 0x0, 
  name = "cap-0x801e872e0", '\000' <repeats 16 times>}
(gdb) p q->memory
$13 = 1
(gdb) n
2197            if (q->memory != VB2_MEMORY_MMAP) {
(gdb) 
2202            if (!q->mem_ops->get_dmabuf) {
(gdb) 
2203                    dprintk(q, 1, "queue does not support DMA buffer
exporting\n");
(gdb) p *q->mem_ops
$14 = {alloc = 0x14c2bf0 <vb2_vmalloc_alloc>, put = 0x14c2cf0
<vb2_vmalloc_put>, 
  get_dmabuf = 0x0, get_userptr = 0x0, put_userptr = 0x0, prepare = 0x0, finish
= 0x0, 
  attach_dmabuf = 0x14c2d40 <vb2_vmalloc_attach_dmabuf>, 
  detach_dmabuf = 0x14c2df0 <vb2_vmalloc_detach_dmabuf>, 
  map_dmabuf = 0x14c2e60 <vb2_vmalloc_map_dmabuf>, 
  unmap_dmabuf = 0x14c2ee0 <vb2_vmalloc_unmap_dmabuf>, vaddr = 0x14c2f50
<vb2_vmalloc_vaddr>, 
  cookie = 0x0, num_users = 0x14c2f90 <vb2_vmalloc_num_users>, 
  mmap = 0x14c2fc0 <vb2_vmalloc_mmap>}

-- 
You are receiving this mail because:
You are the assignee for the bug.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.