Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] vfree during spin_lock hold (Was: (In)consistency of DMX/DVR buffers and OSD ioctls)
Dr. Werner Fink writes:
> during seeking for a better protection against dropouts of
> of a PES filter for DMX_PES_OTHER (AC3) using DMX_OUT_TAP caused
> by OSD popups, I've seen that within DmxDevSetBufferSize() in
> dmxdev.c that vfree() is called within a spin_lock_irq/spin_unlock_irq
> pair. This seems to be a bug. Enclosed a patch which changes this.
Correct, that is a bug.
But
+ void *mem=buffer->data;
should be
+ void *mem=buf->data;
> Also changed in this patch: hold spin_lock in DmxDevTSCallback()
> during copy buffers (seems to decrease dropouts caused by other
> activities on the system),
OK, this also sounds fine.
Regarding the dropouts, do you really hear differences?
Do you have an SMP system?
On non-SMP systems spin_(un)lock() does nothing at all and
cannot make a difference.
use reparent_to_init() for the
> kernel threads "arm_mon" and "fe_thread".
For the frontend stuff this is fine, but does the ARM firmware
reloading in case of a firmware crash still work with this patch?
Ralph
--
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index