From nobody Thu Jun 18 08:01:02 2026 Received: from mail-dl1-f43.google.com (mail-dl1-f43.google.com [74.125.82.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9E75D1A6831 for ; Fri, 1 May 2026 00:13:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777594423; cv=none; b=PV1XfAcb2gVG3qRdDs0ADuM6covwd5d0yaKnuhwjWUMM8xV6AgCa8Hj5CYIIIdIkxn057uSWL0yR/DvIgiEXW0TeFKmdk6YdnNUOjNFdLCK0Sz8JEi+F5/OcAxnyw7HXXEZVwt5VMyltgIKLMQUwmDZbYSoohHVmQLIsFEwjO74= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777594423; c=relaxed/simple; bh=+pBo5yHiBTI+B2QWyppL5rloqn6Ixqqn+uqqlq25Dyw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=A+YR1n0p5z0xZDcGiaTMenMeCdD4Nnu2pfWIMQi7xElwa3alVsXUEf40bS0Wj0YFLzY47v7h0P/9aON7Rht4fcCZBnrnHat6jI44OnPwmz5xpIkYdAOpFKeE41r6dyMMKeZuGgHZJ8RJFBq3Z1o7FbkYrluoF8blPKdFYk7DIa0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=jNdoFa77; arc=none smtp.client-ip=74.125.82.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="jNdoFa77" Received: by mail-dl1-f43.google.com with SMTP id a92af1059eb24-12c8ccc7755so2348571c88.0 for ; Thu, 30 Apr 2026 17:13:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777594422; x=1778199222; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rfo1BGJf3EN8k4catmWVb/vJMArXXWKbGdkN17Yp85w=; b=jNdoFa77RLkTKbQ7+EATSVBUCZf8oPu+T27V7j4VOOleklE/rZP63jM6ACxUf5ujgw cLaF+bWeXDflxHGECTdsY3GkGluLwyeBdLGnhdILlTwqZFBTA6iBx7wN2XHzwGzbeA8H e6HhlMIi2pa2VDnuQL810JzWpxGt7LLOPA1EqmUtCTujSOZ9B3ZVWQoK0/f7vQ/pJkf8 oEcpzFmCkox61m6ZceRVTs5Qfxw9CrtRh/MZN6Zx5GGDYk0210OlBfcVPFNelbh+b33+ EpwwI64DYZ8A8uhXleuseD0T5cwjO9WsUjxpbVE2jCnyGrfJWKkqV/qIByUMS/EeYFbt R00g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777594422; x=1778199222; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=rfo1BGJf3EN8k4catmWVb/vJMArXXWKbGdkN17Yp85w=; b=hyH7Sli/DJgwne+xniJBFgvdetoVS6TWUYhE6smi6O/zOsibe8NYsBubcC+OZUetm/ cwya6Z1nhaRchvkvrIaY2ehCuLcoOxKeuo+puHVd5DelQ7AKyXekg+hv63g5hci4GegB J4ikFzY3626hTsDjS9+p/ppw9evRRkj/eMwPrDh/3UReQukwbuqeDSgoWTX4HIjN01pD j2SROabqDHunk8e4n5/aRVMZFSlrgS5JgiUcKi7D93gqzt3gbEsP6I36RnMUeIHeGvZu +SfKjfP5bNrLQzhJNB+oNw1mYUnBBZJ2t1ZlyhUlngs68sX+WV5i0TAu0PHu+WKUCAtv Wm0w== X-Forwarded-Encrypted: i=1; AFNElJ/xEl+vqwkV1aFRbPIwVXQiMYotiGRMNHp9GYidoMj7Eqyoeq/1aU7zpKAaI6L9G0CzYtoCvXGIbKkkNAA=@vger.kernel.org X-Gm-Message-State: AOJu0Yxh+uK4eJVm9RiNQAerXKEo6Ox8RCy6x3JPD4HYc21wiKNLYveV X+XayE0MSdvZwXFmkd7CzcVtovO5bDWYFLV8xBa+o7CQekCPDwAlHvkU X-Gm-Gg: AeBDieu0bUFy2rGvFpjn0qBF4+ySJIAoysXY3+aa2wJBf4NSwu1RnFG0FVxodA6FxJT MecCNHN8b3OsXzAsuH3mICEZZgNGao1HNwCOC20A31PBpEmh03g//L+gEiaz2iGBlapJ1Eqw2Wg ARr0mQBxK0Wcg8Z/3D7lEQl952mJM9DFCBzEd8bRoBKmkJuM8Oo0mcIZ4jpabtksy9A+uQMUHIg Z5ZMpWrd2FO9G0OJrmEcGJD2OH7Jh1q77fNMDqNoX0f9Pd5O52zaUJ9824/ka3MbWhwgiSdvCyy LaYJmPs8qI79Q23yX1DUFzJo5w+WHV2ff/txBz2JQIlKeQsmKZcKFKouiChvWFDmW4Y93+tzRlK QeTQCL7M2swLlAklFoNIW6LdxxNIdzh7jA0iRqHeneBeGzvq3Q/n2AgokY9n7+d7jEhd9ffaIgV +XNq3TH5UnWi95q7ocok/TkgfjNxNLvErnatwL8bFlk9d00kMAgFdTA0hVLcvR+vG1sq5AovG09 TFa0A6HOBxQUg/lKg== X-Received: by 2002:a05:7300:a497:b0:2e2:4979:ec7 with SMTP id 5a478bee46e88-2ee876806eamr406334eec.10.1777594421619; Thu, 30 Apr 2026 17:13:41 -0700 (PDT) Received: from pop-os.UNKNOWN ([2804:14c:f25a:8247:ca3c:d9ec:76ed:197d]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2ee38e71ccesm2808237eec.10.2026.04.30.17.13.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Apr 2026 17:13:40 -0700 (PDT) From: Gustavo Piaz Da Silva To: dri-devel@lists.freedesktop.org Cc: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, linux-kernel@vger.kernel.org, Gustavo Piaz Da Silva Subject: [PATCH 1/1] drm/blend: size zpos array to active planes instead of total Date: Thu, 30 Apr 2026 21:13:00 -0300 Message-ID: <20260501001301.7666-2-gustavopiazdasilva2102@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260501001301.7666-1-gustavopiazdasilva2102@gmail.com> References: <20260501001301.7666-1-gustavopiazdasilva2102@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" drm_atomic_helper_crtc_normalize_zpos() allocates a temporary array with num_total_plane entries, which is the total number of planes registered across the entire DRM device. However, the function only processes planes active on the given CRTC, as described by crtc_state->plane_mask. Replace num_total_plane with hweight32(crtc_state->plane_mask), which counts exactly the planes that drm_for_each_plane_mask will visit. This ensures the allocation is sized precisely for the work being done, reducing memory pressure on devices where num_total_plane is significantly larger than the number of active planes per CRTC. Signed-off-by: Gustavo Piaz Da Silva --- drivers/gpu/drm/drm_blend.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_blend.c b/drivers/gpu/drm/drm_blend.c index 1f3af27d2418e..ffa1870528726 100644 --- a/drivers/gpu/drm/drm_blend.c +++ b/drivers/gpu/drm/drm_blend.c @@ -465,7 +465,7 @@ static int drm_atomic_helper_crtc_normalize_zpos(struct= drm_crtc *crtc, { struct drm_atomic_state *state =3D crtc_state->state; struct drm_device *dev =3D crtc->dev; - int total_planes =3D dev->mode_config.num_total_plane; + int total_planes =3D hweight32(crtc_state->plane_mask); struct drm_plane_state **states; struct drm_plane *plane; int i, n =3D 0; --=20 2.43.0