[{"id":25771,"web_url":"https://patchwork.libcamera.org/comment/25771/","msgid":"<166817570874.50677.17986004214762392804@Monstersaurus>","date":"2022-11-11T14:08:28","subject":"Re: [libcamera-devel] [PATCH 2/2] libcamera: pipeline: raspberrypi:\n\tFree buffers when a camera is released","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Quoting David Plowman via libcamera-devel (2022-11-11 13:30:25)\n> Implement the PipelineHandlerRPi::releaseDevice method which allows\n> us to free any allocated buffers when a camera is released.\n> \n> Signed-off-by: David Plowman <david.plowman@raspberrypi.com>\n\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n> ---\n>  src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 8 ++++++++\n>  1 file changed, 8 insertions(+)\n> \n> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> index f15fa28b..785eddf9 100644\n> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> @@ -337,6 +337,8 @@ public:\n>  \n>         bool match(DeviceEnumerator *enumerator) override;\n>  \n> +       void releaseDevice(Camera *camera) override;\n> +\n>  private:\n>         RPiCameraData *cameraData(Camera *camera)\n>         {\n> @@ -1193,6 +1195,12 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)\n>         return !!numCameras;\n>  }\n>  \n> +void PipelineHandlerRPi::releaseDevice(Camera *camera)\n> +{\n> +       RPiCameraData *data = cameraData(camera);\n> +       data->freeBuffers();\n> +}\n> +\n>  int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice *isp, MediaEntity *sensorEntity)\n>  {\n>         std::unique_ptr<RPiCameraData> data = std::make_unique<RPiCameraData>(this);\n> -- \n> 2.30.2\n>","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 C7817BD16B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 11 Nov 2022 14:08:33 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7E78F63083;\n\tFri, 11 Nov 2022 15:08:33 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id BDA1561F3F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 11 Nov 2022 15:08:31 +0100 (CET)","from pendragon.ideasonboard.com\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 66EE532A;\n\tFri, 11 Nov 2022 15:08:31 +0100 (CET)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1668175713;\n\tbh=sx7YqxqLiRXMcX2ViImVjcrdU6mYcEdzTCROGBVh9Uw=;\n\th=In-Reply-To:References:To:Date:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=kRt5wtj534XiExkyYYAOJaS6tuNSEXhmKnf6AlMR0DQ3R04If9aU0HxJ/VewnYWlp\n\t21TWSzVYB7h4tu8GdE9CnfFoYrY/vz6AbtpauWxzNZT+NqCP0SaIfSpXQ1WyBn9SQ9\n\tPiW9lI7Sf63QVfhqEZjgJHFom7QEE8TkKx90XSO2ytF9DLVaF1hlPvcY6nByGv1/so\n\tQBruSuK+I4z03+30u/hd8IXk5lJoAkarMOpNhZzDCGYVHOR1IoXGtf3wPKD+rjJqtw\n\tIDBNhWGo1l6AFPSmqWCCtbQV8XRB9wY8EykSUDC+WaEmOh18fJHaqQ7KtNoU8OwoLL\n\tIwd74EI+3xN9A==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1668175711;\n\tbh=sx7YqxqLiRXMcX2ViImVjcrdU6mYcEdzTCROGBVh9Uw=;\n\th=In-Reply-To:References:Subject:From:To:Date:From;\n\tb=LR3XSDJQOzoekbyivvEh/zdOGH7nurXLis85pQmsCf97KGKLT2UmHs7LrkLO/Ab1p\n\tqohCHbpANfRzukeevh7ArWGGrLvk85JZeZmFtE9nHjXyktMB40N4vDhgWGbVdDOqR8\n\tGAcMp8ip73M0AbZPj565ZZdFghcUG127zOWd8htM="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"LR3XSDJQ\"; dkim-atps=neutral","Content-Type":"text/plain; charset=\"utf-8\"","MIME-Version":"1.0","Content-Transfer-Encoding":"quoted-printable","In-Reply-To":"<20221111133025.3102-3-david.plowman@raspberrypi.com>","References":"<20221111133025.3102-1-david.plowman@raspberrypi.com>\n\t<20221111133025.3102-3-david.plowman@raspberrypi.com>","To":"David Plowman <david.plowman@raspberrypi.com>,\n\tlibcamera-devel@lists.libcamera.org","Date":"Fri, 11 Nov 2022 14:08:28 +0000","Message-ID":"<166817570874.50677.17986004214762392804@Monstersaurus>","User-Agent":"alot/0.10","Subject":"Re: [libcamera-devel] [PATCH 2/2] libcamera: pipeline: raspberrypi:\n\tFree buffers when a camera is released","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>","From":"Kieran Bingham via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":25772,"web_url":"https://patchwork.libcamera.org/comment/25772/","msgid":"<CAEmqJPoHAxSMvKGiFfzL-8WAqB0OWf4hEGAQE4aEyePuBuumWg@mail.gmail.com>","date":"2022-11-11T14:19:27","subject":"Re: [libcamera-devel] [PATCH 2/2] libcamera: pipeline: raspberrypi:\n\tFree buffers when a camera is released","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/people/34/","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"content":"Hi David,\n\nThank you for fixing this!\n\n\nOn Fri, 11 Nov 2022 at 13:30, David Plowman via libcamera-devel <\nlibcamera-devel@lists.libcamera.org> wrote:\n\n> Implement the PipelineHandlerRPi::releaseDevice method which allows\n> us to free any allocated buffers when a camera is released.\n>\n> Signed-off-by: David Plowman <david.plowman@raspberrypi.com>\n> ---\n>  src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 8 ++++++++\n>  1 file changed, 8 insertions(+)\n>\n> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> index f15fa28b..785eddf9 100644\n> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n> @@ -337,6 +337,8 @@ public:\n>\n>         bool match(DeviceEnumerator *enumerator) override;\n>\n> +       void releaseDevice(Camera *camera) override;\n> +\n>  private:\n>         RPiCameraData *cameraData(Camera *camera)\n>         {\n> @@ -1193,6 +1195,12 @@ bool PipelineHandlerRPi::match(DeviceEnumerator\n> *enumerator)\n>         return !!numCameras;\n>  }\n>\n> +void PipelineHandlerRPi::releaseDevice(Camera *camera)\n> +{\n> +       RPiCameraData *data = cameraData(camera);\n> +       data->freeBuffers();\n> +}\n>\n\nMy head's spinning with all these related changes now :-)\n\nPresumably for this to work correctly, RPiCameraData::freeBuffers() must\nnot do the\nif (!buffersAllocated_) test, correct? So this change relies on [1] to\nbehave correctly?\n\nReviewed-by: Naushir Patuck <naush@raspberrypi.com>\n\n[1] https://patchwork.libcamera.org/patch/17759/\n\n\n+\n>  int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice\n> *isp, MediaEntity *sensorEntity)\n>  {\n>         std::unique_ptr<RPiCameraData> data =\n> std::make_unique<RPiCameraData>(this);\n> --\n> 2.30.2\n>\n>","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 6F6F0BE08B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 11 Nov 2022 14:19:46 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D2C4661F3F;\n\tFri, 11 Nov 2022 15:19:45 +0100 (CET)","from mail-qt1-x829.google.com (mail-qt1-x829.google.com\n\t[IPv6:2607:f8b0:4864:20::829])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 1C60861F3F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 11 Nov 2022 15:19:44 +0100 (CET)","by mail-qt1-x829.google.com with SMTP id l2so2711172qtq.11\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 11 Nov 2022 06:19:44 -0800 (PST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1668176385;\n\tbh=T+b4+PYAvXhCH8e7yPKnWqi6oCGBO9BAtz6AspYk0ZQ=;\n\th=References:In-Reply-To:Date:To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=T3xmOgIVlRnnKyjCni+HPtBo3385SMEmrwTs1E2CgxpUpJ0Bn8Ng1eAFy6nlEYI8n\n\tXZ7HnBnZxUbJK4Qp+ACdN5vuWHCrmlo7BGodUtlsGr8e2b9yvCRyHI7w5dbAtkulhM\n\ti56r3vKd7p8BMxkt8J6DjqY1cYvEfbllmEtvU7xij2KiP4OKYyFdtRQYIS00HSMvPO\n\tn3JCh1IZM2YC+m2Df/tVj/4hFfY4SC8QtTT/N6eI2DgRmF1+GCJR2VziU5l91CKnN2\n\tWZ60zcCyv5+t2ePHgtF3Sxewq+2WAu457JA8Z2hpzLYOIlP8dF60Zyagr2sFSh2GM/\n\tm+/6nYcSM2o6Q==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=cc:to:subject:message-id:date:from:in-reply-to:references\n\t:mime-version:from:to:cc:subject:date:message-id:reply-to;\n\tbh=PyfFHexey16o/xWwHtLTMwLGMCbO/e/tMrTD9Aq9M4o=;\n\tb=SyU2SO7TvE/UlO1BK1RhFrQLwRwXZ4ByQQ/UbjHg+R7Ukn4T3o7FC2TvF8tX/KBwzo\n\tu9/G6kSuUly7cpDa3PuUqx3hhv+9wjzF5tFU0Zz0E661s6gJsO1gmhUBK1bw2oKsXeKt\n\tbtqnafnbiTQ9Ev7Gi8U+fkmNosrN0puK5K3AZckQr/VDJ0hIkayA0uABiZDM8PBeShg6\n\tG0IVfp4KYGKnNDvBsnL9Qe9pG0xMpIOXv4i8ckdYhgTc3oaIE1HneVl52rKOZlWkc6dj\n\tA4vojDlKhjBoDJOVIcHLmaNQaslSj+nZgdKnZDIiFFb8nj3eRuQrjtJIwnQTJAc8G1K/\n\tWsUw=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"SyU2SO7T\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=cc:to:subject:message-id:date:from:in-reply-to:references\n\t:mime-version:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=PyfFHexey16o/xWwHtLTMwLGMCbO/e/tMrTD9Aq9M4o=;\n\tb=vVOIb9uEQ/HZ/dCvZUY2QwUcFZ6c2Q0wwOjVHsJcGkJSsPtr0D47XjoBA8fstEtoYq\n\t432QslGmHPYSGCJbJfr6wT1tRzYb+pNY/Bx3lfKHGhNtYpT7SEXgHC/Mkdw7TK42APza\n\t/+asG3lNukOEGRX2vGrgJ7CdGmRzuL4mhAz20RBVn6ahtENXzrxbJlu4lMdrFRlf2EOK\n\tyJEnx4HasHEvju8i4mdjLcTGLebQom5HaXFoWWun/U4738VCKEwgQhyTK2YHx8j5lYli\n\tpsebmGI335jcK6OrjpDVhuCu6E2jVaXi5vyTcUDcCEjrTWHh0PKVCQ9vd7LDlaGgja62\n\twCNA==","X-Gm-Message-State":"ANoB5pl3MfX/Ld+fjcxyDKmWxEPYVXn/vF/2dlYU/1KcN3CjzzmExdy2\n\tHbC0GjhdlfQN0A/jli1jYnOcqHEFS8Lal3fcN6wZNHLO7/Osyw==","X-Google-Smtp-Source":"AA0mqf6r549YwM1BE0D19Q39Eo51By1IDY4Z42olX8V4FHwVuUGj8H+VkbFsOLahfdGmQ0nfpNnZnsAsff4GYx03QHE=","X-Received":"by 2002:ac8:60c2:0:b0:35b:62a:6532 with SMTP id\n\ti2-20020ac860c2000000b0035b062a6532mr1417946qtm.156.1668176382929;\n\tFri, 11 Nov 2022 06:19:42 -0800 (PST)","MIME-Version":"1.0","References":"<20221111133025.3102-1-david.plowman@raspberrypi.com>\n\t<20221111133025.3102-3-david.plowman@raspberrypi.com>","In-Reply-To":"<20221111133025.3102-3-david.plowman@raspberrypi.com>","Date":"Fri, 11 Nov 2022 14:19:27 +0000","Message-ID":"<CAEmqJPoHAxSMvKGiFfzL-8WAqB0OWf4hEGAQE4aEyePuBuumWg@mail.gmail.com>","To":"David Plowman <david.plowman@raspberrypi.com>","Content-Type":"multipart/alternative; boundary=\"000000000000ba422805ed3294db\"","Subject":"Re: [libcamera-devel] [PATCH 2/2] libcamera: pipeline: raspberrypi:\n\tFree buffers when a camera is released","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>","From":"Naushir Patuck via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Naushir Patuck <naush@raspberrypi.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":25774,"web_url":"https://patchwork.libcamera.org/comment/25774/","msgid":"<CAHW6GYKrfcVBZ7NUU=zomh=vt6r_yKDwLS9geqKzg_qzR5CVoQ@mail.gmail.com>","date":"2022-11-11T14:31:03","subject":"Re: [libcamera-devel] [PATCH 2/2] libcamera: pipeline: raspberrypi:\n\tFree buffers when a camera is released","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/people/42/","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"content":"Hi Naush\n\nThanks for the review.\n\nOn Fri, 11 Nov 2022 at 14:19, Naushir Patuck <naush@raspberrypi.com> wrote:\n>\n> Hi David,\n>\n> Thank you for fixing this!\n>\n>\n> On Fri, 11 Nov 2022 at 13:30, David Plowman via libcamera-devel <libcamera-devel@lists.libcamera.org> wrote:\n>>\n>> Implement the PipelineHandlerRPi::releaseDevice method which allows\n>> us to free any allocated buffers when a camera is released.\n>>\n>> Signed-off-by: David Plowman <david.plowman@raspberrypi.com>\n>> ---\n>>  src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 8 ++++++++\n>>  1 file changed, 8 insertions(+)\n>>\n>> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n>> index f15fa28b..785eddf9 100644\n>> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n>> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n>> @@ -337,6 +337,8 @@ public:\n>>\n>>         bool match(DeviceEnumerator *enumerator) override;\n>>\n>> +       void releaseDevice(Camera *camera) override;\n>> +\n>>  private:\n>>         RPiCameraData *cameraData(Camera *camera)\n>>         {\n>> @@ -1193,6 +1195,12 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)\n>>         return !!numCameras;\n>>  }\n>>\n>> +void PipelineHandlerRPi::releaseDevice(Camera *camera)\n>> +{\n>> +       RPiCameraData *data = cameraData(camera);\n>> +       data->freeBuffers();\n>> +}\n>\n>\n> My head's spinning with all these related changes now :-)\n>\n> Presumably for this to work correctly, RPiCameraData::freeBuffers() must not do the\n> if (!buffersAllocated_) test, correct? So this change relies on [1] to behave correctly?\n\nWell, I think this is only a problem when the camera was started (and\nstopped and released), otherwise we never allocate buffers in the\nfirst place. So I think it's good even regardless of the\nbuffersAllocated_ test. But yeah, my head is spinning too. Just merge\neverything and it'll be fine!!\n\nDavid\n\n>\n> Reviewed-by: Naushir Patuck <naush@raspberrypi.com>\n>\n> [1] https://patchwork.libcamera.org/patch/17759/\n>\n>\n>> +\n>>  int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice *isp, MediaEntity *sensorEntity)\n>>  {\n>>         std::unique_ptr<RPiCameraData> data = std::make_unique<RPiCameraData>(this);\n>> --\n>> 2.30.2\n>>","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 5F2E0BD16B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 11 Nov 2022 14:31:18 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id AAC4563083;\n\tFri, 11 Nov 2022 15:31:17 +0100 (CET)","from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com\n\t[IPv6:2607:f8b0:4864:20::42e])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 2D9D061F3F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 11 Nov 2022 15:31:16 +0100 (CET)","by mail-pf1-x42e.google.com with SMTP id b29so5012005pfp.13\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 11 Nov 2022 06:31:16 -0800 (PST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1668177077;\n\tbh=sxx36zcH7jU1Yit3eHYEZt83TemWaAFb1+dU7qfhNt8=;\n\th=References:In-Reply-To:Date:To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=FQP8/YWjwZo3MSeXpHdmxetAbrIGIVQkkIDafmTcgXe+N/WzQ+ht/S9Io3YosstCJ\n\tsqjzaJiKAwh/YpPRRRwmBzzaAWgRQabki0F5qw2Mvkf9kjJCDrKx9otD7jCIUAwatg\n\tcBOYW4rmuLyAAeN59YqeT9OB3CoECtZHEJEfwyRzHCvC7OYBaJ/FnrjIGjDiPxb1nT\n\tXpQy7Gyi1RwZi9hq26cKywsN9brZyB3By50wpPmPRAK4Iq7oTXLhFrozp3xLtc622x\n\tiwO6nndox6D3Vp6WHgzu9KLZ6iaFJ3YIXzZcCXD+ude6K4Sqy+7O7qrhxKS4Stqx1b\n\tY2Hj7vOjSlR1Q==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=cc:to:subject:message-id:date:from:in-reply-to:references\n\t:mime-version:from:to:cc:subject:date:message-id:reply-to;\n\tbh=T9J2IhJhCxHtldvx1JgZSmGMhAxbKZ2y9Z+BWTxF2Eo=;\n\tb=RkukLBVfwW1ASq/PkFKfSztNg1EyNwuilwWLq5S6xRcFv+TAO4OuaPaA9KCk5GPuLV\n\tC2/JA9uYk81MuUPtA2xhpJBpdv715YTIbGmYwn5+6kZm98y8lapO4U+YHcuxXrr8eHaR\n\tQctyRajwub1D2PEyc/h+q9YkNBopmYnTZY5wI83r5KA5TvOvtGrC9+L7+GU+FhNOY8LH\n\tAt3xjSJRmSWo1HyCOovGlcUjC5Q8wxhCy84Kugw3yU018ufaGBN7ae2vldhNrelnN8JU\n\tpOK1AuPGq/JJCd5kyIedTqJuHhpiKh7xk/XRur9dBF5THeBEVp+AW56xNi/g6LbtWwFY\n\tVEAQ=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"RkukLBVf\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=cc:to:subject:message-id:date:from:in-reply-to:references\n\t:mime-version:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=T9J2IhJhCxHtldvx1JgZSmGMhAxbKZ2y9Z+BWTxF2Eo=;\n\tb=Go4MeZiGKYEV19wv6SJAWmzq0wka8vNC4SozJZsVcwBzJmaM0ULxOrs04kbWez8nGY\n\t/IFp384eMr+pvwjxXR/xztQQqTQ/Y5MopjtvEX2HUdZfFZ/c8wOS/3wenQ4H+8l+ik5J\n\tViz4vGoLqq1HdLEjngCBtmlGiCQZM3ye6qWvLGv2otD/nLrHv8QjVs80JfsWZ2scCrrM\n\tlzJT437BRAtT8t1bBCWS3YDbH3ShxTfzolvc40QMPLgsvwH/NOP0Ppl+BoDyLKxPhCAC\n\tBWNZ0AyVyjUmgHlj2lYAI2UGSlY1j1ZcadyiRmQfMqcbicUxyZoPRBt5VdC260QPutZF\n\tvS+Q==","X-Gm-Message-State":"ANoB5pmFIrkpfP3/0cKqPVQgeugmYH4Qk6oDl0efFQwoZ3mZapyUzXIY\n\tY3R8jny8lTldUUckboj5rhoCf3a9YPP0jYK9JoZguyf556g=","X-Google-Smtp-Source":"AA0mqf7QvYM50/66yuDYIel5yL9RLUDGlMaHq31moOPCOedWQTZILXr0q1t+DxVxn5/kcI5MwE4eD8hGZ5y/QsAKfrs=","X-Received":"by 2002:a63:5164:0:b0:46f:ec9f:dcb0 with SMTP id\n\tr36-20020a635164000000b0046fec9fdcb0mr1907220pgl.202.1668177074577;\n\tFri, 11 Nov 2022 06:31:14 -0800 (PST)","MIME-Version":"1.0","References":"<20221111133025.3102-1-david.plowman@raspberrypi.com>\n\t<20221111133025.3102-3-david.plowman@raspberrypi.com>\n\t<CAEmqJPoHAxSMvKGiFfzL-8WAqB0OWf4hEGAQE4aEyePuBuumWg@mail.gmail.com>","In-Reply-To":"<CAEmqJPoHAxSMvKGiFfzL-8WAqB0OWf4hEGAQE4aEyePuBuumWg@mail.gmail.com>","Date":"Fri, 11 Nov 2022 14:31:03 +0000","Message-ID":"<CAHW6GYKrfcVBZ7NUU=zomh=vt6r_yKDwLS9geqKzg_qzR5CVoQ@mail.gmail.com>","To":"Naushir Patuck <naush@raspberrypi.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Subject":"Re: [libcamera-devel] [PATCH 2/2] libcamera: pipeline: raspberrypi:\n\tFree buffers when a camera is released","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>","From":"David Plowman via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"David Plowman <david.plowman@raspberrypi.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]