linux_dsm_epyc7002/drivers/media/dvb/dvb-core
Michael Krufky ae53020527 [media] DVB: improve handling of TS packets containing a raised TEI bit
When the TEI bit is raised, we should not trust any of the contents of
the packet in question, including but not limited to its PID number.

Considering that we don't trust the PID number of this packet, we should
not proceed to check the packet counter (if dvb_demux_tscheck is set).

We should expect to see at least one discontinuity after a bad packet is
received, so any time a TEI is detected, a following TS packet counter
mismatch is to be expected.

There is no real reason to ever allow bad packets to pass through the
kernel demux, other than for purposes of attempting error correction via
software or statistical information.

However, since we have always passed these bad packets though the demux,
we should not change this default behavior.

Without altering module options, this patch merely prevents the
TS packet counter check on packets containing a raised TEI.

If module option dvb_demux_feed_err_pkts is set to 0, the kernel demux
will drop these error packets entirely, preventing any possibility of
corruption caused by userspace programs that are expecting valid data.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2012-08-13 19:51:33 -03:00
..
demux.h
dmxdev.c [media] dvb: use %*ph to hexdump small buffers 2012-08-13 16:39:33 -03:00
dmxdev.h include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dvb_ca_en50221.c [media] dvb_ca_en50221: fix compilation breakage 2012-01-10 19:15:45 -02:00
dvb_ca_en50221.h V4L/DVB (9054): implement proper locking in the dvb ca en50221 driver 2009-01-29 08:35:37 -02:00
dvb_demux.c [media] DVB: improve handling of TS packets containing a raised TEI bit 2012-08-13 19:51:33 -03:00
dvb_demux.h [media] dvb-demux: add functionality to send raw payload to the dvr device 2012-05-20 10:03:06 -03:00
dvb_filter.c
dvb_filter.h
dvb_frontend.c [media] dvb: get rid of fe_ioctl_override callback 2012-08-13 16:34:03 -03:00
dvb_frontend.h [media] add DTMB support for DVB API 2012-08-13 16:01:17 -03:00
dvb_math.c
dvb_math.h
dvb_net.c [media] DVB: dvb_net_init: return -errno on error 2012-01-06 12:40:46 -02:00
dvb_net.h dvb_net: Simplify the code if DVB NET is not defined 2011-07-27 17:52:20 -03:00
dvb_ringbuffer.c V4L/DVB: DVB: Export dvb_ringbuffer_flush() again 2010-02-26 15:10:54 -03:00
dvb_ringbuffer.h
dvb-usb-ids.h [media] move dvb-usb-ids.h to dvb-core 2012-08-05 19:53:26 -03:00
dvbdev.c [media] dvb-core: Release semaphore on error path dvb_register_device() 2012-07-06 19:36:27 -03:00
dvbdev.h [media] dvb: get rid of fe_ioctl_override callback 2012-08-13 16:34:03 -03:00
Makefile [media] Make DVB NET configurable in the kernel 2011-07-27 17:52:20 -03:00