{"id":13712,"url":"https://patchwork.libcamera.org/api/1.1/covers/13712/?format=json","web_url":"https://patchwork.libcamera.org/cover/13712/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/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":"<20210907111038.739104-1-jacopo@jmondi.org>","date":"2021-09-07T11:10:33","name":"[libcamera-devel,v2,0/5] libcamera: control serializer fixes","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/1.1/people/3/?format=json","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"mbox":"https://patchwork.libcamera.org/cover/13712/mbox/","series":[{"id":2487,"url":"https://patchwork.libcamera.org/api/1.1/series/2487/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=2487","date":"2021-09-07T11:10:33","name":"libcamera: control serializer fixes","version":2,"mbox":"https://patchwork.libcamera.org/series/2487/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/13712/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 1899FBE175\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  7 Sep 2021 11:09:56 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 71D066916C;\n\tTue,  7 Sep 2021 13:09:55 +0200 (CEST)","from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net\n\t[217.70.183.195])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C560860251\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  7 Sep 2021 13:09:54 +0200 (CEST)","(Authenticated sender: jacopo@jmondi.org)\n\tby relay3-d.mail.gandi.net (Postfix) with ESMTPSA id 5324460005;\n\tTue,  7 Sep 2021 11:09:54 +0000 (UTC)"],"From":"Jacopo Mondi <jacopo@jmondi.org>","To":"libcamera-devel@lists.libcamera.org","Date":"Tue,  7 Sep 2021 13:10:33 +0200","Message-Id":"<20210907111038.739104-1-jacopo@jmondi.org>","X-Mailer":"git-send-email 2.32.0","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v2 0/5] libcamera: control serializer fixes","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>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"This series has started from investigating an error triggered by running\nconsecutive capture sessions with the IPU3 IPA module running in isolation.\n\nFrom there a few more fixes/improvements have lead me to be capable to running\nCTS with isolated IPA with a single failure (the flaky recording tests).\n\nPatch 1 is a small cleanup of the IPU3 IPA interface.\nPatches 2, 3 and 4 fix issues in the control serializer, most of them went not\nnoticed as the IPA is seldom run isolated for the moment.\n\nPatch 5 is new and replaces \"libcamera: control_serializer: Keep handles in\nsync\" from v1 and represents the most relevant change.\n\nAs the v1 version still allowed conflicts to happen, this new version adds a\n'seed' to the ControlSerializer and partitions the handles numerical space on\nthe two sides of the IPC boundary so that the Proxy and the ProxyWorker will\nnever use the same handles.\n\nAll patches reviewed except the new one.\n\nThanks\n  j\n\nJacopo Mondi (5):\n  libcamera: ipu3: Drop entityControls map\n  ipa: proxy_worker: Reset ControlSerializer on worker\n  libcamera: control_serializer: Use the right idmap\n  libcamera: control_serializer: Serialize info::def()\n  libcamera: control_serializer: Separate the handles space\n\n include/libcamera/controls.h                  |   1 +\n .../libcamera/internal/control_serializer.h   |   8 +-\n include/libcamera/ipa/ipu3.mojom              |   2 +-\n src/ipa/ipu3/ipu3.cpp                         |   6 +-\n src/libcamera/control_serializer.cpp          | 117 +++++++++++++++---\n src/libcamera/controls.cpp                    |   8 ++\n src/libcamera/ipa_controls.cpp                |  14 ++-\n src/libcamera/pipeline/ipu3/ipu3.cpp          |   2 +-\n test/serialization/control_serialization.cpp  |   4 +-\n .../ipa_data_serializer_test.cpp              |  26 ++--\n .../module_ipa_proxy.cpp.tmpl                 |   6 +-\n .../module_ipa_proxy.h.tmpl                   |   2 +-\n .../module_ipa_proxy_worker.cpp.tmpl          |  16 ++-\n .../libcamera_templates/proxy_functions.tmpl  |   4 +-\n 14 files changed, 168 insertions(+), 48 deletions(-)\n\n--\n2.32.0"}