[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b2c97492-7750-38b0-610a-70781b80a81a@microchip.com>
Date: Tue, 1 Nov 2016 17:02:34 +0800
From: "Wu, Songjun" <Songjun.Wu@...rochip.com>
To: Hans Verkuil <hverkuil@...all.nl>, <nicolas.ferre@...el.com>
CC: <linux-arm-kernel@...ts.infradead.org>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
<linux-kernel@...r.kernel.org>, <linux-media@...r.kernel.org>
Subject: Re: [PATCH] [media] atmel-isc: release the filehandle if it's not the
only one.
Sorry, my mistake, the device should be able to opened multiple times.
It's a wrong patch.
On 11/1/2016 16:52, Hans Verkuil wrote:
> On 01/11/16 09:08, Songjun Wu wrote:
>> Release the filehandle in 'isc_open' if it's not the only filehandle
>> opened for the associated video_device.
>
> What's wrong with that? You should always be able to open the device
> multiple times. v4l2-compliance will fail after this patch. I'm not sure
> what you intended to do here, but this patch is wrong.
>
> Regards,
>
> Hans
>
>>
>> Signed-off-by: Songjun Wu <songjun.wu@...rochip.com>
>> ---
>>
>> drivers/media/platform/atmel/atmel-isc.c | 18 +++++++++---------
>> 1 file changed, 9 insertions(+), 9 deletions(-)
>>
>> diff --git a/drivers/media/platform/atmel/atmel-isc.c
>> b/drivers/media/platform/atmel/atmel-isc.c
>> index 8e25d3f..5e08404 100644
>> --- a/drivers/media/platform/atmel/atmel-isc.c
>> +++ b/drivers/media/platform/atmel/atmel-isc.c
>> @@ -926,21 +926,21 @@ static int isc_open(struct file *file)
>> if (ret < 0)
>> goto unlock;
>>
>> - if (!v4l2_fh_is_singular_file(file))
>> - goto unlock;
>> + ret = !v4l2_fh_is_singular_file(file);
>> + if (ret)
>> + goto fh_rel;
>>
>> ret = v4l2_subdev_call(sd, core, s_power, 1);
>> - if (ret < 0 && ret != -ENOIOCTLCMD) {
>> - v4l2_fh_release(file);
>> - goto unlock;
>> - }
>> + if (ret < 0 && ret != -ENOIOCTLCMD)
>> + goto fh_rel;
>>
>> ret = isc_set_fmt(isc, &isc->fmt);
>> - if (ret) {
>> + if (ret)
>> v4l2_subdev_call(sd, core, s_power, 0);
>> - v4l2_fh_release(file);
>> - }
>>
>> +fh_rel:
>> + if (ret)
>> + v4l2_fh_release(file);
>> unlock:
>> mutex_unlock(&isc->lock);
>> return ret;
>>
Powered by blists - more mailing lists