[libcamera-devel] [PATCH v5 0/6] Introduce UVC hotplugging support

Umang Jain email at uajain.com
Wed Jun 17 08:10:22 CEST 2020


Hi Laurent, Kieran,

On 6/17/20 3:21 AM, Laurent Pinchart wrote:
> Hi Umang,
>
> On Tue, Jun 16, 2020 at 07:45:32PM +0000, Umang Jain wrote:
>> v4->v5:
>>    - Rework "libcamera: CameraManager: Drop the vector of created
>>      PipelineHandlers" commit to guard against the possibility of
>>      pipeline handler getting deleted in PipelineHandler::disconnect().
>>      Add a _lot_ of documentation to it via commit message and a comment.
>>    - Make sure no use-after-free errors are present when the unit-test
>>      runs under valgrind. Fold the patch given by Laurent in previous
>>      review to properly address and document it.
>>    - Provide more past context to "libcamera: CameraManager: Drop the
>>      vector of created PipelineHandlers" in commit message, to 'why'
>>      pipes_ vector is not needed anymore.
>>    - Few typos fixes.
>>
>> v3->v4:
>>    - Introduce one additional commit to eliminate Pipehandlers' vector
>>      from CameraManager. It was leaving behind a leaked reference which
>>      was causing unclean unbind->bind operation (due to dangling dirs)
>>      for the hotplug unit test to run.
>>    - Simplify hotplug unit test with use of std::ofstream.
>>    - Change CameraManager::Private::addCamera() signature to accept
>>      Camera arg as pass-by-value instead of pass-by-reference.
>>    - qcam: Finalize HotplugEvent naming with ::HotPlug and ::HotUnplug
>>    - Few small improvements in commit messages and rebase.
>>
>> Umang Jain (6):
>>    libcamera: CameraManager: Drop the vector of created PipelineHandlers
>>    libcamera: camera_manager: Refactor pipelines creation into separate
>>      function
>>    libcamera: device_enumerator: Emit a signal when new devices are added
>>    libcamera: camera_manager: Introduce signals when a camera is added or
>>      removed
>>    qcam: main_window: Introduce initial hotplug support
>>    tests: Introduce hotplug hot-unplug unit test
> All patches pushed to master. Thank you !
Thank you for all the reviews and hand-holding through various hairy bits :)
>
>>   include/libcamera/camera_manager.h            |   6 +-
>>   .../libcamera/internal/device_enumerator.h    |   4 +
>>   src/libcamera/camera_manager.cpp              |  65 ++++++---
>>   src/libcamera/device_enumerator.cpp           |  13 ++
>>   src/libcamera/pipeline_handler.cpp            |  20 ++-
>>   src/qcam/main_window.cpp                      |  76 +++++++++++
>>   src/qcam/main_window.h                        |   6 +
>>   test/hotplug-cameras.cpp                      | 128 ++++++++++++++++++
>>   test/meson.build                              |   1 +
>>   9 files changed, 298 insertions(+), 21 deletions(-)
>>   create mode 100644 test/hotplug-cameras.cpp


More information about the libcamera-devel mailing list