21 Oct, 2010

2 commits


03 Aug, 2010

3 commits


19 May, 2010

6 commits


18 May, 2010

1 commit


27 Feb, 2010

1 commit


06 Dec, 2009

2 commits

  • For whatever reason, the device structure pointer to
    videobuf_queue_vmalloc_init is typed "void *", even though it's passed
    right through to videobuf_queue_core_init(), which expects a struct
    device pointer. The other videobuf implementations use struct device *;
    I think vmalloc should too.

    Signed-off-by: Jonathan Corbet
    Signed-off-by: Mauro Carvalho Chehab

    Jonathan Corbet
     
  • The videobuf_queue_ops function vector is not declared constant, but
    there's no need for the videobuf layer to ever change it. Make it const
    so that videobuf users can make their operations const without warnings.

    Signed-off-by: Jonathan Corbet
    Signed-off-by: Andrew Morton
    Signed-off-by: Mauro Carvalho Chehab

    Jonathan Corbet
     

28 Sep, 2009

1 commit


30 Mar, 2009

1 commit

  • videobuf_vmalloc_free() is never freeing the video buffer memory. Due to
    that, after multiple open/closes, user can suffer a panic:

    Kernel BUG at mm/slab.c:2650
    invalid opcode: 0000 [1] SMP
    last sysfs file: /class/video4linux/video0/dev
    CPU 4
    Modules linked in: vivi(U) videodev(U) v4l1_compat(U) v4l2_compat_ioctl32(U) videobuf_vmalloc(U) videobuf_core(U) ipv6 xfrm_nalgo autofs4 vmnet(U) vmblock(U) vmci(U) vmmon(U) ip_conntrack_netbios_ns ipt_REJECT xt_state ip_conntrack nfnetlink xt_tcpudp iptable_filter ip_tables x_tables cpufreq_ondemand dm_mirror dm_log dm_multipath scsi_dh dm_mod video backlight sbs i2c_ec button battery asus_acpi acpi_memhotplug ac lp testmgr_cipher testmgr aead crypto_blkcipher crypto_algapi crypto_api arc4 snd_hda_intel nvidia(PFU) snd_seq_dummy snd_seq_oss snd_seq_midi_event rt73usb crc_itu_t snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss tg3 sr_mod snd_pcm snd_timer snd_page_alloc snd_hwdep pcspkr rt2500usb cdrom rt2x00usb rt2x00lib libphy snd parport_pc soundcore shpchp serio_raw i2c_i801 i5400_edac parport ata_piix sg mac80211 edac_mc i2c_core cfg80211 ahci libata sd_mod scsi_mod ext3 jbd uhci_hcd ohci_hcd ehci_hcd
    Pid: 6215, comm: v4l-stress-buff Tainted: PF 2.6.18-118.el5 #1
    RIP: 0010:[] [] cache_grow+0x1e/0x395
    RSP: 0018:ffff810128a35d28 EFLAGS: 00010006
    RAX: 0000000000000000 RBX: 00000000000080d0 RCX: 00000000ffffffff
    RDX: 0000000000000000 RSI: 00000000000080d0 RDI: ffff8101042d8340
    RBP: ffff8101042ce5e0 R08: ffff81012fc1e8c0 R09: ffff8101042eac00
    R10: 0000000000000000 R11: ffffffff882a5139 R12: ffff8101042d8340
    R13: ffff8101042ce5c0 R14: 0000000000000000 R15: ffff8101042d8340
    FS: 0000000000000000(0000) GS:ffff81012fc24d40(0063) knlGS:00000000f7f706c0
    CS: 0010 DS: 002b ES: 002b CR0: 000000008005003b
    CR2: 00000000f7f9a000 CR3: 0000000117ad0000 CR4: 00000000000006e0
    Process v4l-stress-buff (pid: 6215, threadinfo ffff810128a34000, task ffff810128fcb820)
    Stack: ffffc20012a39000 0000004415173ff8 ffff810000011c10 000280d200000000
    0000000000000002 00000000ffffffff ffff8101042ce5e0 ffff81012fc1e8c0
    ffff8101042ce5c0 000000000000000c ffff8101042d8340 ffffffff8005bdde
    Call Trace:
    [] cache_alloc_refill+0x136/0x186
    [] kmem_cache_alloc_node+0x98/0xb2
    [] __vmalloc_area_node+0x62/0x153
    [] vmalloc_user+0x15/0x50
    [] :videobuf_vmalloc:__videobuf_iolock+0xe6/0x155
    [] :vivi:buffer_prepare+0xb9/0xe6
    [] :videobuf_core:__videobuf_read_start+0xa2/0x10f
    [] :videobuf_core:videobuf_read_stream+0x9c/0x1f3
    [] vfs_read+0xcb/0x171
    [] sys_read+0x45/0x6e
    [] sysenter_do_call+0x1b/0x67

    Code: 0f 0b 68 af 1e 2a 80 c2 5a 0a f6 c7 20 0f 85 53 03 00 00 89
    RIP [] cache_grow+0x1e/0x395
    RSP
    Kernel panic - not syncing: Fatal exception

    Thanks to Douglas Schilling Landgraf for writing a
    stress tool for testing and to Robert Krakora
    to trace the code and discover the point where the bug were happening.
    Thanks also to Magnus Damm that provided us a fix for
    a similar bug on videobuf-dma-contig.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

27 Jul, 2008

1 commit


20 Jul, 2008

1 commit


25 Apr, 2008

8 commits


18 Feb, 2008

2 commits


26 Jan, 2008

1 commit


12 Dec, 2007

1 commit


14 Oct, 2007

1 commit


10 Oct, 2007

6 commits