Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] [PATCH] unbalanced semaphore usage in dvb_frontend_thread



dvb_frontend_thread performs an up() on its semaphore at exit, even though
one must have already been done to reach the exit point.  This means
fe->sem affords no protection past the first time a frontend device is
closed.

This was manifesting as a 3 second tuning delay on my system when opening
the frontend device all times except the first, due to a race on
fe->wakeup.  I imagine it could also cause tuning failures in other
situations.

The attached patch removes the extra up and also corrects the title block
in dvb_frontend.c which calls this file dvb-core.c.

Regards
Chris
-- 
Christopher Pascoe
IT Infrastructure Manager
School of Information Technology and Electrical Engineering
The University of Queensland   Brisbane  QLD  4072  Australia




Home | Main Index | Thread Index