Show a patch.

GET /api/patches/26772/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 26772,
    "url": "https://patchwork.libcamera.org/api/patches/26772/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/26772/",
    "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": "<20260518201508.140849-5-robert.mader@collabora.com>",
    "date": "2026-05-18T20:15:08",
    "name": "[v2,4/4] debayer_egl: Sync output buffer after processing stats",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "f916d79be3f4921e7ca82990458352e0e9122acb",
    "submitter": {
        "id": 140,
        "url": "https://patchwork.libcamera.org/api/people/140/?format=api",
        "name": "Robert Mader",
        "email": "robert.mader@collabora.com"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/26772/mbox/",
    "series": [
        {
            "id": 5953,
            "url": "https://patchwork.libcamera.org/api/series/5953/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=5953",
            "date": "2026-05-18T20:15:04",
            "name": "software_isp: Implement DMABuf import for input buffers",
            "version": 2,
            "mbox": "https://patchwork.libcamera.org/series/5953/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/26772/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/26772/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 066C7C32F4\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 18 May 2026 20:16:24 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id AECCC63025;\n\tMon, 18 May 2026 22:16:23 +0200 (CEST)",
            "from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com\n\t[136.143.188.112])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 55F1263025\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 May 2026 22:16:19 +0200 (CEST)",
            "by mx.zohomail.com with SMTPS id 1779135375002510.8641157658823;\n\tMon, 18 May 2026 13:16:15 -0700 (PDT)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=collabora.com\n\theader.i=robert.mader@collabora.com header.b=\"hponlkvw\"; \n\tdkim-atps=neutral",
        "ARC-Seal": "i=1; a=rsa-sha256; t=1779135376; cv=none; \n\td=zohomail.com; s=zohoarc; \n\tb=SdynNuFoxC6mRh3yRzRAy3kzZu+Qz5npyhRXEgiRcsLfFsYAQXFBMbO5NxsbqFfYgx+8Dyvo7NM3OU4/dZSjPCbIeDYklPcXx4HOF2AArXYe5gF51INRFYAR8i76+bu83g1ScWK21XFLiPw246QXSM76/T6FPkjvcHfnQhFR3/4=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; \n\ts=zohoarc; t=1779135376;\n\th=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To;\n\tbh=z04t+WWR8x1KGFPoPbqytUTK3kj7WYJMqqN20b+oqYw=; \n\tb=lS9nMvwinjj2NtOaMH3QiXOr9GyJQgynB1IMdrxnSLIgRSwVO4LMw7MynLzZCkCNYBdLOwiYmsVYxnuEKYBt/5nUWZVttgRdCOd+0BV3YaojrFH3TNAOafEAWmhTr2ikICOKe0hOaOrtkrNKuXPZAcicn/eHWXNyb1WXUD6APqQ=",
        "ARC-Authentication-Results": "i=1; mx.zohomail.com;\n\tdkim=pass  header.i=collabora.com;\n\tspf=pass  smtp.mailfrom=robert.mader@collabora.com;\n\tdmarc=pass header.from=<robert.mader@collabora.com>",
        "DKIM-Signature": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1779135376;\n\ts=zohomail; d=collabora.com; i=robert.mader@collabora.com;\n\th=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-ID:In-Reply-To:References:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;\n\tbh=z04t+WWR8x1KGFPoPbqytUTK3kj7WYJMqqN20b+oqYw=;\n\tb=hponlkvw1MbxAsfGcKyrYnkSveyVWokEVQnj1RE+zhbHbUCQrPx5SDe0khO3gF6M\n\tWASXrn9UzaEiYtTdyoI2aj4fN1Fp2GRWK3tBbbQUcxB/rnS2200fFTnfs15XPmyCDy8\n\trFvQl3bjoNjiLNI5H/cir5PZ09UTse/pwcwPymyQ=",
        "From": "Robert Mader <robert.mader@collabora.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Cc": "Robert Mader <robert.mader@collabora.com>, =?utf-8?q?Barnab=C3=A1s_P?=\n\t=?utf-8?b?xZFjemU=?= <barnabas.pocze@ideasonboard.com>",
        "Subject": "[PATCH v2 4/4] debayer_egl: Sync output buffer after processing\n\tstats",
        "Date": "Mon, 18 May 2026 22:15:08 +0200",
        "Message-ID": "<20260518201508.140849-5-robert.mader@collabora.com>",
        "X-Mailer": "git-send-email 2.54.0",
        "In-Reply-To": "<20260518201508.140849-1-robert.mader@collabora.com>",
        "References": "<20260518201508.140849-1-robert.mader@collabora.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "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": "Instead of waiting for the GPU to finish the output buffer *before*\ncomputing stats, do so afterwards. This allows work to happen in\nparallel on the GPU and CPU, potentially improving throughput and\nreducing latency.\n\nThis, however, requires us to include stats computation into the\ndebayer benchmark data.\n\nSigned-off-by: Robert Mader <robert.mader@collabora.com>\nReviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>\n---\n src/libcamera/software_isp/debayer_egl.cpp | 7 +++----\n 1 file changed, 3 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/src/libcamera/software_isp/debayer_egl.cpp b/src/libcamera/software_isp/debayer_egl.cpp\nindex e5a661d2c..9ad0c871f 100644\n--- a/src/libcamera/software_isp/debayer_egl.cpp\n+++ b/src/libcamera/software_isp/debayer_egl.cpp\n@@ -530,8 +530,6 @@ int DebayerEGL::debayerGPU(FrameBuffer *input, std::optional<DmaSyncer> *inputBu\n \tif (err != GL_NO_ERROR) {\n \t\tLOG(eGL, Error) << \"Drawing scene fail \" << err;\n \t\treturn -ENODEV;\n-\t} else {\n-\t\tegl_.syncOutput();\n \t}\n \n \treturn 0;\n@@ -554,8 +552,6 @@ void DebayerEGL::process(uint32_t frame, FrameBuffer *input, FrameBuffer *output\n \t\tgoto error;\n \t}\n \n-\tbench_.finishFrame();\n-\n \tmetadata.planes()[0].bytesused = output->planes()[0].length;\n \n \t/* Calculate stats for the whole frame */\n@@ -564,6 +560,9 @@ void DebayerEGL::process(uint32_t frame, FrameBuffer *input, FrameBuffer *output\n \tstats_->processFrame(frame, 0, input);\n \tinputBufferDmaSyncer.reset();\n \n+\tegl_.syncOutput();\n+\tbench_.finishFrame();\n+\n \toutputBufferReady.emit(output);\n \tinputBufferReady.emit(input);\n \n",
    "prefixes": [
        "v2",
        "4/4"
    ]
}