<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/media/usb/dvb-usb, branch linux-5.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.17.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.17.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-12-14T14:09:14Z</updated>
<entry>
<title>media: dw2102: Fix use after free</title>
<updated>2021-12-14T14:09:14Z</updated>
<author>
<name>Anton Vasilyev</name>
</author>
<published>2019-08-22T10:41:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=589a9f0eb799f77de2c09583bf5bad221fa5d685'/>
<id>urn:sha1:589a9f0eb799f77de2c09583bf5bad221fa5d685</id>
<content type='text'>
dvb_usb_device_init stores parts of properties at d-&gt;props
and d-&gt;desc and uses it on dvb_usb_device_exit.
Free of properties on module probe leads to use after free.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204597

The patch makes properties static instead of allocated on heap to prevent
memleak and use after free.
Also fixes s421_properties.devices initialization to have 2 element
instead of 6 copied from p7500_properties.

[mchehab: fix function call alignments]
Link: https://lore.kernel.org/linux-media/20190822104147.4420-1-vasilyev@ispras.ru
Signed-off-by: Anton Vasilyev &lt;vasilyev@ispras.ru&gt;
Fixes: 299c7007e936 ("media: dw2102: Fix memleak on sequence of probes")
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: m920x: don't use stack on USB reads</title>
<updated>2021-12-07T10:29:58Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2021-12-06T14:34:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a2ab06d7c4d6bfd0b545a768247a70463e977e27'/>
<id>urn:sha1:a2ab06d7c4d6bfd0b545a768247a70463e977e27</id>
<content type='text'>
Using stack-allocated pointers for USB message data don't work.
This driver is almost OK with that, except for the I2C read
logic.

Fix it by using a temporary read buffer, just like on all other
calls to m920x_read().

Link: https://lore.kernel.org/all/ccc99e48-de4f-045e-0fe4-61e3118e3f74@mida.se/
Reported-by: rkardell@mida.se
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dib0700: Only touch one bit when start/stop an adapter</title>
<updated>2021-11-19T16:24:07Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2021-09-26T20:51:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c50fdd1546ea1f3e085a955ab553008e8eb4d6a3'/>
<id>urn:sha1:c50fdd1546ea1f3e085a955ab553008e8eb4d6a3</id>
<content type='text'>
Only touch the right bit to enable/disable an adapter channel,
without touching the other adapter's one.

Tested on Nova-TD.

Link: https://lore.kernel.org/linux-media/4214942f248baddec9cfd2b4b2424993ac356a51.1632689033.git.mchehab+huawei@kernel.org

Cc: linuxarm@huawei.com, mauro.chehab@huawei.com, Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;, Mauro Carvalho Chehab &lt;mchehab@kernel.org&gt;, Michael Kuron &lt;michael.kuron@gmail.com&gt;, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, pb@linuxtv.org
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dib0700: cleanup start/stop streaming logic</title>
<updated>2021-11-19T16:23:42Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2021-09-26T20:51:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e08d8f0fadad540ecd134724a7d6b519823e4637'/>
<id>urn:sha1:e08d8f0fadad540ecd134724a7d6b519823e4637</id>
<content type='text'>
Having two different paths to start/stop streaming, depending
weather the USB endpoints are 0x82/0x83 or not makes it more
prune to errors.

Unify the logic.

Link: https://lore.kernel.org/linux-media/065a6fff925a42153671fa5202c81882ca12c59c.1632689033.git.mchehab+huawei@kernel.org

Cc: linuxarm@huawei.com, mauro.chehab@huawei.com, Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;, Mauro Carvalho Chehab &lt;mchehab@kernel.org&gt;, Michael Kuron &lt;michael.kuron@gmail.com&gt;, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, pb@linuxtv.org
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dib0700: fix undefined behavior in tuner shutdown</title>
<updated>2021-11-19T16:22:42Z</updated>
<author>
<name>Michael Kuron</name>
</author>
<published>2021-09-26T20:51:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7b77ebe6d2f49c7747b2d619586d1aa33f9ea91'/>
<id>urn:sha1:f7b77ebe6d2f49c7747b2d619586d1aa33f9ea91</id>
<content type='text'>
This fixes a problem where closing the tuner would leave it in a state
where it would not tune to any channel when reopened. This problem was
discovered as part of https://github.com/hselasky/webcamd/issues/16.

Since adap-&gt;id is 0 or 1, this bit-shift overflows, which is undefined
behavior. The driver still worked in practice as the overflow would in
most environments result in 0, which rendered the line a no-op. When
running the driver as part of webcamd however, the overflow could lead
to 0xff due to optimizations by the compiler, which would, in the end,
improperly shut down the tuner.

The bug is a regression introduced in the commit referenced below. The
present patch causes identical behavior to before that commit for
adap-&gt;id equal to 0 or 1. The driver does not contain support for
dib0700 devices with more adapters, assuming such even exist.

Tests have been performed with the Xbox One Digital TV Tuner on amd64.
Not all dib0700 devices are expected to be affected by the regression;
this code path is only taken by those with incorrect endpoint numbers.

Link: https://lore.kernel.org/linux-media/1d2fc36d94ced6f67c7cc21dcc469d5e5bdd8201.1632689033.git.mchehab+huawei@kernel.org

Cc: stable@vger.kernel.org
Fixes: 7757ddda6f4f ("[media] DiB0700: add function to change I2C-speed")
Signed-off-by: Michael Kuron &lt;michael.kuron@gmail.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte()</title>
<updated>2021-10-08T11:54:43Z</updated>
<author>
<name>Anant Thazhemadam</name>
</author>
<published>2020-12-07T06:16:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=899a61a3305d49e8a712e9ab20d0db94bde5929f'/>
<id>urn:sha1:899a61a3305d49e8a712e9ab20d0db94bde5929f</id>
<content type='text'>
In dibusb_read_eeprom_byte(), if dibusb_i2c_msg() fails, val gets
assigned an value that's not properly initialized.
Using kzalloc() in place of kmalloc() for the buffer fixes this issue,
as the val can now be set to 0 in the event dibusb_i2c_msg() fails.

Reported-by: syzbot+e27b4fd589762b0b9329@syzkaller.appspotmail.com
Tested-by: syzbot+e27b4fd589762b0b9329@syzkaller.appspotmail.com
Signed-off-by: Anant Thazhemadam &lt;anant.thazhemadam@gmail.com&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dvb-usb: fix ununit-value in az6027_rc_query</title>
<updated>2021-09-30T08:07:43Z</updated>
<author>
<name>Pavel Skripkin</name>
</author>
<published>2021-08-13T14:34:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=afae4ef7d5ad913cab1316137854a36bea6268a5'/>
<id>urn:sha1:afae4ef7d5ad913cab1316137854a36bea6268a5</id>
<content type='text'>
Syzbot reported ununit-value bug in az6027_rc_query(). The problem was
in missing state pointer initialization. Since this function does nothing
we can simply initialize state to REMOTE_NO_KEY_PRESSED.

Reported-and-tested-by: syzbot+2cd8c5db4a85f0a04142@syzkaller.appspotmail.com

Fixes: 76f9a820c867 ("V4L/DVB: AZ6027: Initial import of the driver")
Signed-off-by: Pavel Skripkin &lt;paskripkin@gmail.com&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dvb-usb: Fix error handling in dvb_usb_i2c_init</title>
<updated>2021-07-22T06:23:15Z</updated>
<author>
<name>Dongliang Mu</name>
</author>
<published>2021-06-21T05:07:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=131ae388b88e3daf4cb0721ed4b4cb8bfc201465'/>
<id>urn:sha1:131ae388b88e3daf4cb0721ed4b4cb8bfc201465</id>
<content type='text'>
In dvb_usb_i2c_init, if i2c_add_adapter fails, it only prints an error
message, and then continues to set DVB_USB_STATE_I2C. This affects the
logic of dvb_usb_i2c_exit, which leads to that, the deletion of i2c_adap
even if the i2c_add_adapter fails.

Fix this by returning at the failure of i2c_add_adapter and then move
dvb_usb_i2c_exit out of the error handling code of dvb_usb_i2c_init.

Fixes: 13a79f14ab28 ("media: dvb-usb: Fix memory leak at error in dvb_usb_device_init()")
Signed-off-by: Dongliang Mu &lt;mudongliangabcd@gmail.com&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dvb-usb: fix uninit-value in vp702x_read_mac_addr</title>
<updated>2021-07-22T06:22:45Z</updated>
<author>
<name>Dongliang Mu</name>
</author>
<published>2021-06-25T05:59:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=797c061ad715a9a1480eb73f44b6939fbe3209ed'/>
<id>urn:sha1:797c061ad715a9a1480eb73f44b6939fbe3209ed</id>
<content type='text'>
If vp702x_usb_in_op fails, the mac address is not initialized.
And vp702x_read_mac_addr does not handle this failure, which leads to
the uninit-value in dvb_usb_adapter_dvb_init.

Fix this by handling the failure of vp702x_usb_in_op.

Fixes: 786baecfe78f ("[media] dvb-usb: move it to drivers/media/usb/dvb-usb")
Signed-off-by: Dongliang Mu &lt;mudongliangabcd@gmail.com&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init</title>
<updated>2021-07-22T06:22:17Z</updated>
<author>
<name>Dongliang Mu</name>
</author>
<published>2021-06-25T05:33:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c5453769f77ce19a5b03f1f49946fd3f8a374009'/>
<id>urn:sha1:c5453769f77ce19a5b03f1f49946fd3f8a374009</id>
<content type='text'>
If dibusb_read_eeprom_byte fails, the mac address is not initialized.
And nova_t_read_mac_address does not handle this failure, which leads to
the uninit-value in dvb_usb_adapter_dvb_init.

Fix this by handling the failure of dibusb_read_eeprom_byte.

Reported-by: syzbot+e27b4fd589762b0b9329@syzkaller.appspotmail.com
Fixes: 786baecfe78f ("[media] dvb-usb: move it to drivers/media/usb/dvb-usb")
Signed-off-by: Dongliang Mu &lt;mudongliangabcd@gmail.com&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
</feed>
