Patch Detail
Show a patch.
GET /api/1.1/patches/25299/?format=api
{ "id": 25299, "url": "https://patchwork.libcamera.org/api/1.1/patches/25299/?format=api", "web_url": "https://patchwork.libcamera.org/patch/25299/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/1.1/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": "<20251202133157.661407-14-bryan.odonoghue@linaro.org>", "date": "2025-12-02T13:31:44", "name": "[v3,13/22] libcamera: software_isp: Make output DMA sync contingent", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "bbc24e3404e986b0c8daa2edfa4d9c57eda948ad", "submitter": { "id": 175, "url": "https://patchwork.libcamera.org/api/1.1/people/175/?format=api", "name": "Bryan O'Donoghue", "email": "bryan.odonoghue@linaro.org" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/25299/mbox/", "series": [ { "id": 5630, "url": "https://patchwork.libcamera.org/api/1.1/series/5630/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=5630", "date": "2025-12-02T13:31:31", "name": "GPUISP precursor series", "version": 3, "mbox": "https://patchwork.libcamera.org/series/5630/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/25299/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/25299/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 842B7C32F0\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 2 Dec 2025 13:32:28 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9227B60D25;\n\tTue, 2 Dec 2025 14:32:27 +0100 (CET)", "from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com\n\t[IPv6:2a00:1450:4864:20::42c])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8BC1360D1A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 2 Dec 2025 14:32:16 +0100 (CET)", "by mail-wr1-x42c.google.com with SMTP id\n\tffacd0b85a97d-42b3d7c1321so3410564f8f.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 02 Dec 2025 05:32:16 -0800 (PST)", "from inspiron14p-linux.ht.home (188-141-3-146.dynamic.upc.ie.\n\t[188.141.3.146]) by smtp.gmail.com with ESMTPSA id\n\tffacd0b85a97d-42e1c5c30c4sm33363322f8f.9.2025.12.02.05.32.15\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tTue, 02 Dec 2025 05:32:15 -0800 (PST)" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"qKH7tcZT\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=linaro.org; s=google; t=1764682336; x=1765287136;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=Kob/ToaFoFnln8JxOvYeUhkJB1Nasllbl3ZD4CR3Ky8=;\n\tb=qKH7tcZTwS1/E40Wq67h2fjXUvXp2FlyS75cbwwt5h99YWXNS10m7vHEvZTcLG5aNb\n\tCJBPnv8mZw261kLAu/9sFUy3iib3AQ0BatIzjkbDAVUScPsYLxBzv6goZGTqTGbo/qEv\n\tGFjkxpiCqfOZ74grbBrMJtycfGZ0E76R+wlwNRtsR/uWoVD1SyAqJ3WUvNYmwJmLXS2+\n\ttdyoMh1qHv2cEqgnzbDX/eixsxg3O4Cecxq8wOWvKMt2A7ntwV+XqALiKB2ev0Xvi9LL\n\tWW3xFXt/A7rklLYuRpWsoSBRsagk6pwj+qe5sdcQp0N5/ZaBP05yYM4pQKa11DHhoQNe\n\t7kFQ==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1764682336; x=1765287136;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n\t:to:cc:subject:date:message-id:reply-to;\n\tbh=Kob/ToaFoFnln8JxOvYeUhkJB1Nasllbl3ZD4CR3Ky8=;\n\tb=jZWfrRj/C8KobS0XuFG1GUiZ4fKSwGQtytHt4zH2xqtcivdkLwSMWV4FOog37w5e9c\n\tY1cmsijBDC6gqObhU20j1I3aB+Yb69Vpr+KXngo/yw0ZedzmQraqqVqroIWOZ5FsiiQY\n\t7Pc4ClIgewHysW0VXqnBD0ICNOLXiTUhirc8uIYjTcsvejbRnwQi7KvjBvNyXsLL6JN1\n\tSMLTapb+N0cvAzMmT8uJcbQF6Ln+OnRZ0jNmsfCUpYT5B4W61Cp6GBKlS9+Is7Ef3BJf\n\tbWjsU4N8wJv3ZKORYJ0Q6z5kaNtdKJfuMrlXWNsHwT/pcpK9BB+rgNerEwHVG9KwphLQ\n\tIgkQ==", "X-Gm-Message-State": "AOJu0Yzl2V4jgrZ1mbIMPjRbzwgLPuHUHgrwaP4qZq3LfSZjq0amlN1V\n\tkcgbr3mjDHwmCIGZY1qHfpYCxu7rysrjiDqC42uUuQBwfTwD9hgmS/VheOxcv895ahK9m6AE12A\n\tviX4B", "X-Gm-Gg": "ASbGncuLLhJj0zrm9QCsnFWak3f9kHNNgpakxU0mkcfaNOivHGqQed3EFY2rwfWCOWK\n\tn+d3xrWoYjov0KNAvwRSP/Zdt5Pc+0Af0ulBDmS6APppaBjPZWawZt3Ijxysuorxxf1o+szfzVI\n\t5MEnMMRpYBJgT0JZu9Gf21QkIM5AnPm1wwQkfl3+526brlC4e1aEh2uZl2GyCCFi/oFdcImzWyp\n\tR+wJ5iB5Ze+V8HdjAt81mijByE8kl2Q5SU9cvUMsigmkxScGntECIz/dj33zXuwzxCS32vKbulb\n\tWM1I7FJZJVXLbch0YTdGNYe6xwuR74chouatSI3cbb8m6JWMa4pWdx14PxMvdX851CAQHnOJQAx\n\tqPTeSVw3GC5b/OA30CBzM4vBiF/2rJ7bZTF8VhtWEFIq1VSmUuYWidiN7nO5J1glDIRTd1aeJ1f\n\tcNojTZlxfpwXrClj+ova5XkvGwm4IqoZqc5X/UkSG9rZCbUOagtEzkkyzNn6/IhxmwRcY=", "X-Google-Smtp-Source": "AGHT+IEHLk2xmBepjZEggwrYobPHQ0HuHjHcT+RcmpfBtnSyMJjgjg0ixmxfyMLG4dk4XHDxWSTBYA==", "X-Received": "by 2002:a5d:588c:0:b0:427:813:6a52 with SMTP id\n\tffacd0b85a97d-42e0f356812mr34777110f8f.41.1764682335796; \n\tTue, 02 Dec 2025 05:32:15 -0800 (PST)", "From": "Bryan O'Donoghue <bryan.odonoghue@linaro.org>", "To": "libcamera-devel@lists.libcamera.org", "Cc": "pavel@ucw.cz, Bryan O'Donoghue <bryan.odonoghue@linaro.org>,\n\tRobert Mader <robert.mader@collabora.com>,\n\tKieran Bingham <kieran.bingham@ideasonboard.com>,\n\tMilan Zamazal <mzamazal@redhat.com>", "Subject": "[PATCH v3 13/22] libcamera: software_isp: Make output DMA sync\n\tcontingent", "Date": "Tue, 2 Dec 2025 13:31:44 +0000", "Message-ID": "<20251202133157.661407-14-bryan.odonoghue@linaro.org>", "X-Mailer": "git-send-email 2.52.0", "In-Reply-To": "<20251202133157.661407-1-bryan.odonoghue@linaro.org>", "References": "<20251202133157.661407-1-bryan.odonoghue@linaro.org>", "MIME-Version": "1.0", "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": "The DMA sync output buffer from the GPU need only have its cache\ninvalidated if the CPU is going to modify the buffer. Right now this is\nnot required for gpuisp so only act on the output buffer if it is\nnon-null.\n\nSuggested-by: Robert Mader <robert.mader@collabora.com>\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\nReviewed-by: Milan Zamazal <mzamazal@redhat.com>\nSigned-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>\n---\n src/libcamera/software_isp/debayer.cpp | 6 ++++--\n 1 file changed, 4 insertions(+), 2 deletions(-)", "diff": "diff --git a/src/libcamera/software_isp/debayer.cpp b/src/libcamera/software_isp/debayer.cpp\nindex 544921656..158128f30 100644\n--- a/src/libcamera/software_isp/debayer.cpp\n+++ b/src/libcamera/software_isp/debayer.cpp\n@@ -373,8 +373,10 @@ void Debayer::dmaSyncBegin(std::vector<DmaSyncer> &dmaSyncers, FrameBuffer *inpu\n \tfor (const FrameBuffer::Plane &plane : input->planes())\n \t\tdmaSyncers.emplace_back(plane.fd, DmaSyncer::SyncType::Read);\n \n-\tfor (const FrameBuffer::Plane &plane : output->planes())\n-\t\tdmaSyncers.emplace_back(plane.fd, DmaSyncer::SyncType::Write);\n+\tif (output) {\n+\t\tfor (const FrameBuffer::Plane &plane : output->planes())\n+\t\t\tdmaSyncers.emplace_back(plane.fd, DmaSyncer::SyncType::Write);\n+\t}\n }\n \n } /* namespace libcamera */\n", "prefixes": [ "v3", "13/22" ] }