1. 21 Oct, 2016 3 commits
  2. 08 Jul, 2016 1 commit
  3. 06 Oct, 2015 1 commit
  4. 09 Dec, 2013 1 commit
  5. 29 Nov, 2013 3 commits
  6. 02 Oct, 2013 1 commit
  7. 08 Apr, 2013 1 commit
    • Mauro Carvalho Chehab's avatar
      [media] demux.h: Remove duplicated enum · fde04ab9
      Mauro Carvalho Chehab authored
      "enum dmx_ts_pes" and "typedef enum dmx_pes_type_t" are just the
      same enum declared twice, since Kernel (2.6.12). There's no reason
      to duplicate it there, and sparse complains about that:
      	drivers/media/dvb-core/dmxdev.c:600:55: warning: mixing different enum types
      So, remove the internal define, keeping just the external one.
      Internally, use only "enum dmx_ts_pes", as it is too late to drop
      dmx_pes_type_t from the userspace API.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      fde04ab9
  8. 19 Mar, 2013 1 commit
  9. 23 Sep, 2012 1 commit
  10. 14 Aug, 2012 1 commit
  11. 13 Aug, 2012 1 commit
    • Michael Krufky's avatar
      [media] DVB: improve handling of TS packets containing a raised TEI bit · ae530205
      Michael Krufky authored
      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: default avatarMichael Krufky <mkrufky@linuxtv.org>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      ae530205
  12. 20 May, 2012 1 commit
  13. 20 May, 2011 1 commit
  14. 02 Aug, 2010 1 commit
    • Julia Lawall's avatar
      V4L/DVB: drivers/media: Use memdup_user · c6cfe055
      Julia Lawall authored
      Use memdup_user when user data is immediately copied into the
      allocated region.
      
      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @@
      expression from,to,size,flag;
      position p;
      identifier l1,l2;
      @@
      
      -  to = \(kmalloc@p\|kzalloc@p\)(size,flag);
      +  to = memdup_user(from,size);
         if (
      -      to==NULL
      +      IS_ERR(to)
                       || ...) {
         <+... when != goto l1;
      -  -ENOMEM
      +  PTR_ERR(to)
         ...+>
         }
      -  if (copy_from_user(to, from, size) != 0) {
      -    <+... when != goto l2;
      -    -EFAULT
      -    ...+>
      -  }
      // </smpl>
      Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      c6cfe055
  15. 18 May, 2010 1 commit
  16. 08 Feb, 2010 2 commits
  17. 05 Dec, 2009 1 commit
  18. 04 Oct, 2009 1 commit
  19. 12 Sep, 2009 1 commit
  20. 16 Jun, 2009 1 commit
  21. 17 Feb, 2009 1 commit
    • Mauro Carvalho Chehab's avatar
      V4L/DVB (10572): Revert commit dda06a8e · 28100165
      Mauro Carvalho Chehab authored
      On Mon, 02 Feb 2009, Hartmut wrote:
      
      This change set is wrong. The affected functions cannot be called from
      an interrupt context, because they may process large buffers. In this
      case, interrupts are disabled for a long time. Functions, like
      dvb_dmx_swfilter_packets(), could be called only from a tasklet.
      
      This change set does hide some strong design bugs in dm1105.c and
      au0828-dvb.c.
      
      Please revert this change set and do fix the bugs in dm1105.c and
      au0828-dvb.c (and other files).
      
      On Sun, 15 Feb 2009, Oliver Endriss wrote:
      
      This changeset _must_ be reverted! It breaks all kernels since 2.6.27
      for applications which use DVB and require a low interrupt latency.
      
      It is a very bad idea to call the demuxer to process data buffers with
      interrupts disabled!
      
      On Mon, 16 Feb 2009, Trent Piepho wrote:
      
      I agree, this is bad.  The demuxer is far too much work to be done with
      IRQs off.  IMHO, even doing it under a spin-lock is excessive.  It should
      be a mutex.  Drivers should use a work-queue to feed the demuxer.
      
      Thank you for testing this changeset and discovering the issues on it.
      
      Cc: Trent Piepho <xyzzy@speakeasy.org>
      Cc: Hartmut <e9hack@googlemail.com>
      Cc: Oliver Endriss <o.endriss@gmx.de>
      Cc: Andreas Oberritter <obi@linuxtv.org>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      28100165
  22. 05 Oct, 2008 1 commit
  23. 20 Jul, 2008 1 commit
  24. 24 Apr, 2008 2 commits
  25. 10 Oct, 2007 1 commit
  26. 18 Jul, 2007 1 commit
  27. 27 Apr, 2007 2 commits
  28. 27 Mar, 2007 1 commit
  29. 25 Jun, 2006 1 commit
  30. 07 Feb, 2006 1 commit
  31. 09 Nov, 2005 1 commit
    • Mark Adams's avatar
      [PATCH] dvb: fix bug in demux that caused lost mpeg sections · b3967d6c
      Mark Adams authored
      Fix a bug in the software demux which causes large MPEG sections to be lost
      when they follow very small sections.
      
      The problem happens when two sections begin in the same transport packet.  The
      dvb_demux code resets its buffer only before the first of these sections.
      This means that when the second (or subsequent) section begins, there is up to
      182 bytes of buffer space already used.  If the following section is close to
      the maximum size, it currently won't fit in the (4096-byte) buffer and is
      thrown away.
      
      The fix is simply to enlarge the buffer by the size of one transport packet
      and correct one usage of the SECFEED_SIZE definition where what is really
      meant is the maximum size of a section.
      Signed-off-by: default avatarMark Adams <mark147m@gmail.com>
      Signed-off-by: default avatarMichael Krufky <mkrufky@linuxtv.org>
      Cc: Johannes Stezenbach <js@linuxtv.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      b3967d6c
  32. 09 Sep, 2005 2 commits