<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux.git/drivers/media/dvb-frontends, branch linux-4.4.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=linux-4.4.y</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=linux-4.4.y'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/'/>
<updated>2022-01-27T07:46:14+00:00</updated>
<entry>
<title>media: dib8000: Fix a memleak in dib8000_init()</title>
<updated>2022-01-27T07:46:14+00:00</updated>
<author>
<name>Zhou Qingyang</name>
<email>zhou1615@umn.edu</email>
</author>
<published>2021-11-30T15:38:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=86d2d3a4fe805c315566f6998ccd3234c89ea166'/>
<id>urn:sha1:86d2d3a4fe805c315566f6998ccd3234c89ea166</id>
<content type='text'>
[ Upstream commit 8dbdcc7269a83305ee9d677b75064d3530a48ee2 ]

In dib8000_init(), the variable fe is not freed or passed out on the
failure of dib8000_identify(&amp;state-&gt;i2c), which could lead to a memleak.

Fix this bug by adding a kfree of fe in the error path.

This bug was found by a static analyzer. The analysis employs
differential checking to identify inconsistent security operations
(e.g., checks or kfrees) between two code paths and confirms that the
inconsistent operations are not recovered in the current function or
the callers, so they constitute bugs.

Note that, as a bug found by static analysis, it can be a false
positive or hard to trigger. Multiple researchers have cross-reviewed
the bug.

Builds with CONFIG_DVB_DIB8000=m show no new warnings,
and our static analyzer no longer warns about this code.

Fixes: 77e2c0f5d471 ("V4L/DVB (12900): DiB8000: added support for DiBcom ISDB-T/ISDB-Tsb demodulator DiB8000")
Signed-off-by: Zhou Qingyang &lt;zhou1615@umn.edu&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dvb: Add check on sp8870_readreg return</title>
<updated>2021-06-03T06:22:08+00:00</updated>
<author>
<name>Alaa Emad</name>
<email>alaaemadhossney.ae@gmail.com</email>
</author>
<published>2021-05-03T11:57:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=f7adc025facdc000053bfd89f552e3c33ed5cd22'/>
<id>urn:sha1:f7adc025facdc000053bfd89f552e3c33ed5cd22</id>
<content type='text'>
[ Upstream commit c6d822c56e7fd29e6fa1b1bb91b98f6a1e942b3c ]

The function sp8870_readreg returns a negative value when i2c_transfer
fails so properly check for this and return the error if it happens.

Cc: Sean Young &lt;sean@mess.org&gt;
Cc: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Alaa Emad &lt;alaaemadhossney.ae@gmail.com&gt;
Link: https://lore.kernel.org/r/20210503115736.2104747-60-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: tda10071: fix unsigned sign extension overflow</title>
<updated>2020-10-01T09:11:53+00:00</updated>
<author>
<name>Colin Ian King</name>
<email>colin.king@canonical.com</email>
</author>
<published>2020-02-10T14:26:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=d807d04a0e9ff0a9867064957fb7eb131ae7220c'/>
<id>urn:sha1:d807d04a0e9ff0a9867064957fb7eb131ae7220c</id>
<content type='text'>
[ Upstream commit a7463e2dc698075132de9905b89f495df888bb79 ]

The shifting of buf[3] by 24 bits to the left will be promoted to
a 32 bit signed int and then sign-extended to an unsigned long. In
the unlikely event that the the top bit of buf[3] is set then all
then all the upper bits end up as also being set because of
the sign-extension and this affect the ev-&gt;post_bit_error sum.
Fix this by using the temporary u32 variable bit_error to avoid
the sign-extension promotion. This also removes the need to do the
computation twice.

Addresses-Coverity: ("Unintended sign extension")

Fixes: 267897a4708f ("[media] tda10071: implement DVBv5 statistics")
Signed-off-by: Colin Ian King &lt;colin.king@canonical.com&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>tua6100: Avoid build warnings.</title>
<updated>2019-08-04T07:34:44+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2019-05-30T18:36:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=3c910e70dcf004e2f2de7c359847945bc3510996'/>
<id>urn:sha1:3c910e70dcf004e2f2de7c359847945bc3510996</id>
<content type='text'>
[ Upstream commit 621ccc6cc5f8d6730b740d31d4818227866c93c9 ]

Rename _P to _P_VAL and _R to _R_VAL to avoid global
namespace conflicts:

drivers/media/dvb-frontends/tua6100.c: In function ‘tua6100_set_params’:
drivers/media/dvb-frontends/tua6100.c:79: warning: "_P" redefined
 #define _P 32

In file included from ./include/acpi/platform/aclinux.h:54,
                 from ./include/acpi/platform/acenv.h:152,
                 from ./include/acpi/acpi.h:22,
                 from ./include/linux/acpi.h:34,
                 from ./include/linux/i2c.h:17,
                 from drivers/media/dvb-frontends/tua6100.h:30,
                 from drivers/media/dvb-frontends/tua6100.c:32:
./include/linux/ctype.h:14: note: this is the location of the previous definition
 #define _P 0x10 /* punct */

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: m88ds3103: serialize reset messages in m88ds3103_set_frontend</title>
<updated>2019-06-11T10:24:05+00:00</updated>
<author>
<name>James Hutchinson</name>
<email>jahutchinson99@googlemail.com</email>
</author>
<published>2019-01-13T21:13:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0e9f0805eeea985fd252fa285edbe67248974233'/>
<id>urn:sha1:0e9f0805eeea985fd252fa285edbe67248974233</id>
<content type='text'>
[ Upstream commit 981fbe3da20a6f35f17977453bce7dfc1664d74f ]

Ref: https://bugzilla.kernel.org/show_bug.cgi?id=199323

Users are experiencing problems with the DVBSky S960/S960C USB devices
since the following commit:

9d659ae: ("locking/mutex: Add lock handoff to avoid starvation")

The device malfunctions after running for an indeterminable period of
time, and the problem can only be cleared by rebooting the machine.

It is possible to encourage the problem to surface by blocking the
signal to the LNB.

Further debugging revealed the cause of the problem.

In the following capture:
- thread #1325 is running m88ds3103_set_frontend
- thread #42 is running ts2020_stat_work

a&gt; [1325] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 68 02 07 80
   [1325] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 08
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 09 01 01 68 3f
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 08 ff
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 68 02 03 11
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 09 01 01 60 3d
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07 ff
b&gt; [1325] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 68 02 07 00
   [1325] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 68 02 03 11
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 09 01 01 60 21
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07 ff
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 68 02 03 11
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07
   [42] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 09 01 01 60 66
   [42] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07 ff
   [1325] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 68 02 03 11
   [1325] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07
   [1325] usb 1-1: dvb_usb_v2_generic_io: &gt;&gt;&gt; 08 60 02 10 0b
   [1325] usb 1-1: dvb_usb_v2_generic_io: &lt;&lt;&lt; 07

Two i2c messages are sent to perform a reset in m88ds3103_set_frontend:

  a. 0x07, 0x80
  b. 0x07, 0x00

However, as shown in the capture, the regmap mutex is being handed over
to another thread (ts2020_stat_work) in between these two messages.

&gt;From here, the device responds to every i2c message with an 07 message,
and will only return to normal operation following a power cycle.

Use regmap_multi_reg_write to group the two reset messages, ensuring
both are processed before the regmap mutex is unlocked.

Signed-off-by: James Hutchinson &lt;jahutchinson99@googlemail.com&gt;
Reviewed-by: Antti Palosaari &lt;crope@iki.fi&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dvb-frontends: fix i2c access helpers for KASAN</title>
<updated>2018-12-17T20:55:17+00:00</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2017-11-30T16:55:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=dc4bc70259daba144f799e40a99413a86c601006'/>
<id>urn:sha1:dc4bc70259daba144f799e40a99413a86c601006</id>
<content type='text'>
commit 3cd890dbe2a4f14cc44c85bb6cf37e5e22d4dd0e upstream.

A typical code fragment was copied across many dvb-frontend drivers and
causes large stack frames when built with with CONFIG_KASAN on gcc-5/6/7:

drivers/media/dvb-frontends/cxd2841er.c:3225:1: error: the frame size of 3992 bytes is larger than 3072 bytes [-Werror=frame-larger-than=]
drivers/media/dvb-frontends/cxd2841er.c:3404:1: error: the frame size of 3136 bytes is larger than 3072 bytes [-Werror=frame-larger-than=]
drivers/media/dvb-frontends/stv0367.c:3143:1: error: the frame size of 4016 bytes is larger than 3072 bytes [-Werror=frame-larger-than=]
drivers/media/dvb-frontends/stv090x.c:3430:1: error: the frame size of 5312 bytes is larger than 3072 bytes [-Werror=frame-larger-than=]
drivers/media/dvb-frontends/stv090x.c:4248:1: error: the frame size of 4872 bytes is larger than 3072 bytes [-Werror=frame-larger-than=]

gcc-8 now solves this by consolidating the stack slots for the argument
variables, but on older compilers we can get the same behavior by taking
the pointer of a local variable rather than the inline function argument.

Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81715

Cc: stable@vger.kernel.org
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: [RESEND] media: dvb-frontends: Add delay to Si2168 restart</title>
<updated>2018-03-24T09:58:47+00:00</updated>
<author>
<name>Ron Economos</name>
<email>w6rz@comcast.net</email>
</author>
<published>2017-12-12T00:51:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=17a660a3487ef785f93dfc35df30869450378303'/>
<id>urn:sha1:17a660a3487ef785f93dfc35df30869450378303</id>
<content type='text'>
[ Upstream commit 380a6c86457573aa42d27ae11e025eb25941a0b7 ]

On faster CPUs a delay is required after the resume command and the restart command. Without the delay, the restart command often returns -EREMOTEIO and the Si2168 does not restart.

Note that this patch fixes the same issue as https://patchwork.linuxtv.org/patch/44304/, but I believe my udelay() fix addresses the actual problem.

Signed-off-by: Ron Economos &lt;w6rz@comcast.net&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@microsoft.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>media: m88ds3103: don't call a non-initalized function</title>
<updated>2018-03-11T15:19:44+00:00</updated>
<author>
<name>Mauro Carvalho Chehab</name>
<email>mchehab@s-opensource.com</email>
</author>
<published>2018-02-10T11:14:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0dfc2fb61c79dbd4e99152525e193ae054dc86d3'/>
<id>urn:sha1:0dfc2fb61c79dbd4e99152525e193ae054dc86d3</id>
<content type='text'>
commit b9c97c67fd19262c002d94ced2bfb513083e161e upstream.

If m88d3103 chip ID is not recognized, the device is not initialized.

However, it returns from probe without any error, causing this OOPS:

[    7.689289] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[    7.689297] pgd = 7b0bd7a7
[    7.689302] [00000000] *pgd=00000000
[    7.689318] Internal error: Oops: 80000005 [#1] SMP ARM
[    7.689322] Modules linked in: dvb_usb_dvbsky(+) m88ds3103 dvb_usb_v2 dvb_core videobuf2_vmalloc videobuf2_memops videobuf2_core crc32_arm_ce videodev media
[    7.689358] CPU: 3 PID: 197 Comm: systemd-udevd Not tainted 4.15.0-mcc+ #23
[    7.689361] Hardware name: BCM2835
[    7.689367] PC is at 0x0
[    7.689382] LR is at m88ds3103_attach+0x194/0x1d0 [m88ds3103]
[    7.689386] pc : [&lt;00000000&gt;]    lr : [&lt;bf0ae1ec&gt;]    psr: 60000013
[    7.689391] sp : ed8e5c20  ip : ed8c1e00  fp : ed8945c0
[    7.689395] r10: ed894000  r9 : ed894378  r8 : eda736c0
[    7.689400] r7 : ed894070  r6 : ed8e5c44  r5 : bf0bb040  r4 : eda77600
[    7.689405] r3 : 00000000  r2 : 00000000  r1 : 00000000  r0 : eda77600
[    7.689412] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
[    7.689417] Control: 10c5383d  Table: 2d8e806a  DAC: 00000051
[    7.689423] Process systemd-udevd (pid: 197, stack limit = 0xe9dbfb63)
[    7.689428] Stack: (0xed8e5c20 to 0xed8e6000)
[    7.689439] 5c20: ed853a80 eda73640 ed894000 ed8942c0 ed853a80 bf0b9e98 ed894070 bf0b9f10
[    7.689449] 5c40: 00000000 00000000 bf08c17c c08dfc50 00000000 00000000 00000000 00000000
[    7.689459] 5c60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    7.689468] 5c80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    7.689479] 5ca0: 00000000 00000000 ed8945c0 ed8942c0 ed894000 ed894830 bf0b9e98 00000000
[    7.689490] 5cc0: ed894378 bf0a3cb4 bf0bc3b0 0000533b ed920540 00000000 00000034 bf0a6434
[    7.689500] 5ce0: ee952070 ed826600 bf0a7038 bf0a2dd8 00000001 bf0a6768 bf0a2f90 ed8943c0
[    7.689511] 5d00: 00000000 c08eca68 ed826620 ed826620 00000000 ee952070 bf0bc034 ee952000
[    7.689521] 5d20: ed826600 bf0bb080 ffffffed c0aa9e9c c0aa9dac ed826620 c16edf6c c168c2c8
[    7.689531] 5d40: c16edf70 00000000 bf0bc034 0000000d 00000000 c08e268c bf0bb080 ed826600
[    7.689541] 5d60: bf0bc034 ed826654 ed826620 bf0bc034 c164c8bc 00000000 00000001 00000000
[    7.689553] 5d80: 00000028 c08e2948 00000000 bf0bc034 c08e2848 c08e0778 ee9f0a58 ed88bab4
[    7.689563] 5da0: bf0bc034 ed90ba80 c168c1f0 c08e1934 bf0bb3bc c17045ac bf0bc034 c164c8bc
[    7.689574] 5dc0: bf0bc034 bf0bb3bc ed91f564 c08e34ec bf0bc000 c164c8bc bf0bc034 c0aa8dc4
[    7.689584] 5de0: ffffe000 00000000 bf0bf000 ed91f600 ed91f564 c03021e4 00000001 00000000
[    7.689595] 5e00: c166e040 8040003f ed853a80 bf0bc448 00000000 c1678174 ed853a80 f0f22000
[    7.689605] 5e20: f0f21fff 8040003f 014000c0 ed91e700 ed91e700 c16d8e68 00000001 ed91e6c0
[    7.689615] 5e40: bf0bc400 00000001 bf0bc400 ed91f564 00000001 00000000 00000028 c03c9a24
[    7.689625] 5e60: 00000001 c03c8c94 ed8e5f50 ed8e5f50 00000001 bf0bc400 ed91f540 c03c8cb0
[    7.689637] 5e80: bf0bc40c 00007fff bf0bc400 c03c60b0 00000000 bf0bc448 00000028 c0e09684
[    7.689647] 5ea0: 00000002 bf0bc530 c1234bf8 bf0bc5dc bf0bc514 c10ebbe8 ffffe000 bf000000
[    7.689657] 5ec0: 00011538 00000000 ed8e5f48 00000000 00000000 00000000 00000000 00000000
[    7.689666] 5ee0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    7.689676] 5f00: 00000000 00000000 7fffffff 00000000 00000013 b6e55a18 0000017b c0309104
[    7.689686] 5f20: ed8e4000 00000000 00510af0 c03c9430 7fffffff 00000000 00000003 00000000
[    7.689697] 5f40: 00000000 f0f0f000 00011538 00000000 f0f107b0 f0f0f000 00011538 f0f1fdb8
[    7.689707] 5f60: f0f1fbe8 f0f1b974 00004000 000041e0 bf0bc3d0 00000001 00000000 000024c4
[    7.689717] 5f80: 0000002d 0000002e 00000019 00000000 00000010 00000000 16894000 00000000
[    7.689727] 5fa0: 00000000 c0308f20 16894000 00000000 00000013 b6e55a18 00000000 b6e5652c
[    7.689737] 5fc0: 16894000 00000000 00000000 0000017b 00020000 00508110 00000000 00510af0
[    7.689748] 5fe0: bef68948 bef68938 b6e4d3d0 b6d32590 60000010 00000013 00000000 00000000
[    7.689790] [&lt;bf0ae1ec&gt;] (m88ds3103_attach [m88ds3103]) from [&lt;bf0b9f10&gt;] (dvbsky_s960c_attach+0x78/0x280 [dvb_usb_dvbsky])
[    7.689821] [&lt;bf0b9f10&gt;] (dvbsky_s960c_attach [dvb_usb_dvbsky]) from [&lt;bf0a3cb4&gt;] (dvb_usbv2_probe+0xa3c/0x1024 [dvb_usb_v2])
[    7.689849] [&lt;bf0a3cb4&gt;] (dvb_usbv2_probe [dvb_usb_v2]) from [&lt;c0aa9e9c&gt;] (usb_probe_interface+0xf0/0x2a8)
[    7.689869] [&lt;c0aa9e9c&gt;] (usb_probe_interface) from [&lt;c08e268c&gt;] (driver_probe_device+0x2f8/0x4b4)
[    7.689881] [&lt;c08e268c&gt;] (driver_probe_device) from [&lt;c08e2948&gt;] (__driver_attach+0x100/0x11c)
[    7.689895] [&lt;c08e2948&gt;] (__driver_attach) from [&lt;c08e0778&gt;] (bus_for_each_dev+0x4c/0x9c)
[    7.689909] [&lt;c08e0778&gt;] (bus_for_each_dev) from [&lt;c08e1934&gt;] (bus_add_driver+0x1c0/0x264)
[    7.689919] [&lt;c08e1934&gt;] (bus_add_driver) from [&lt;c08e34ec&gt;] (driver_register+0x78/0xf4)
[    7.689931] [&lt;c08e34ec&gt;] (driver_register) from [&lt;c0aa8dc4&gt;] (usb_register_driver+0x70/0x134)
[    7.689946] [&lt;c0aa8dc4&gt;] (usb_register_driver) from [&lt;c03021e4&gt;] (do_one_initcall+0x44/0x168)
[    7.689963] [&lt;c03021e4&gt;] (do_one_initcall) from [&lt;c03c9a24&gt;] (do_init_module+0x64/0x1f4)
[    7.689979] [&lt;c03c9a24&gt;] (do_init_module) from [&lt;c03c8cb0&gt;] (load_module+0x20a0/0x25c8)
[    7.689993] [&lt;c03c8cb0&gt;] (load_module) from [&lt;c03c9430&gt;] (SyS_finit_module+0xb4/0xec)
[    7.690007] [&lt;c03c9430&gt;] (SyS_finit_module) from [&lt;c0308f20&gt;] (ret_fast_syscall+0x0/0x54)
[    7.690018] Code: bad PC value

This may happen on normal circumstances, if, for some reason, the demod
hangs and start returning an invalid chip ID:

[   10.394395] m88ds3103 3-0068: Unknown device. Chip_id=00

So, change the logic to cause probe to fail with -ENODEV, preventing
the OOPS.

Detected while testing DVB MMAP patches on Raspberry Pi 3 with
DVBSky S960CI.

Cc: stable@vger.kernel.org
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>media: ts2020: avoid integer overflows on 32 bit machines</title>
<updated>2018-02-16T19:09:45+00:00</updated>
<author>
<name>Mauro Carvalho Chehab</name>
<email>mchehab@s-opensource.com</email>
</author>
<published>2018-01-10T12:20:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=6b3bfe719b65a19349c65ef112ad61e64b7068c0'/>
<id>urn:sha1:6b3bfe719b65a19349c65ef112ad61e64b7068c0</id>
<content type='text'>
commit 81742be14b6a90c9fd0ff6eb4218bdf696ad8e46 upstream.

Before this patch, when compiled for arm32, the signal strength
were reported as:

Lock   (0x1f) Signal= 4294908.66dBm C/N= 12.79dB

Because of a 32 bit integer overflow. After it, it is properly
reported as:

	Lock   (0x1f) Signal= -58.64dBm C/N= 12.79dB

Fixes: 0f91c9d6bab9 ("[media] TS2020: Calculate tuner gain correctly")
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>dvb-frontends/cxd2841er: define symbol_rate_min/max in T/C fe-ops</title>
<updated>2017-05-25T12:30:14+00:00</updated>
<author>
<name>Daniel Scheller</name>
<email>d.scheller@gmx.net</email>
</author>
<published>2017-03-19T15:26:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=f7c778fa707d9ba6a01788bdd58728f5749d6fde'/>
<id>urn:sha1:f7c778fa707d9ba6a01788bdd58728f5749d6fde</id>
<content type='text'>
commit 158f0328af86a99d64073851967a02694bff987d upstream.

Fixes "w_scan -f c" complaining with

  This dvb driver is *buggy*: the symbol rate limits are undefined - please
  report to linuxtv.org)

Signed-off-by: Daniel Scheller &lt;d.scheller@gmx.net&gt;
Acked-by: Abylay Ospan &lt;aospan@netup.ru&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
