Thread (9 messages) 9 messages, 6 authors, 2012-09-26

Re: Fwd: [PATCH, RFC] Fix DVB ioctls failing if frontend open/closed too fast

From: Devin Heitmueller <hidden>
Date: 2012-09-01 16:26:14

On Sat, Sep 1, 2012 at 12:13 PM, Antti Palosaari [off-list ref] wrote:
Is there anyone caring to review that carefully?

I am quite out with semaphores (up/down_interruptible) and also frontend is
so complex... I would rather design / write whole dvb-frontend from the
scratch :] (not doing that as no time).
If you're not willing to take the time to understand why the existing
dvb-frontend is so complex, how could you possibly suggest that you
could do a better job rewriting it from scratch?  :-)

Like most things, the devil is in the details.  The threading model is
complicated not because it was done poorly, but because there are lots
of complexity that is not obvious (combined with it having evolved
over time to adapt to hardware bugs).  It's only when you run it
against a half dozen cards with different behavior that you begin to
see why certain things were done the way they were.

In this case, I think the race condition in question has become more
obvious because of more aggressive use of power management for the
tuner and demod.  Because powering down the frontend now takes actual
time (due to i2c), users are now starting to hit the race condition.

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help