Re: [RFC 00/19] Async sub-notifiers and how to use them

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

 



Niklas Söderlund wrote:
> Hi Sakari,
> 
> On 2017-07-20 19:14:01 +0300, Sakari Ailus wrote:
>> Hi Hans,
>>
>> Thanks for the review.
>>
>> On Wed, Jul 19, 2017 at 01:42:55PM +0200, Hans Verkuil wrote:
>>> On 18/07/17 21:03, Sakari Ailus wrote:
>>>> Hi folks,
>>>>
>>>> This RFC patchset achieves a number of things which I've put to the same
>>>> patchset for they need to be show together to demonstrate the use cases.
>>>>
>>>> I don't really intend this to compete with Niklas's patchset but much of
>>>> the problem area addressed by the two is the same.
>>>>
>>>> Comments would be welcome.
>>>>
>>>> - Add AS3645A LED flash class driver.
>>>>
>>>> - Add async notifiers (by Niklas).
>>>>
>>>> - V4L2 sub-device node registration is moved to take place at the same time
>>>>   with the registration of the sub-device itself. With this change,
>>>>   sub-device node registration behaviour is aligned with video node
>>>>   registration.
>>>>
>>>> - The former is made possible by moving the bound() callback after
>>>>   sub-device registration.
>>>>
>>>> - As all the device node registration and link creation is done as the
>>>>   respective devices are probed, there is no longer dependency to the
>>>>   notifier complete callback which as itself is seen problematic. The
>>>>   complete callback still exists but there's no need to use it, pending
>>>>   changes in individual drivers.
>>>>
>>>>   See:
>>>>   <URL:http://www.spinics.net/lists/linux-media/msg118323.html>
>>>>
>>>>   As a result, if a part of the media device fails to initialise because it
>>>>   is e.g. physically broken, it will be possible to use what works.
>>>
>>> I've got major problems with this from a userspace point of view. In the vast
>>> majority of cases you just want to bail out if one or more subdevs fail.
>>
>> I admit it's easier for the user space if the device becomes available only
>> when all its component drivers have registered.
>>
>> Also remember that video nodes are registered in the file system right on
>> device probe time. It's only sub-device and media device node registration
>> that has taken place in the notifier's complete handler.
> 
> Is this always the case? In the R-Car VIN driver I register the video 
> devices using video_register_device() in the complete handler. Am I 
> doing things wrong in that driver? I had a patch where I moved the 
> video_register_device() call to probe time but it got shoot down in 
> review and was dropped.

I don't think the current implementation is wrong, it's just different
from other drivers; there's really no requirement regarding this AFAIU.
It's one of the things where no attention has been paid I presume.

However doing anything that can fail earlier on would be nicer since
there's no reasonable way to signal an error from complete callback either.

-- 
Regards,

Sakari Ailus
sakari.ailus@xxxxxx




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux