Patch Detail
Show a patch.
GET /api/patches/9591/?format=api
{ "id": 9591, "url": "https://patchwork.libcamera.org/api/patches/9591/?format=api", "web_url": "https://patchwork.libcamera.org/patch/9591/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20200914140217.54060-1-niklas.soderlund@ragnatech.se>", "date": "2020-09-14T14:02:17", "name": "[libcamera-devel] libcamera: pipeline: rkisp1: Guard against IPA posting actions when we have no camera", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "d4fb04c89280066e58eb4af4adec69212ae88b14", "submitter": { "id": 5, "url": "https://patchwork.libcamera.org/api/people/5/?format=api", "name": "Niklas Söderlund", "email": "niklas.soderlund@ragnatech.se" }, "delegate": { "id": 16, "url": "https://patchwork.libcamera.org/api/users/16/?format=api", "username": "neg", "first_name": "Niklas", "last_name": "Söderlund", "email": "niklas.soderlund@ragnatech.se" }, "mbox": "https://patchwork.libcamera.org/patch/9591/mbox/", "series": [ { "id": 1288, "url": "https://patchwork.libcamera.org/api/series/1288/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=1288", "date": "2020-09-14T14:02:17", "name": "[libcamera-devel] libcamera: pipeline: rkisp1: Guard against IPA posting actions when we have no camera", "version": 1, "mbox": "https://patchwork.libcamera.org/series/1288/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/9591/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/9591/checks/", "tags": {}, "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 549AFBF01C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 14 Sep 2020 14:02:29 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id BB0B762DAB;\n\tMon, 14 Sep 2020 16:02:28 +0200 (CEST)", "from bin-mail-out-05.binero.net (bin-mail-out-05.binero.net\n\t[195.74.38.228])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 3441262C8C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 14 Sep 2020 16:02:27 +0200 (CEST)", "from bismarck.berto.se (p54ac52a8.dip0.t-ipconnect.de\n\t[84.172.82.168]) by bin-vsp-out-02.atm.binero.net (Halon) with ESMTPA\n\tid e984ae25-f692-11ea-a39b-005056917f90;\n\tMon, 14 Sep 2020 16:02:26 +0200 (CEST)" ], "X-Halon-ID": "e984ae25-f692-11ea-a39b-005056917f90", "Authorized-sender": "niklas.soderlund@fsdn.se", "From": "=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@ragnatech.se>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Mon, 14 Sep 2020 16:02:17 +0200", "Message-Id": "<20200914140217.54060-1-niklas.soderlund@ragnatech.se>", "X-Mailer": "git-send-email 2.28.0", "MIME-Version": "1.0", "Subject": "[libcamera-devel] [PATCH] libcamera: pipeline: rkisp1: Guard\n\tagainst IPA posting actions when we have no camera", "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>", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "base64", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "The IPA is running asynchronously from the pipeline and may be in the\nprocess of completing some action while the pipeline is stopping the\ncamera. Prevent processing actions after the camera is stopped by\nchecking that the pipeline is running with an active camera or not.\n\nSigned-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n---\n src/libcamera/pipeline/rkisp1/rkisp1.cpp | 5 +++++\n 1 file changed, 5 insertions(+)", "diff": "diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\nindex a6fc3b8e36f3b00a..73d1e9c4ef21fd45 100644\n--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n@@ -413,6 +413,11 @@ int RkISP1CameraData::loadIPA()\n void RkISP1CameraData::queueFrameAction(unsigned int frame,\n \t\t\t\t\tconst IPAOperationData &action)\n {\n+\t/* Guard again IPA queuing actions when we have no camera. */\n+\tPipelineHandlerRkISP1 *pipe = static_cast<PipelineHandlerRkISP1 *>(pipe_);\n+\tif (!pipe->activeCamera_)\n+\t\treturn;\n+\n \tswitch (action.operation) {\n \tcase RKISP1_IPA_ACTION_V4L2_SET: {\n \t\tconst ControlList &controls = action.controls[0];\n", "prefixes": [ "libcamera-devel" ] }