• 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
Name
Last commit
Last update
Documentation Loading commit data...
arch Loading commit data...
block Loading commit data...
crypto Loading commit data...
drivers Loading commit data...
firmware Loading commit data...
fs Loading commit data...
include Loading commit data...
init Loading commit data...
ipc Loading commit data...
kernel Loading commit data...
lib Loading commit data...
mm Loading commit data...
net Loading commit data...
samples Loading commit data...
scripts Loading commit data...
security Loading commit data...
sound Loading commit data...
usr Loading commit data...
virt/kvm Loading commit data...
.gitignore Loading commit data...
.mailmap Loading commit data...
COPYING Loading commit data...
CREDITS Loading commit data...
Kbuild Loading commit data...
MAINTAINERS Loading commit data...
Makefile Loading commit data...
README Loading commit data...
REPORTING-BUGS Loading commit data...