Messages in this thread | | | Subject | Re: [PATCH 15/31] media: dvb-frontend invoke enable/disable_source handlers | From | Shuah Khan <> | Date | Thu, 28 Jan 2016 09:59:38 -0700 |
| |
On 01/28/2016 09:07 AM, One Thousand Gnomes wrote: > On Thu, 28 Jan 2016 13:53:04 -0200 > Mauro Carvalho Chehab <mchehab@osg.samsung.com> wrote: > >> Em Wed, 6 Jan 2016 13:27:04 -0700 >> Shuah Khan <shuahkh@osg.samsung.com> escreveu: >> >>> Checking for tuner availability from frontend thread start >>> disrupts video stream. Change to check for tuner and start >>> pipeline from frontend open instead and stop pipeline from >>> frontend release. >> >> That's wrong, as DVB can be opened on read-only mode, where >> it won't be changing anything.
Correct. Please check the code. Tuner availability check is done when the device is opened in Write mode in the following conditional.
if ((file->f_flags & O_ACCMODE) != O_RDONLY) {
>> >> Also, I don't think POSIX allows to return an error like EBUSY >> on open: >> http://pubs.opengroup.org/onlinepubs/9699919799/functions/open.html > > It doesn't document all the errors you may return. Quite a lot of > kernel drivers return EBUSY when they are "single open" things. > > POSIX documents certain cases that *must* error and what the error code > is. It documents certain possible failures and what their error code is. > Beyond that it's up to you. >
Returning EBUSY clearly indicates the reason why the device can't be opened in this case.
thanks, -- Shuah
-- Shuah Khan Sr. Linux Kernel Developer Open Source Innovation Group Samsung Research America (Silicon Valley) shuahkh@osg.samsung.com | (970) 217-8978
| |