<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/media, branch v3.11.2</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>media: siano: fix divide error on 0 counters</title>
<updated>2013-09-27T00:21:56+00:00</updated>
<author>
<name>Bjørn Mork</name>
<email>bjorn@mork.no</email>
</author>
<published>2013-08-14T08:24:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f118b54803039546620476f4766ec591919131b0'/>
<id>f118b54803039546620476f4766ec591919131b0</id>
<content type='text'>
commit ec532503209053bbee0c7dac410031e50835e01a upstream.

GIT_AUTHOR_DATE=1376465691
I took a quick look at the code and wonder if the problem is caused by
an initial zero statistics message?  This is all just a wild guess, but
if it is correct, then the attached untested patch might fix it...
Bjørn
&gt;From d78a0599d5b5d4da384eae08bf7da316389dfbe5 Mon Sep 17 00:00:00 2001
ts_packets and ets_packets counters can be 0.  Don't fall over
if they are. Fixes:
[  846.851711] divide error: 0000 [#1] SMP
[  846.851806] Modules linked in: smsdvb dvb_core ir_lirc_codec lirc_dev ir_sanyo_decoder ir_mce_kbd_decoder ir_sony_decoder ir_jvc_decoder ir_rc6_decoder ir_rc5_decoder ir_nec_decoder rc_hauppauge smsusb smsmdtv rc_core pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) parport_pc ppdev lp parport cpufreq_userspace cpufreq_powersave cpufreq_stats cpufreq_conservative rfcomm bnep binfmt_misc uinput nfsd auth_rpcgss oid_registry nfs_acl nfs lockd dns_resolver fscache sunrpc ext4 jbd2 fuse tp_smapi(O) thinkpad_ec(O) loop firewire_sbp2 dm_crypt snd_hda_codec_conexant snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm thinkpad_acpi nvram snd_page_alloc hid_generic snd_seq_midi snd_seq_midi_event arc4 usbhid snd_rawmidi uvcvideo hid iwldvm coretemp kvm_intel mac8021
 1 cdc_wdm
[  846.853477]  cdc_acm snd_seq videobuf2_vmalloc videobuf2_memops videobuf2_core videodev media kvm radeon r852 ttm joydev cdc_ether usbnet pcmcia mii sm_common nand btusb drm_kms_helper tpm_tis acpi_cpufreq bluetooth iwlwifi nand_ecc drm nand_ids i2c_i801 mtd snd_seq_device iTCO_wdt iTCO_vendor_support r592 memstick lpc_ich mperf tpm yenta_socket pcmcia_rsrc pcmcia_core cfg80211 snd_timer snd pcspkr i2c_algo_bit crc16 i2c_core tpm_bios processor mfd_core wmi psmouse mei_me rfkill mei serio_raw soundcore evdev battery button video ac microcode ext3 mbcache jbd md_mod dm_mirror dm_region_hash dm_log dm_mod sg sr_mod sd_mod cdrom crc_t10dif firewire_ohci sdhci_pci sdhci mmc_core firewire_core crc_itu_t thermal thermal_sys ahci libahci ehci_pci uhci_hcd ehci_hcd libata scsi_mod usbcore e1000
 e usb_common
[  846.855310]  ptp pps_core
[  846.855356] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G           O 3.10-2-amd64 #1 Debian 3.10.5-1
[  846.855490] Hardware name: LENOVO 4061WFA/4061WFA, BIOS 6FET92WW (3.22 ) 12/14/2011
[  846.855609] task: ffffffff81613400 ti: ffffffff81600000 task.ti: ffffffff81600000
[  846.855636] RIP: 0010:[&lt;ffffffffa092be0c&gt;]  [&lt;ffffffffa092be0c&gt;] smsdvb_onresponse+0x264/0xa86 [smsdvb]
[  846.863906] RSP: 0018:ffff88013bc03cf0  EFLAGS: 00010046
[  846.863906] RAX: 0000000000000000 RBX: ffff880133bf6000 RCX: 0000000000000000
[  846.863906] RDX: 0000000000000000 RSI: ffff88005d3b58c0 RDI: ffff880133bf6000
[  846.863906] RBP: ffff88005d1da000 R08: 0000000000000058 R09: 0000000000000015
[  846.863906] R10: 0000000000001a0d R11: 000000000000021a R12: ffff88005d3b58c0
[  846.863906] R13: ffff88005d1da008 R14: 00000000ffffff8d R15: ffff880036cf5060
[  846.863906] FS:  0000000000000000(0000) GS:ffff88013bc00000(0000) knlGS:0000000000000000
[  846.863906] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  846.863906] CR2: 00007f3a4b69ae50 CR3: 0000000036dac000 CR4: 00000000000407f0
[  846.863906] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  846.863906] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  846.863906] Stack:
[  846.863906]  ffff88007a102000 ffff88005d1da000 ffff88005d3b58c0 0000000000085824
[  846.863906]  ffffffffa08c5aa3 ffff88005d1da000 ffff8800a6907390 ffff8800a69073b0
[  846.863906]  ffff8800a6907000 ffffffffa08b642c 000000000000021a ffff8800a69073b0
[  846.863906] Call Trace:
[  846.863906]  &lt;IRQ&gt;
[  846.863906]
[  846.863906]  [&lt;ffffffffa08c5aa3&gt;] ? smscore_onresponse+0x1d5/0x353 [smsmdtv]
[  846.863906]  [&lt;ffffffffa08b642c&gt;] ? smsusb_onresponse+0x146/0x192 [smsusb]
[  846.863906]  [&lt;ffffffffa004cb1a&gt;] ? usb_hcd_giveback_urb+0x6c/0xac [usbcore]
[  846.863906]  [&lt;ffffffffa0217be1&gt;] ? ehci_urb_done+0x62/0x72 [ehci_hcd]
[  846.863906]  [&lt;ffffffffa0217c82&gt;] ? qh_completions+0x91/0x364 [ehci_hcd]
[  846.863906]  [&lt;ffffffffa0219bba&gt;] ? ehci_work+0x8a/0x68e [ehci_hcd]
[  846.863906]  [&lt;ffffffff8107336c&gt;] ? timekeeping_get_ns.constprop.10+0xd/0x31
[  846.863906]  [&lt;ffffffff81064d41&gt;] ? update_cfs_rq_blocked_load+0xde/0xec
[  846.863906]  [&lt;ffffffff81058ec2&gt;] ? run_posix_cpu_timers+0x25/0x575
[  846.863906]  [&lt;ffffffffa021aa46&gt;] ? ehci_irq+0x211/0x23d [ehci_hcd]
[  846.863906]  [&lt;ffffffffa004c0c1&gt;] ? usb_hcd_irq+0x31/0x48 [usbcore]
[  846.863906]  [&lt;ffffffff810996fd&gt;] ? handle_irq_event_percpu+0x49/0x1a4
[  846.863906]  [&lt;ffffffff8109988a&gt;] ? handle_irq_event+0x32/0x4b
[  846.863906]  [&lt;ffffffff8109bd76&gt;] ? handle_fasteoi_irq+0x80/0xb6
[  846.863906]  [&lt;ffffffff8100e93e&gt;] ? handle_irq+0x18/0x20
[  846.863906]  [&lt;ffffffff8100e657&gt;] ? do_IRQ+0x40/0x95
[  846.863906]  [&lt;ffffffff813883ed&gt;] ? common_interrupt+0x6d/0x6d
[  846.863906]  &lt;EOI&gt;
[  846.863906]
[  846.863906]  [&lt;ffffffff812a011c&gt;] ? arch_local_irq_enable+0x4/0x8
[  846.863906]  [&lt;ffffffff812a04f3&gt;] ? cpuidle_enter_state+0x52/0xc1
[  846.863906]  [&lt;ffffffff812a0636&gt;] ? cpuidle_idle_call+0xd4/0x143
[  846.863906]  [&lt;ffffffff8101398c&gt;] ? arch_cpu_idle+0x5/0x17
[  846.863906]  [&lt;ffffffff81072571&gt;] ? cpu_startup_entry+0x10d/0x187
[  846.863906]  [&lt;ffffffff816b3d3d&gt;] ? start_kernel+0x3e8/0x3f3
[  846.863906]  [&lt;ffffffff816b3777&gt;] ? repair_env_string+0x54/0x54
[  846.863906]  [&lt;ffffffff816b3598&gt;] ? x86_64_start_kernel+0xf2/0xfd
[  846.863906] Code: 25 09 00 00 c6 83 da 08 00 00 03 8b 45 54 48 01 83 b6 08 00 00 8b 45 50 48 01 83 db 08 00 00 8b 4d 18 69 c1 ff ff 00 00 03 4d 14 &lt;48&gt; f7 f1 89 83 a8 09 00 00 e9 68 fe ff ff 48 8b 7f 10 e8 79 92
[  846.863906] RIP  [&lt;ffffffffa092be0c&gt;] smsdvb_onresponse+0x264/0xa86 [smsdvb]
[  846.863906]  RSP &lt;ffff88013bc03cf0&gt;
Reference: http://bugs.debian.org/719623

Reported-by: Johannes Rohr &lt;jorohr@gmail.com&gt;
Signed-off-by: Bjørn Mork &lt;bjorn@mork.no&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit ec532503209053bbee0c7dac410031e50835e01a upstream.

GIT_AUTHOR_DATE=1376465691
I took a quick look at the code and wonder if the problem is caused by
an initial zero statistics message?  This is all just a wild guess, but
if it is correct, then the attached untested patch might fix it...
Bjørn
&gt;From d78a0599d5b5d4da384eae08bf7da316389dfbe5 Mon Sep 17 00:00:00 2001
ts_packets and ets_packets counters can be 0.  Don't fall over
if they are. Fixes:
[  846.851711] divide error: 0000 [#1] SMP
[  846.851806] Modules linked in: smsdvb dvb_core ir_lirc_codec lirc_dev ir_sanyo_decoder ir_mce_kbd_decoder ir_sony_decoder ir_jvc_decoder ir_rc6_decoder ir_rc5_decoder ir_nec_decoder rc_hauppauge smsusb smsmdtv rc_core pci_stub vboxpci(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) parport_pc ppdev lp parport cpufreq_userspace cpufreq_powersave cpufreq_stats cpufreq_conservative rfcomm bnep binfmt_misc uinput nfsd auth_rpcgss oid_registry nfs_acl nfs lockd dns_resolver fscache sunrpc ext4 jbd2 fuse tp_smapi(O) thinkpad_ec(O) loop firewire_sbp2 dm_crypt snd_hda_codec_conexant snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm thinkpad_acpi nvram snd_page_alloc hid_generic snd_seq_midi snd_seq_midi_event arc4 usbhid snd_rawmidi uvcvideo hid iwldvm coretemp kvm_intel mac8021
 1 cdc_wdm
[  846.853477]  cdc_acm snd_seq videobuf2_vmalloc videobuf2_memops videobuf2_core videodev media kvm radeon r852 ttm joydev cdc_ether usbnet pcmcia mii sm_common nand btusb drm_kms_helper tpm_tis acpi_cpufreq bluetooth iwlwifi nand_ecc drm nand_ids i2c_i801 mtd snd_seq_device iTCO_wdt iTCO_vendor_support r592 memstick lpc_ich mperf tpm yenta_socket pcmcia_rsrc pcmcia_core cfg80211 snd_timer snd pcspkr i2c_algo_bit crc16 i2c_core tpm_bios processor mfd_core wmi psmouse mei_me rfkill mei serio_raw soundcore evdev battery button video ac microcode ext3 mbcache jbd md_mod dm_mirror dm_region_hash dm_log dm_mod sg sr_mod sd_mod cdrom crc_t10dif firewire_ohci sdhci_pci sdhci mmc_core firewire_core crc_itu_t thermal thermal_sys ahci libahci ehci_pci uhci_hcd ehci_hcd libata scsi_mod usbcore e1000
 e usb_common
[  846.855310]  ptp pps_core
[  846.855356] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G           O 3.10-2-amd64 #1 Debian 3.10.5-1
[  846.855490] Hardware name: LENOVO 4061WFA/4061WFA, BIOS 6FET92WW (3.22 ) 12/14/2011
[  846.855609] task: ffffffff81613400 ti: ffffffff81600000 task.ti: ffffffff81600000
[  846.855636] RIP: 0010:[&lt;ffffffffa092be0c&gt;]  [&lt;ffffffffa092be0c&gt;] smsdvb_onresponse+0x264/0xa86 [smsdvb]
[  846.863906] RSP: 0018:ffff88013bc03cf0  EFLAGS: 00010046
[  846.863906] RAX: 0000000000000000 RBX: ffff880133bf6000 RCX: 0000000000000000
[  846.863906] RDX: 0000000000000000 RSI: ffff88005d3b58c0 RDI: ffff880133bf6000
[  846.863906] RBP: ffff88005d1da000 R08: 0000000000000058 R09: 0000000000000015
[  846.863906] R10: 0000000000001a0d R11: 000000000000021a R12: ffff88005d3b58c0
[  846.863906] R13: ffff88005d1da008 R14: 00000000ffffff8d R15: ffff880036cf5060
[  846.863906] FS:  0000000000000000(0000) GS:ffff88013bc00000(0000) knlGS:0000000000000000
[  846.863906] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  846.863906] CR2: 00007f3a4b69ae50 CR3: 0000000036dac000 CR4: 00000000000407f0
[  846.863906] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  846.863906] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  846.863906] Stack:
[  846.863906]  ffff88007a102000 ffff88005d1da000 ffff88005d3b58c0 0000000000085824
[  846.863906]  ffffffffa08c5aa3 ffff88005d1da000 ffff8800a6907390 ffff8800a69073b0
[  846.863906]  ffff8800a6907000 ffffffffa08b642c 000000000000021a ffff8800a69073b0
[  846.863906] Call Trace:
[  846.863906]  &lt;IRQ&gt;
[  846.863906]
[  846.863906]  [&lt;ffffffffa08c5aa3&gt;] ? smscore_onresponse+0x1d5/0x353 [smsmdtv]
[  846.863906]  [&lt;ffffffffa08b642c&gt;] ? smsusb_onresponse+0x146/0x192 [smsusb]
[  846.863906]  [&lt;ffffffffa004cb1a&gt;] ? usb_hcd_giveback_urb+0x6c/0xac [usbcore]
[  846.863906]  [&lt;ffffffffa0217be1&gt;] ? ehci_urb_done+0x62/0x72 [ehci_hcd]
[  846.863906]  [&lt;ffffffffa0217c82&gt;] ? qh_completions+0x91/0x364 [ehci_hcd]
[  846.863906]  [&lt;ffffffffa0219bba&gt;] ? ehci_work+0x8a/0x68e [ehci_hcd]
[  846.863906]  [&lt;ffffffff8107336c&gt;] ? timekeeping_get_ns.constprop.10+0xd/0x31
[  846.863906]  [&lt;ffffffff81064d41&gt;] ? update_cfs_rq_blocked_load+0xde/0xec
[  846.863906]  [&lt;ffffffff81058ec2&gt;] ? run_posix_cpu_timers+0x25/0x575
[  846.863906]  [&lt;ffffffffa021aa46&gt;] ? ehci_irq+0x211/0x23d [ehci_hcd]
[  846.863906]  [&lt;ffffffffa004c0c1&gt;] ? usb_hcd_irq+0x31/0x48 [usbcore]
[  846.863906]  [&lt;ffffffff810996fd&gt;] ? handle_irq_event_percpu+0x49/0x1a4
[  846.863906]  [&lt;ffffffff8109988a&gt;] ? handle_irq_event+0x32/0x4b
[  846.863906]  [&lt;ffffffff8109bd76&gt;] ? handle_fasteoi_irq+0x80/0xb6
[  846.863906]  [&lt;ffffffff8100e93e&gt;] ? handle_irq+0x18/0x20
[  846.863906]  [&lt;ffffffff8100e657&gt;] ? do_IRQ+0x40/0x95
[  846.863906]  [&lt;ffffffff813883ed&gt;] ? common_interrupt+0x6d/0x6d
[  846.863906]  &lt;EOI&gt;
[  846.863906]
[  846.863906]  [&lt;ffffffff812a011c&gt;] ? arch_local_irq_enable+0x4/0x8
[  846.863906]  [&lt;ffffffff812a04f3&gt;] ? cpuidle_enter_state+0x52/0xc1
[  846.863906]  [&lt;ffffffff812a0636&gt;] ? cpuidle_idle_call+0xd4/0x143
[  846.863906]  [&lt;ffffffff8101398c&gt;] ? arch_cpu_idle+0x5/0x17
[  846.863906]  [&lt;ffffffff81072571&gt;] ? cpu_startup_entry+0x10d/0x187
[  846.863906]  [&lt;ffffffff816b3d3d&gt;] ? start_kernel+0x3e8/0x3f3
[  846.863906]  [&lt;ffffffff816b3777&gt;] ? repair_env_string+0x54/0x54
[  846.863906]  [&lt;ffffffff816b3598&gt;] ? x86_64_start_kernel+0xf2/0xfd
[  846.863906] Code: 25 09 00 00 c6 83 da 08 00 00 03 8b 45 54 48 01 83 b6 08 00 00 8b 45 50 48 01 83 db 08 00 00 8b 4d 18 69 c1 ff ff 00 00 03 4d 14 &lt;48&gt; f7 f1 89 83 a8 09 00 00 e9 68 fe ff ff 48 8b 7f 10 e8 79 92
[  846.863906] RIP  [&lt;ffffffffa092be0c&gt;] smsdvb_onresponse+0x264/0xa86 [smsdvb]
[  846.863906]  RSP &lt;ffff88013bc03cf0&gt;
Reference: http://bugs.debian.org/719623

Reported-by: Johannes Rohr &lt;jorohr@gmail.com&gt;
Signed-off-by: Bjørn Mork &lt;bjorn@mork.no&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>media: mb86a20s: Fix TS parallel mode</title>
<updated>2013-09-27T00:21:56+00:00</updated>
<author>
<name>Mauro Carvalho Chehab</name>
<email>m.chehab@samsung.com</email>
</author>
<published>2013-08-09T11:53:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=7c33812d06bf03d8225fa854e5a609141bf7a528'/>
<id>7c33812d06bf03d8225fa854e5a609141bf7a528</id>
<content type='text'>
commit 9d32069faacdc81fe1dcb5d297c32a3ac81da8f0 upstream.

changeset 768e6dadd74 caused a regression on using mb86a20s
in parallel mode, as the parallel mode selection got
overriden by mb86a20s_init2.

Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 9d32069faacdc81fe1dcb5d297c32a3ac81da8f0 upstream.

changeset 768e6dadd74 caused a regression on using mb86a20s
in parallel mode, as the parallel mode selection got
overriden by mb86a20s_init2.

Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>media: cx88: Fix regression: CX88_AUDIO_WM8775 can't be 0</title>
<updated>2013-09-27T00:21:55+00:00</updated>
<author>
<name>Hans Verkuil</name>
<email>hans.verkuil@cisco.com</email>
</author>
<published>2013-08-27T07:27:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1e4508a37512de3bcbc8475cd56bf2b887ae59f8'/>
<id>1e4508a37512de3bcbc8475cd56bf2b887ae59f8</id>
<content type='text'>
commit f66b2a1c7f2ae3fb0d5b67d07ab4f5055fd3cf16 upstream.

Cards using the wm8775 specify that in their card struct. Those that do not
use it leave the audio_chip field to 0. Unfortunately, the CX88_AUDIO_WM8775
enum is 0 as well, so boards that do not have the wm8775 still try to load
and use that driver. Change it to 1 to fix this.
This regression was introduced in commit facd23664f1d63c33fbc6da52261c8548ed3fbd4.

Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Reported-by: Knut Petersen &lt;Knut_Petersen@t-online.de&gt;
Tested-by: Knut Petersen &lt;Knut_Petersen@t-online.de&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit f66b2a1c7f2ae3fb0d5b67d07ab4f5055fd3cf16 upstream.

Cards using the wm8775 specify that in their card struct. Those that do not
use it leave the audio_chip field to 0. Unfortunately, the CX88_AUDIO_WM8775
enum is 0 as well, so boards that do not have the wm8775 still try to load
and use that driver. Change it to 1 to fix this.
This regression was introduced in commit facd23664f1d63c33fbc6da52261c8548ed3fbd4.

Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Reported-by: Knut Petersen &lt;Knut_Petersen@t-online.de&gt;
Tested-by: Knut Petersen &lt;Knut_Petersen@t-online.de&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>media: exynos4-is: Fix entity unregistration on error path</title>
<updated>2013-09-27T00:21:55+00:00</updated>
<author>
<name>Sylwester Nawrocki</name>
<email>s.nawrocki@samsung.com</email>
</author>
<published>2013-07-29T09:53:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=098b05d9e286a59b74e6102992aa4c76dc7098dd'/>
<id>098b05d9e286a59b74e6102992aa4c76dc7098dd</id>
<content type='text'>
commit d2b903b4427e417a73863cef36ad0796ea6b7404 upstream.

This patch corrects media entities unregistration order to make sure
the fimc.N.capture and fimc-lite video nodes are unregistered with
fimc-&gt;lock mutex held. This prevents races between video device open()
and defered probing and NULL pointer dereference in open() callback
as follows:
[   77.645000] Unable to handle kernel NULL pointer dereference at virtual address 00000290t
[   77.655000] pgd = ee7a8000
[   77.660000] [00000290] *pgd=6e13c831, *pte=00000000, *ppte=00000000
[   77.665000] Internal error: Oops: 17 [#1] PREEMPT SMP ARM
[   77.670000] Modules linked in: s5p_fimc ipv6 exynos_fimc_is exynos_fimc_lite
 s5p_csis v4l2_mem2mem videobuf2_dma_contig videobuf2_memops exynos4_is_common videobuf2_core [last unloaded: s5p_fimc]
[   77.685000] CPU: 0 PID : 2998 Comm: v4l_id Tainted: G        W   3.10.0-next-20130709-00039-g39f491b-dirty #1548
[   77.695000] task: ee084000 ti: ee46e000 task.ti: ee46e000
[   77.700000] PC is at __mutex_lock_slowpath+0x54/0x368
[   77.705000] LR is at __mutex_lock_slowpath+0x24/0x368
[   77.710000] pc : [&lt;c038dc10&gt;]    lr : [&lt;c038dbe0&gt;]    psr: 60000093
[   77.710000] sp : ee46fd70  ip : 000008c8  fp : c054e34c
[   77.725000] r10: ee084000  r9 : 00000000  r8 : ee439480
[   77.730000] r7 : ee46e000  r6 : 60000013  r5 : 00000290  r4 : 0000028c
[   77.735000] r3 : 00000000  r2 : 00000000  r1 : 20000093  r0 : 00000001
[   77.740000] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM Segment user
[   77.750000] Control: 10c5387d  Table: 6e7a804a  DAC: 00000015
[   77.755000] Process v4l_id (pid: 2998, stack limit = 0xee46e238)
[   77.760000] Stack: (0xee46fd70 to 0xee470000)
    	       ...
[   77.935000] [&lt;c038dc10&gt;] (__mutex_lock_slowpath+0x54/0x368) from [&lt;c038df30&gt;] (mutex_lock+0xc/0x24)
[   77.945000] [&lt;c038df30&gt;] (mutex_lock+0xc/0x24) from [&lt;bf03fa90&gt;] (fimc_lite_open+0x12c/0x2bc [exynos_fimc_lite])
[   77.955000] [&lt;bf03fa90&gt;] (fimc_lite_open+0x12c/0x2bc [exynos_fimc_lite]) from [&lt;c02ab11c&gt;] (v4l2_open+0xa0/0xe0)
[   77.965000] [&lt;c02ab11c&gt;] (v4l2_open+0xa0/0xe0) from [&lt;c00b1de4&gt;] (chrdev_open+0x88/0x170)
[   77.975000] [&lt;c00b1de4&gt;] (chrdev_open+0x88/0x170) from [&lt;c00ac710&gt;] (do_dentry_open.isra.14+0x1d8/0x258)
[   77.985000] [&lt;c00ac710&gt;] (do_dentry_open.isra.14+0x1d8/0x258) from [&lt;c00ac860&gt;] (finish_open+0x20/0x38)
[   77.995000] [&lt;c00ac860&gt;] (finish_open+0x20/0x38) from [&lt;c00ba658&gt;] (do_last.isra.43+0x538/0xb1c)
[   78.000000] [&lt;c00ba658&gt;] (do_last.isra.43+0x538/0xb1c) from [&lt;c00bacf0&gt;] (path_openat+0xb4/0x5c4)
[   78.010000] [&lt;c00bacf0&gt;] (path_openat+0xb4/0x5c4) from [&lt;c00bb4b4&gt;] (do_filp_open+0x2c/0x80)
[   78.020000] [&lt;c00bb4b4&gt;] (do_filp_open+0x2c/0x80) from [&lt;c00ad744&gt;] (do_sys_open+0xf4/0x1a8)
[   78.025000] [&lt;c00ad744&gt;] (do_sys_open+0xf4/0x1a8) from [&lt;c000e320&gt;] (ret_fast_syscall+0x0/0x30)
[   78.035000] Code: 1a000093 e10f6000 f10c0080 e2845004 (e1953f9f)

Reported-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit d2b903b4427e417a73863cef36ad0796ea6b7404 upstream.

This patch corrects media entities unregistration order to make sure
the fimc.N.capture and fimc-lite video nodes are unregistered with
fimc-&gt;lock mutex held. This prevents races between video device open()
and defered probing and NULL pointer dereference in open() callback
as follows:
[   77.645000] Unable to handle kernel NULL pointer dereference at virtual address 00000290t
[   77.655000] pgd = ee7a8000
[   77.660000] [00000290] *pgd=6e13c831, *pte=00000000, *ppte=00000000
[   77.665000] Internal error: Oops: 17 [#1] PREEMPT SMP ARM
[   77.670000] Modules linked in: s5p_fimc ipv6 exynos_fimc_is exynos_fimc_lite
 s5p_csis v4l2_mem2mem videobuf2_dma_contig videobuf2_memops exynos4_is_common videobuf2_core [last unloaded: s5p_fimc]
[   77.685000] CPU: 0 PID : 2998 Comm: v4l_id Tainted: G        W   3.10.0-next-20130709-00039-g39f491b-dirty #1548
[   77.695000] task: ee084000 ti: ee46e000 task.ti: ee46e000
[   77.700000] PC is at __mutex_lock_slowpath+0x54/0x368
[   77.705000] LR is at __mutex_lock_slowpath+0x24/0x368
[   77.710000] pc : [&lt;c038dc10&gt;]    lr : [&lt;c038dbe0&gt;]    psr: 60000093
[   77.710000] sp : ee46fd70  ip : 000008c8  fp : c054e34c
[   77.725000] r10: ee084000  r9 : 00000000  r8 : ee439480
[   77.730000] r7 : ee46e000  r6 : 60000013  r5 : 00000290  r4 : 0000028c
[   77.735000] r3 : 00000000  r2 : 00000000  r1 : 20000093  r0 : 00000001
[   77.740000] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM Segment user
[   77.750000] Control: 10c5387d  Table: 6e7a804a  DAC: 00000015
[   77.755000] Process v4l_id (pid: 2998, stack limit = 0xee46e238)
[   77.760000] Stack: (0xee46fd70 to 0xee470000)
    	       ...
[   77.935000] [&lt;c038dc10&gt;] (__mutex_lock_slowpath+0x54/0x368) from [&lt;c038df30&gt;] (mutex_lock+0xc/0x24)
[   77.945000] [&lt;c038df30&gt;] (mutex_lock+0xc/0x24) from [&lt;bf03fa90&gt;] (fimc_lite_open+0x12c/0x2bc [exynos_fimc_lite])
[   77.955000] [&lt;bf03fa90&gt;] (fimc_lite_open+0x12c/0x2bc [exynos_fimc_lite]) from [&lt;c02ab11c&gt;] (v4l2_open+0xa0/0xe0)
[   77.965000] [&lt;c02ab11c&gt;] (v4l2_open+0xa0/0xe0) from [&lt;c00b1de4&gt;] (chrdev_open+0x88/0x170)
[   77.975000] [&lt;c00b1de4&gt;] (chrdev_open+0x88/0x170) from [&lt;c00ac710&gt;] (do_dentry_open.isra.14+0x1d8/0x258)
[   77.985000] [&lt;c00ac710&gt;] (do_dentry_open.isra.14+0x1d8/0x258) from [&lt;c00ac860&gt;] (finish_open+0x20/0x38)
[   77.995000] [&lt;c00ac860&gt;] (finish_open+0x20/0x38) from [&lt;c00ba658&gt;] (do_last.isra.43+0x538/0xb1c)
[   78.000000] [&lt;c00ba658&gt;] (do_last.isra.43+0x538/0xb1c) from [&lt;c00bacf0&gt;] (path_openat+0xb4/0x5c4)
[   78.010000] [&lt;c00bacf0&gt;] (path_openat+0xb4/0x5c4) from [&lt;c00bb4b4&gt;] (do_filp_open+0x2c/0x80)
[   78.020000] [&lt;c00bb4b4&gt;] (do_filp_open+0x2c/0x80) from [&lt;c00ad744&gt;] (do_sys_open+0xf4/0x1a8)
[   78.025000] [&lt;c00ad744&gt;] (do_sys_open+0xf4/0x1a8) from [&lt;c000e320&gt;] (ret_fast_syscall+0x0/0x30)
[   78.035000] Code: 1a000093 e10f6000 f10c0080 e2845004 (e1953f9f)

Reported-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>media: exynos-gsc: Register v4l2 device</title>
<updated>2013-09-27T00:21:51+00:00</updated>
<author>
<name>Arun Kumar K</name>
<email>arun.kk@samsung.com</email>
</author>
<published>2013-07-26T10:28:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=51a94c0a3514b2c528163c416cedd3e07b53c658'/>
<id>51a94c0a3514b2c528163c416cedd3e07b53c658</id>
<content type='text'>
commit d0b1c31349969973204fad21a076aecf131cc5e4 upstream.

Gscaler video device registration was happening without reference to
a parent v4l2_dev causing probe to fail. The patch creates a parent
v4l2 device and uses it for the gsc m2m video device registration.
This fixes regression introduced with comit commit 1c1d86a1ea07506
[media] v4l2: always require v4l2_dev, rename parent to dev_parent

Signed-off-by: Arun Kumar K &lt;arun.kk@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit d0b1c31349969973204fad21a076aecf131cc5e4 upstream.

Gscaler video device registration was happening without reference to
a parent v4l2_dev causing probe to fail. The patch creates a parent
v4l2 device and uses it for the gsc m2m video device registration.
This fixes regression introduced with comit commit 1c1d86a1ea07506
[media] v4l2: always require v4l2_dev, rename parent to dev_parent

Signed-off-by: Arun Kumar K &lt;arun.kk@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>media: exynos4-is: Fix fimc-lite bayer formats</title>
<updated>2013-09-27T00:21:47+00:00</updated>
<author>
<name>Arun Kumar K</name>
<email>arun.kk@samsung.com</email>
</author>
<published>2013-07-15T10:51:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=04d49c323237a3e9ed15b13808ea55ec06310ba7'/>
<id>04d49c323237a3e9ed15b13808ea55ec06310ba7</id>
<content type='text'>
commit 3396b096c54a84603c51bd705effa88f7f5b0d76 upstream.

The 10-bit and 12-bit Bayer output formats supported by FIMC-LITE
actually use 16 bits where the extra bits are padded with zeros.
The patch corrects buffer allocation for these two formats by
modifying the depth field. This prevents memory corruption by the
output DMA due to insufficient buffer size.

Signed-off-by: Arun Kumar K &lt;arun.kk@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 3396b096c54a84603c51bd705effa88f7f5b0d76 upstream.

The 10-bit and 12-bit Bayer output formats supported by FIMC-LITE
actually use 16 bits where the extra bits are padded with zeros.
The patch corrects buffer allocation for these two formats by
modifying the depth field. This prevents memory corruption by the
output DMA due to insufficient buffer size.

Signed-off-by: Arun Kumar K &lt;arun.kk@samsung.com&gt;
Signed-off-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media</title>
<updated>2013-08-09T22:04:09+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2013-08-09T22:04:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=79a6fb1acec93ef829a59d88429aafddf42793d3'/>
<id>79a6fb1acec93ef829a59d88429aafddf42793d3</id>
<content type='text'>
Pull media fixes from Mauro Carvalho Chehab:
 "Some driver fixes (em28xx, coda, usbtv, s5p, hdpvr and ml86v7667) and
  a fix for media DocBook"

* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
  [media] em28xx: fix assignment of the eeprom data
  [media] hdpvr: fix iteration over uninitialized lists in hdpvr_probe()
  [media] usbtv: fix dependency
  [media] usbtv: Throw corrupted frames away
  [media] usbtv: Fix deinterlacing
  [media] v4l2: added missing mutex.h include to v4l2-ctrls.h
  [media] DocBook: upgrade media_api DocBook version to 4.2
  [media] ml86v7667: fix compile warning: 'ret' set but not used
  [media] s5p-g2d: Fix registration failure
  [media] media: coda: Fix DT driver data pointer for i.MX27
  [media] s5p-mfc: Fix input/output format reporting
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull media fixes from Mauro Carvalho Chehab:
 "Some driver fixes (em28xx, coda, usbtv, s5p, hdpvr and ml86v7667) and
  a fix for media DocBook"

* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
  [media] em28xx: fix assignment of the eeprom data
  [media] hdpvr: fix iteration over uninitialized lists in hdpvr_probe()
  [media] usbtv: fix dependency
  [media] usbtv: Throw corrupted frames away
  [media] usbtv: Fix deinterlacing
  [media] v4l2: added missing mutex.h include to v4l2-ctrls.h
  [media] DocBook: upgrade media_api DocBook version to 4.2
  [media] ml86v7667: fix compile warning: 'ret' set but not used
  [media] s5p-g2d: Fix registration failure
  [media] media: coda: Fix DT driver data pointer for i.MX27
  [media] s5p-mfc: Fix input/output format reporting
</pre>
</div>
</content>
</entry>
<entry>
<title>[media] em28xx: fix assignment of the eeprom data</title>
<updated>2013-07-26T15:28:03+00:00</updated>
<author>
<name>Alban Browaeys</name>
<email>alban.browaeys@gmail.com</email>
</author>
<published>2013-07-16T21:57:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f813b5775b471b656382ae8f087bb34dc894261f'/>
<id>f813b5775b471b656382ae8f087bb34dc894261f</id>
<content type='text'>
Set the config structure pointer to the eeprom data pointer (data,
here eedata dereferenced) not the pointer to the pointer to
the eeprom data (eedata itself).

Signed-off-by: Alban Browaeys &lt;prahal@yahoo.com&gt;
Signed-off-by: Frank Schäfer &lt;fschaefer.oss@googlemail.com&gt;
Cc: stable@vger.kernel.org      # for v3.10
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Set the config structure pointer to the eeprom data pointer (data,
here eedata dereferenced) not the pointer to the pointer to
the eeprom data (eedata itself).

Signed-off-by: Alban Browaeys &lt;prahal@yahoo.com&gt;
Signed-off-by: Frank Schäfer &lt;fschaefer.oss@googlemail.com&gt;
Cc: stable@vger.kernel.org      # for v3.10
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[media] hdpvr: fix iteration over uninitialized lists in hdpvr_probe()</title>
<updated>2013-07-26T13:32:48+00:00</updated>
<author>
<name>Alexey Khoroshilov</name>
<email>khoroshilov@ispras.ru</email>
</author>
<published>2013-07-03T19:17:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e2f11c58ae49d57b0e634685dd944c1771ba38c0'/>
<id>e2f11c58ae49d57b0e634685dd944c1771ba38c0</id>
<content type='text'>
free_buff_list and rec_buff_list are initialized in the middle of hdpvr_probe(),
but if something bad happens before that, error handling code calls hdpvr_delete(),
which contains iteration over the lists (via hdpvr_free_buffers()).
The patch moves the lists initialization to the beginning and by the way fixes
goto label in error handling of registering videodev.
Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov &lt;khoroshilov@ispras.ru&gt;
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
free_buff_list and rec_buff_list are initialized in the middle of hdpvr_probe(),
but if something bad happens before that, error handling code calls hdpvr_delete(),
which contains iteration over the lists (via hdpvr_free_buffers()).
The patch moves the lists initialization to the beginning and by the way fixes
goto label in error handling of registering videodev.
Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov &lt;khoroshilov@ispras.ru&gt;
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[media] usbtv: fix dependency</title>
<updated>2013-07-26T13:32:16+00:00</updated>
<author>
<name>Hans Verkuil</name>
<email>hverkuil@xs4all.nl</email>
</author>
<published>2013-06-28T07:24:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4f24abb51ffe24d1a1442fdd3648a2e521487c1b'/>
<id>4f24abb51ffe24d1a1442fdd3648a2e521487c1b</id>
<content type='text'>
This fixes a dependency problem as found by Randy Dunlap:
https://lkml.org/lkml/2013/6/27/501

Reported-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes a dependency problem as found by Randy Dunlap:
https://lkml.org/lkml/2013/6/27/501

Reported-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;m.chehab@samsung.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
