Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp1089506pxb; Fri, 13 Nov 2020 04:04:53 -0800 (PST) X-Google-Smtp-Source: ABdhPJwiVmofK2wQynNhDsfTQWWxvx2ypqdH7MdZ7csZ/SDG01kNWzjOWx09Mg+HeZkL4+b0Ja0a X-Received: by 2002:aa7:c90d:: with SMTP id b13mr2174644edt.136.1605269093303; Fri, 13 Nov 2020 04:04:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605269093; cv=none; d=google.com; s=arc-20160816; b=VzLbOlOiYPBpY3fBr64CX43G4EvCR09DROeBr6adrXF1BFbTVm5LY9ukJhMrjK/O+4 BzR0Jjo1gX0S9ktrosgVOcRb5lcbThvVFfqtB8H9Bc1bRZN0hBsoF7h+PlJMl/sOYs7r VuNlY0U2VyyLkgyMmlLQPkJSERZkunr/sUMIVg6AqBPe6p74QullFZmYWDrCMtP+n9Le G8JrBjgaJH8GfjcE9QH/a1H35WfcKgA42P18JF07XiBJynmVfOVcqtTZw3rx8n9+ejtq 3zPjlReFULBe+cPyUKG/KpsudumNgbayYDwZeH25YXYTOMGTmjzwaRA3fj5DoE2fILlI vEnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=Ckah/x6lPaiHDgIrL4oDmdV3jqixcVntU5mqImE3I1c=; b=fgTl1paPTXpJF+2zyQbIOjJngYmOQxznDZIvo7dHwxGUbsDXq+s9qqmhSp5WcBs3K7 XzYzNyeIa1JE+vPc/SlTLS2l9kIKTdg9SYJL0Fb/6u7o2KePAy3uTWr7mp9K3i5FY2bL NS8di3o/uxJn0MwPpaneYHQILSbQpYDAEKCPU7KVB294o5mrOmf0ZOeWZ5NOhdyaS+r7 g4Nww5THqSv6moF8i5tK/OAJx2wIws9GibGsK1lKpWIlWJQM6r2cEZ1w+BIzQDwS4TtI dyzjnD6FCa+OJacSmm/OiH01SsaYGtyppFQN/GAtnCE5AEZUZNqZtL7R/G5VsIR8ivVO 0LFA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cz19si5720922edb.512.2020.11.13.04.04.29; Fri, 13 Nov 2020 04:04:53 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726501AbgKMMCc (ORCPT + 99 others); Fri, 13 Nov 2020 07:02:32 -0500 Received: from youngberry.canonical.com ([91.189.89.112]:53199 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726846AbgKMMCV (ORCPT ); Fri, 13 Nov 2020 07:02:21 -0500 Received: from 1.general.cking.uk.vpn ([10.172.193.212] helo=localhost) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kdXlZ-0005bg-Pk; Fri, 13 Nov 2020 12:01:21 +0000 From: Colin King To: Anitha Chrisanthus , Edmund Dea , David Airlie , Daniel Vetter , Sam Ravnborg , dri-devel@lists.freedesktop.org Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH][next] drm/kmb: fix array out-of-bounds writes to kmb->plane_status[] Date: Fri, 13 Nov 2020 12:01:21 +0000 Message-Id: <20201113120121.33212-1-colin.king@canonical.com> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Colin Ian King Writes to elements in the kmb->plane_status array in function kmb_plane_atomic_disable are overrunning the array when plane_id is more than 1 because currently the array is KMB_MAX_PLANES elements in size and this is currently #defined as 1. Fix this by defining KMB_MAX_PLANES to 4. Addresses-Coverity: ("Out-of-bounds write") Fixes: 7f7b96a8a0a1 ("drm/kmb: Add support for KeemBay Display") Signed-off-by: Colin Ian King --- drivers/gpu/drm/kmb/kmb_plane.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/kmb/kmb_plane.h b/drivers/gpu/drm/kmb/kmb_plane.h index 486490f7a3ec..6f43a7ae3de6 100644 --- a/drivers/gpu/drm/kmb/kmb_plane.h +++ b/drivers/gpu/drm/kmb/kmb_plane.h @@ -43,7 +43,7 @@ enum layer_id { /* KMB_MAX_PLANES */ }; -#define KMB_MAX_PLANES 1 +#define KMB_MAX_PLANES 4 enum sub_plane_id { Y_PLANE, -- 2.28.0