{"id":13493,"url":"https://patchwork.libcamera.org/api/covers/13493/?format=json","web_url":"https://patchwork.libcamera.org/cover/13493/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20210825211852.1207168-1-nicolas@ndufresne.ca>","date":"2021-08-25T21:18:49","name":"[libcamera-devel,v1,0/3] Fix Gnome Cheese and multiple camera","submitter":{"id":30,"url":"https://patchwork.libcamera.org/api/people/30/?format=json","name":"Nicolas Dufresne","email":"nicolas@ndufresne.ca"},"mbox":"https://patchwork.libcamera.org/cover/13493/mbox/","series":[{"id":2396,"url":"https://patchwork.libcamera.org/api/series/2396/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=2396","date":"2021-08-25T21:18:49","name":"Fix Gnome Cheese and multiple camera","version":1,"mbox":"https://patchwork.libcamera.org/series/2396/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/13493/comments/","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 23550BD87D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 25 Aug 2021 21:19:10 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6F22768893;\n\tWed, 25 Aug 2021 23:19:09 +0200 (CEST)","from bhuna.collabora.co.uk (bhuna.collabora.co.uk\n\t[IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id A2F8E60288\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 25 Aug 2021 23:19:08 +0200 (CEST)","from [127.0.0.1] (localhost [127.0.0.1])\n\t(Authenticated sender: nicolas) with ESMTPSA id CF3E51F435D8"],"From":"Nicolas Dufresne <nicolas@ndufresne.ca>","To":"libcamera-devel@lists.libcamera.org","Date":"Wed, 25 Aug 2021 17:18:49 -0400","Message-Id":"<20210825211852.1207168-1-nicolas@ndufresne.ca>","X-Mailer":"git-send-email 2.31.1","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v1 0/3] Fix Gnome Cheese and multiple\n\tcamera","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"Nicolas Dufresne <nicolas.dufresne@collabora.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"From: Nicolas Dufresne <nicolas.dufresne@collabora.com>\n\nThis patchset address issues seen when trying to stream from multiple\ncameras at the same time or when using Gnome Cheese software. The core\nof the issue was that multiple CameraManager instances were created.\nTwo deadlocks were encountered during testing and are fixed.\n\nNicolas Dufresne (3):\n  gstreamer: Fix deadlock when last allocator ref is held by buffer\n  gstreamer: Fix concurrent access issues to CameraManager\n  libcamerasrc: Fix deadlock on EOS\n\n src/gstreamer/gstlibcamera-utils.cpp    | 31 +++++++++++++++++++++++++\n src/gstreamer/gstlibcamera-utils.h      |  6 +++--\n src/gstreamer/gstlibcameraallocator.cpp | 17 ++++++++------\n src/gstreamer/gstlibcameraprovider.cpp  | 22 ++----------------\n src/gstreamer/gstlibcamerasrc.cpp       | 23 +++++++++---------\n 5 files changed, 58 insertions(+), 41 deletions(-)"}