Patch Detail
Show a patch.
GET /api/patches/24323/?format=api
{ "id": 24323, "url": "https://patchwork.libcamera.org/api/patches/24323/?format=api", "web_url": "https://patchwork.libcamera.org/patch/24323/", "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": "<20250911135144.56586-4-mzamazal@redhat.com>", "date": "2025-09-11T13:51:41", "name": "[v2,3/6] libcamera: software_isp: Check processed window size alignment", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "d0e7f0c0c9c167ccc6c3bd01e69a023d0278da67", "submitter": { "id": 177, "url": "https://patchwork.libcamera.org/api/people/177/?format=api", "name": "Milan Zamazal", "email": "mzamazal@redhat.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/24323/mbox/", "series": [ { "id": 5432, "url": "https://patchwork.libcamera.org/api/series/5432/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=5432", "date": "2025-09-11T13:51:39", "name": "Fix stats related problems in software ISP", "version": 2, "mbox": "https://patchwork.libcamera.org/series/5432/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/24323/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/24323/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 23BFCC324E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 11 Sep 2025 13:52:10 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2466C69367;\n\tThu, 11 Sep 2025 15:52:09 +0200 (CEST)", "from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.133.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id BE72B6936A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 11 Sep 2025 15:52:05 +0200 (CEST)", "from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com\n\t(ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63])\n\tby relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,\n\tcipher=TLS_AES_256_GCM_SHA384) id us-mta-676-SiBOJYx3OEeg5gYB2PVPlA-1;\n\tThu, 11 Sep 2025 09:52:00 -0400", "from mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com\n\t(mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com\n\t[10.30.177.93])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\tkey-exchange X25519 server-signature RSA-PSS (2048 bits)\n\tserver-digest SHA256) (No client certificate requested)\n\tby mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix)\n\twith ESMTPS id 73D9C19107DB; Thu, 11 Sep 2025 13:51:59 +0000 (UTC)", "from mzamazal-thinkpadp1gen7.tpbc.com (unknown [10.44.34.98])\n\tby mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix)\n\twith ESMTP id 3860D18004A3; Thu, 11 Sep 2025 13:51:56 +0000 (UTC)" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"Fj+z1/Ut\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1757598724;\n\th=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n\tto:to:cc:cc:mime-version:mime-version:content-type:content-type:\n\tcontent-transfer-encoding:content-transfer-encoding:\n\tin-reply-to:in-reply-to:references:references;\n\tbh=H++2ucEMlUxAIecyZ7u0AgzikMgmoH4zb7l6n9GAbGM=;\n\tb=Fj+z1/UtarCnCQxyKkpbjToN50uEH/wnNr3z1UnzQJK+5J/f4+50ZJLovDmdQRlJQW1fOk\n\tsmuq8YOltX50mWplEc23nQUb2SiBC+AHYIhe/5NBxttgdY673tbIITIxjkiumePvhxSdhf\n\tCv5o7YESKy/AtBROyd1ZjERos5PFBNg=", "X-MC-Unique": "SiBOJYx3OEeg5gYB2PVPlA-1", "X-Mimecast-MFC-AGG-ID": "SiBOJYx3OEeg5gYB2PVPlA_1757598719", "From": "Milan Zamazal <mzamazal@redhat.com>", "To": "libcamera-devel@lists.libcamera.org", "Cc": "Milan Zamazal <mzamazal@redhat.com>, pobrn@protonmail.com,\n\tmail@maciej.szmigiero.name, =?utf-8?q?Barnab=C3=A1s_P=C5=91cze?=\n\t<barnabas.pocze@ideasonboard.com>", "Subject": "[PATCH v2 3/6] libcamera: software_isp: Check processed window size\n\talignment", "Date": "Thu, 11 Sep 2025 15:51:41 +0200", "Message-ID": "<20250911135144.56586-4-mzamazal@redhat.com>", "In-Reply-To": "<20250911135144.56586-1-mzamazal@redhat.com>", "References": "<20250911135144.56586-1-mzamazal@redhat.com>", "MIME-Version": "1.0", "X-Scanned-By": "MIMEDefang 3.4.1 on 10.30.177.93", "X-Mimecast-Spam-Score": "0", "X-Mimecast-MFC-PROC-ID": "8pTFABUCsG540ZPI5BQswqoyhnGm7oH9JCHQcHKVr88_1757598719", "X-Mimecast-Originator": "redhat.com", "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": "The window of the image that should be debayered must be aligned to the\nbayer pattern size (this is a requirement of the current debayering\nimplementation). This is already ensured for the window corner\ncoordinates but not for the window sizes.\n\nWe can either make the window sizes aligned similarly to how the window\ncorner coordinates are aligned or reject an unaligned configuration.\nThis patches chooses the latter as using a different window size than\nthe requested output size could lead to artefacts. Since such a\nsituation is not expected to occur in correctly set up environments, the\nchange should have no negative impact.\n\nReviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>\nSigned-off-by: Milan Zamazal <mzamazal@redhat.com>\n---\n src/libcamera/software_isp/debayer_cpu.cpp | 10 ++++++++++\n 1 file changed, 10 insertions(+)", "diff": "diff --git a/src/libcamera/software_isp/debayer_cpu.cpp b/src/libcamera/software_isp/debayer_cpu.cpp\nindex 185edd814..3200b0c53 100644\n--- a/src/libcamera/software_isp/debayer_cpu.cpp\n+++ b/src/libcamera/software_isp/debayer_cpu.cpp\n@@ -539,7 +539,17 @@ int DebayerCpu::configure(const StreamConfiguration &inputCfg,\n \twindow_.y = ((inputCfg.size.height - outputCfg.size.height) / 2) &\n \t\t ~(inputConfig_.patternSize.height - 1);\n \twindow_.width = outputCfg.size.width;\n+\tif (window_.width % inputConfig_.patternSize.width != 0) {\n+\t\tLOG(Debayer, Error)\n+\t\t\t<< \"Output width is not a multiple of the bayer pattern width\";\n+\t\treturn -EINVAL;\n+\t}\n \twindow_.height = outputCfg.size.height;\n+\tif (window_.height % inputConfig_.patternSize.height != 0) {\n+\t\tLOG(Debayer, Error)\n+\t\t\t<< \"Output height is not a multiple of the bayer pattern height\";\n+\t\treturn -EINVAL;\n+\t}\n \n \t/*\n \t * Set the stats window to the whole processed window. Its coordinates are\n", "prefixes": [ "v2", "3/6" ] }