From nobody Tue Sep 29 10:32:58 2026 Received: from mail-pg1-f182.google.com (mail-pg1-f182.google.com [209.85.215.182]) (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 4FA793264FB for ; Sat, 8 Aug 2026 21:10:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223424; cv=none; b=MS8dj+7gkH/LGY0o/Hcz3FsIjNTIA0GLuZGk8FM9QRO3W9A/Oosqvr6PSEq0Ieie29qI90JxpR3JmkEykCNpNer5xbCi8tqr32/jT8EntZkHlGpIuNqNVreNSDfsQaVIHumiieJ7OxB/NNheDIBwYo6CXi4g8s7KnxYatWHQLZE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223424; c=relaxed/simple; bh=aDj5aLG7NStNslfYhTIl3YYv6XZgFNUFXK8u7qYzlf0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=e4EN9s7KROLnfcMGSZEjslVitWAuzrlyKRFUolk0RCLZQsyoT5p4h1+pdSHVoquEo+4gTQmMPWcXD6LBYnJn2EYGLKrsZnF5hDSLmskxazbFtLB53CHWfrtv6HMceq0dDsUCH5FUoBgg7pOcp3u+ScJHYX1CDlQe9tFOlGLjFQA= 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=RSe3CmGo; arc=none smtp.client-ip=209.85.215.182 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="RSe3CmGo" Received: by mail-pg1-f182.google.com with SMTP id 41be03b00d2f7-ca7c1176317so496106a12.1 for ; Sat, 08 Aug 2026 14:10:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786223423; x=1786828223; 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:content-type; bh=A3BeIAtfJ2/omVu82I5VMk45uIa8CTiHrIT/44X40ds=; b=RSe3CmGodwerj1vePBTg3rwwG8SK7MkXzRFBieBZ2oxlh9zMsXqPvyNTlYqiWyqu6A MZEmRzdzG8ieGBOzJNWOq7gwJWNvUb2gOjFRb5aJIOvBxrCeZQL9wG+1KGNld1S7ZYPu qyS2Q8WGDc2rLheVRTkoyTzuRC4RdsbW4zfuPufFqG2ivAJTSFcRsIf8feBK8B8mEwen h0f3W6ZCScaC9fWez6oP8umMTzDJ1I+JUYOs1SDP9Z++782AtgJFA5M7xFv6ldORlbdG ICYgnuT/DKd3b4RN0qdIxRoXMrW1AIe4QFPdvtYqS4pav1MrP5fL+LtZw+InUln/C5eq beEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786223423; x=1786828223; 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:content-type; bh=A3BeIAtfJ2/omVu82I5VMk45uIa8CTiHrIT/44X40ds=; b=mNGQJjwyITrwju1isNPs907L80NPoOJ0YOM1FFuNAbUQHpk0pOkhGdqewmdaDVW8WU iMEgzQO+WCKXLwNCK/gZewgfDlJVw4axzl1MJn5G1QVvU6rICePvL+KAaSZ338BREf2r OIoLnThJVo6AWp+VUkaAXGEyb+ji45N4hRuXQNIB0ItYU8qjv1u5XX6+89Fo0QmwLQJJ K15wg2pfWRYcpALO1QTTbwIc+rKvUi9dvcUYIHj35E12QwHpNRtKcHo4XW2Ok+7tvVLg At5L7arSd3+rBY9UIE7BjS9F8yPy4qodR90k/sAvZykUWMe+nmJlCRheat8U87CNiWIo lRxQ== X-Forwarded-Encrypted: i=1; AHgh+Ror91eTZdGtkICU2FmiAy8ZjxiQJZFF0s57WXWpIxCD+g1dFcDWoYG/bzdA4fEdXbakvlmMZndBhptWvMs=@vger.kernel.org X-Gm-Message-State: AOJu0Yw2uMgiIGnXmfbTZZlXoLvxv6Ei1MkXUeG6AVPcx51/qPQHMaNL YPHfZy03ve40LS+djc/dfZn0eowiZvrj+iYtjiaL2e762xr7xKjkbCNGaEEP7Kx1 X-Gm-Gg: AR+sD135vCcllSPCMtK2kpLrUBX7nNlsqW9ONrnLqLG8utvshq/h2xqF8QElVRctA6Y I4tzPCejyq1sRxpS8onbCnIG6VTe3fXURmUanyNVjdspcI6Mc0ZX9pi7yKWLWvMuo+paOaElF57 rJmDhG2BIQDVSxgz+BPqMdsdZDLDuxatxF1anOP7i/bGVMJfOwPfS/SGRPlNxtXTjdNQACm6Jb6 Bi4VZubmYnvWc+P74WBvKnDMJPhQCbKA7i8zUn8k9D1H3EZHwZf/ab7GZqjB7HGR/0VgXKG74yy YbE3n2Q7XxhcgpORochklJ/A9kiBoOCJa4r5lO/TvyEvQUbPVXRIPSx6z+/AbZ1ZP6ZmOT5p0BB 6r3iIyov93QNdFA0GHNUUMpQCogKufmgmM/DbFrLbBbKjNIphmOPtiVQ3VGH7Qp8ookGx1IauDo QsW/K1F292NvEomklHd7Bbmd1EmTWPV0EneKNzNx6yCTWzF4bQgo0LW2yMrTKDinHMmgsqD+u/f rJu8ugJiX0= X-Received: by 2002:a05:6a20:e211:b0:3c3:875d:c546 with SMTP id adf61e73a8af0-3cbce6cadc7mr10236790637.7.1786223422496; Sat, 08 Aug 2026 14:10:22 -0700 (PDT) Received: from localhost.localdomain ([103.178.204.72]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-315bec5aac2sm25713133eec.30.2026.08.08.14.10.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 08 Aug 2026 14:10:22 -0700 (PDT) From: Sreeraj S Kurup To: alexander.deucher@amd.com, christian.koenig@amd.com Cc: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, airlied@gmail.com, simona@ffwll.ch, Sreeraj S Kurup Subject: [PATCH 1/5] drm/amdgpu/aca: Fix race condition and UAF in error cache logging Date: Sat, 8 Aug 2026 21:08:48 +0000 Message-ID: <20260808210852.2938-2-sreekuttan2156239@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260808210852.2938-1-sreekuttan2156239@gmail.com> References: <20260808210852.2938-1-sreekuttan2156239@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" In aca_error_cache_log_bank_error(), find_bank_error() released aerr->lock prior to returning bank_error. This created a time-of-check to time-of-use (TOCTOU) race window where a concurrent caller of aca_log_aca_error() could acquire aerr->lock and free the bank_error node via aca_bank_error_remove(). When execution returned to aca_error_cache_log_bank_error(), incrementing bank_error->count resulted in a Use-After-Free and potential kernel memory corruption. Additionally, bank_error->count was updated outside mutex lock protection. Fix this by acquiring aerr->lock at the start of aca_error_cache_log_bank_error() and holding it continuously across lookup, creation, and counter updates, while removing redundant internal lock acquisitions in helper functions. Signed-off-by: Sreeraj S Kurup --- drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c b/drivers/gpu/drm/amd/= amdgpu/amdgpu_aca.c index db7858fe0c3d..d0d473082431 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c @@ -237,10 +237,8 @@ static struct aca_bank_error *new_bank_error(struct ac= a_error *aerr, struct aca_ INIT_LIST_HEAD(&bank_error->node); memcpy(&bank_error->info, info, sizeof(*info)); =20 - mutex_lock(&aerr->lock); list_add_tail(&bank_error->node, &aerr->list); aerr->nr_errors++; - mutex_unlock(&aerr->lock); =20 return bank_error; } @@ -249,22 +247,16 @@ static struct aca_bank_error *find_bank_error(struct = aca_error *aerr, struct aca { struct aca_bank_error *bank_error =3D NULL; struct aca_bank_info *tmp_info; - bool found =3D false; =20 - mutex_lock(&aerr->lock); list_for_each_entry(bank_error, &aerr->list, node) { tmp_info =3D &bank_error->info; if (tmp_info->socket_id =3D=3D info->socket_id && tmp_info->die_id =3D=3D info->die_id) { - found =3D true; - goto out_unlock; + return bank_error; } } =20 -out_unlock: - mutex_unlock(&aerr->lock); - - return found ? bank_error : NULL; + return NULL; } =20 static void aca_bank_error_remove(struct aca_error *aerr, struct aca_bank_= error *bank_error) @@ -306,11 +298,15 @@ int aca_error_cache_log_bank_error(struct aca_handle = *handle, struct aca_bank_in return 0; =20 aerr =3D &error_cache->errors[type]; + mutex_lock(&aerr->lock); bank_error =3D get_bank_error(aerr, info); - if (!bank_error) + if (!bank_error) { + mutex_unlock(&aerr->lock); return -ENOMEM; + } =20 bank_error->count +=3D count; + mutex_unlock(&aerr->lock); =20 return 0; } --=20 2.54.0 From nobody Tue Sep 29 10:32:58 2026 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 5E8BA37BE80 for ; Sat, 8 Aug 2026 21:10:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223432; cv=none; b=Ab2OTE71azAljp/0lyJuKvIW8Ovl42e7B3ubhN6q1OYceCA4geADud8051kx0wmYYbznvzKPNjVYH8fREv61WfMqsAB04L5HIPeCzPN6L0sw6/cbcLFek69CYz1EZoGNu/iyAMiQJuZyAxz/FSD51GREmuxAFNgh7gNhZQnK6fM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223432; c=relaxed/simple; bh=weRrChkTJgmtJ7e7uWxoKD+8+f+Z6NRdCPQ7Z7d8o5s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XULejUAN63Rn/A9LKK9vTE8HK2qgEr1ZoHQJ776bVMd3mTecPxfQ+x8R/jNQnmbS8qJPDU2O2Nq3XNMAuNQf2/nHb8ZOyTtLF2NgO9bF7PIkgfdu6o+/faUjt4Jqr2ZJWu5nAK5QXR1S2b2NV3+Vk3oof2cvK45/544QL1t+zPM= 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=PwBjPIgp; arc=none smtp.client-ip=209.85.214.180 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="PwBjPIgp" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-2cfbbdfa60bso5363855ad.3 for ; Sat, 08 Aug 2026 14:10:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786223431; x=1786828231; 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:content-type; bh=deoqn41jn4hqxaXBU0LER8gLC0cAyHmrQg56bcVPpQA=; b=PwBjPIgpuubt9Dkzg7NK2jZE71vPIqAQg9Su8M1qYYzMsptXLDCh4PTxoWUIDHcZMh nqbHpGZX4uUdcGau4+bxH4AHH/OLBs9a4uDTdi4dsSW0VcjIv5Hjxz4yWc0r6Ru8AqAy 4tliHTbN1ze7IdPhtRKTdU40ATU7dNoEzwOnpsMmjrR1SeFglMTO6PXlWuOcDS3OZfDH xAx7vqcR+jNErX3rMOadv5e/5UFRWg5rsRdnNSYL94Abptpy0NwNmg0B+zmqXPKnRi/b sBcepz82r+JNp4nVRlLKe63BeVxBtYgz0AWcL31hdn/e3eeVEfqonCzxPoKaSmajmO3z Osyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786223431; x=1786828231; 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:content-type; bh=deoqn41jn4hqxaXBU0LER8gLC0cAyHmrQg56bcVPpQA=; b=Nl8d4FRRAMHiatNGeP+iAuogHoS2D+5L33nO1/MuJnngo0YfPHDXB1AV8+baXaguBD PNyvQcqFLGt59VCQDWCKJYElw5B6tL7FMzaCvQmy1b8FKqUmDZOAvKIkuUe4H6yK6h4y YjLNLoUzar0TDbWdFU/3vAVll3wWM7kon+XDJv3E59MZZyOYp9fc3KnW/+qAPZRrfV7B Vu9LCE/frq+5fcR3Q9AqENGToZgbZLa+dIsj0VpHvlrqqWlwJVAUw9JaCkxKPYPTRElW SSaiNWfbsJ5d7JSy/wDYGf7TBOm2o/BAlgQvA7Ggmvk13vqeOnICuFy5beB8PWFUvi71 V6BA== X-Forwarded-Encrypted: i=1; AHgh+RomO1ympd0/ErTAcRXQbwrfHTMKiPmZr+CXFY6DbdIHNln1OLs+TCS1mwl2UIrKRrb+mLIl0i7Eoki8ADk=@vger.kernel.org X-Gm-Message-State: AOJu0YxH3nto9ecTbg6/xzqCV36tyvigK/P4ihFq3SAIzqdiInA0mnQF yOmiMyeq2Wggpi1jrO7EvXy2pVeXwhikd3BkrMZ6FjukWLhbFwykcMdV X-Gm-Gg: AR+sD12bJAZVh39SkqzRvdwG77uh1UX+8g7qOM6tK0L/KmyjAG2d/qmXRk/OsdjRLsT /CxqumYh+CfJOUDmTdnOcLy7epq1uSdVL8V5Y7ctvudaxbAZuiM+X3Gpvxyq5aYUXpiJPFYDJ54 MrWQ9k4xKna25uOujEE5L1c524EqH55eY1btjN3eQmGIWI1uRgpUWIo9MrgbC8OjO1cj8qbru+k mgwqBQfBYqTw1idCDXbxrMxlVn1rlT/AhjCptJNdHL8U3GcDk73Jl0/WqUu/wZIrU16MF1BxgjQ T5TCu8V0IHCZpT3lTeK8QjO3Y8DKYKTs//+lynl+l3Udv5Q49+RQI5AE1wX5f/B6Vr/CwUdJxzc DwE6lJMdQObutoqTpg/jJ+d1vtdmdL81+oWYooXMkUlTDPmErF4WnzzqJl2KtwPZTLcj/V4lXmX E7wuDeX0bD300LBfEnRmEYn21fTp/Yu3fo2mWlAGO67aD4ax7tmgCQtBt6Pf0nvgCFC+S22PcoR M8O3ZrdESU= X-Received: by 2002:a17:902:ebc2:b0:2cc:d69a:354a with SMTP id d9443c01a7336-2d2a8eb76e2mr131021095ad.22.1786223430721; Sat, 08 Aug 2026 14:10:30 -0700 (PDT) Received: from localhost.localdomain ([103.178.204.72]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-315bec5aac2sm25713133eec.30.2026.08.08.14.10.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 08 Aug 2026 14:10:30 -0700 (PDT) From: Sreeraj S Kurup To: alexander.deucher@amd.com, christian.koenig@amd.com Cc: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, airlied@gmail.com, simona@ffwll.ch, Sreeraj S Kurup Subject: [PATCH 2/5] drm/amdgpu/aca: Add upper bounds check in aca_bank_hwip_is_matched Date: Sat, 8 Aug 2026 21:08:49 +0000 Message-ID: <20260808210852.2938-3-sreekuttan2156239@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260808210852.2938-1-sreekuttan2156239@gmail.com> References: <20260808210852.2938-1-sreekuttan2156239@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" In aca_bank_hwip_is_matched(), the 'type' parameter is used directly as an array index into aca_hwid_mcatypes[]. The function previously checked whether 'type' was equal to ACA_HWIP_TYPE_UNKNOW, but did not validate whether 'type' was less than ACA_HWIP_TYPE_COUNT or negative. If an invalid or out-of-bounds enum value is passed, an out-of-bounds memory read occurs on the aca_hwid_mcatypes array. Fix this by validating that 'type' is strictly greater than ACA_HWIP_TYPE_UNKNOW and less than ACA_HWIP_TYPE_COUNT before performing the array lookup. Signed-off-by: Sreeraj S Kurup --- drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c b/drivers/gpu/drm/amd/= amdgpu/amdgpu_aca.c index d0d473082431..c76664af9902 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c @@ -138,7 +138,7 @@ static bool aca_bank_hwip_is_matched(struct aca_bank *b= ank, enum aca_hwip_type t int hwid, mcatype; u64 ipid; =20 - if (!bank || type =3D=3D ACA_HWIP_TYPE_UNKNOW) + if (!bank || type <=3D ACA_HWIP_TYPE_UNKNOW || type >=3D ACA_HWIP_TYPE_CO= UNT) return false; =20 hwip =3D &aca_hwid_mcatypes[type]; --=20 2.54.0 From nobody Tue Sep 29 10:32:58 2026 Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) (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 9EB5937BE80 for ; Sat, 8 Aug 2026 21:10:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223438; cv=none; b=cpmJzYRLcFUzT2395PQRvAYsMoMhGXaK7F7pSaofY7LgaRkrKFj89glXfyncZaZgAf68M41Wi9RYW2JxR1eDh/D0JdZyd9/wnBFAkXLZ6m1b7vi7BCjnqVpw0WXHvREAOlvhIk8QA8ATdd8E34BT4/7pKs065/+XoZUy9xGYlIk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223438; c=relaxed/simple; bh=FG8BGgUg0M0sYuq+T07LLa9qSW0Dco9Seand6No1sNk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fMhqUA5awdLcqeJDtTCRjfzArw3i+Yq/JdFipfgSR5DQsjTJXZhsCQEuPl27/3iDEHqYQ464jAhcjeQvx+ijpq++0TQ28IzRY5slLxI7NV3jzsWN6wJG85c9CireZgvzNil6t3ekRhO+rlePcYpHRMZ+ln/zpCZCVhxFhtuOlVU= 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=kgHLiaz9; arc=none smtp.client-ip=209.85.215.177 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="kgHLiaz9" Received: by mail-pg1-f177.google.com with SMTP id 41be03b00d2f7-ca12086c06eso480270a12.0 for ; Sat, 08 Aug 2026 14:10:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786223437; x=1786828237; 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:content-type; bh=yArLt2s8wdC4FzctPE80cYnqePeUAwYoOgd9G0fcya8=; b=kgHLiaz9X3CC+5YJ0rSVJ89zJfhXRB5kL+9PNz13Y+cI5jn2dtg8ttmFcZv0s43zRx ExOUfVsUDLk4lBGJTotesIMy9hPevMWctql/xhDlWs9SbPkUS2bwIoeldzCR9Fd1+3Jm lCT3OTedvkwqQS7K/9vfOEftJ4dKnGoRmq5w2oU8A3Ue86LQUQo/fgrodeCjQY4x+yO0 WQaeTR/AmcEdjQXDKrIbDe8Q2X3hqkeHtrdqaU/Z1sdlkPbG3uyecDWJamcLdyORSFan VsbGZQVHP+UfTR2QQ16a8JIt5tvMf2pi+DtO/RBQk73gru7VXzLM355cl9kxESh1bStU gWqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786223437; x=1786828237; 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:content-type; bh=yArLt2s8wdC4FzctPE80cYnqePeUAwYoOgd9G0fcya8=; b=liL6eUaqcTwUuKdn3tCwc1JojXjZa9YnYyJOuuJpxApd8NFUfZ4p0E4lIvDJUWlFzW 9FOG/10qQKy7hQIXRT7E1kFTLXqoOBqBwp0nxXfi3cZ8ycMZTngQIY6aBnf3j/Hspok/ h2RGKMWMwMyD+rMEVCYKfu1FI9g62WcuQ89FkbFNWSvoTVIDS8d43R60UdSPrP5E9PY8 8dRq3ezp/eMM/mBtQHWME8AX1tKc+XIiVJP6Db4MvoB/2ZLUoYl+QTHxkt2Yzx0eqNmi ziYAD3xTyduI8gzchhV9aCA0wlWMqLKW/PQ94KX2DmnUc0ebOhUemrrymocH1sTnCfb1 Tj9w== X-Forwarded-Encrypted: i=1; AHgh+RpQRsy7FVWipt53nmYvJ/4mxkfc1xkvEzKzBzlVxAQB2lhTPFx3hct8xYvFOcSOxOkYYgXm4D37NqbQke0=@vger.kernel.org X-Gm-Message-State: AOJu0Yz7917xzpmB1VCObmVH761m2DlKkwEXHNbqYTU8iKvp9T3qVhD2 F2W6Zc9WKxvP7KCcLT9Y3Cmn0C/TqBazCBQt49z+P3hvrsapE2lLPObO X-Gm-Gg: AR+sD13xymkqiRDS0sXxEvz1DVK+BgmGGJmFITksmiNp9YmMAh7zk0xK8yS2WapuSl2 zAl+Tg1+lT7zFuHMQcifNFhzzbPeL8T2Nvl1mMYaiBLXlmhhgRwgpX5q7PHNcwIt2ASzGFB45CK NZARWCnbuivohFRRqtpX/8n2SvyHMwmEBiYjVd4OYjKEf9AkhszZIHjHOPdNCNK7rKSXiIYINpX F4SlYbzSGj96OTkXlZfBgd+QI5bAh0AQ9l6+Jjl8P2pIc7XB5MNxxdRQb65i2EhqEQtVYbUzgUT 4HABnKyjUwO82B7DP2jFJUo/MfRaGQcXgnupJuT+qkunjQYwVWNjHK5uAwcTNCM+92vgfK4z4G6 mnemPDqlSYG2uosiYijqttPG6FpWq9qCFIlSCXKfQH3p/ZnWkFmR5ocA2mVBX0ojYQPQHtqSxfX KKDblCvd36kf+ITCnZ9vyg2w88dCx5f/8vYw7oIFTB9z+ngL/exlCJ/wKEYQzdWSUUXZaDmOFo9 HGQiPH/HDE= X-Received: by 2002:a05:6a20:918c:b0:398:7ed3:a001 with SMTP id adf61e73a8af0-3cbce6ca776mr10224996637.2.1786223436830; Sat, 08 Aug 2026 14:10:36 -0700 (PDT) Received: from localhost.localdomain ([103.178.204.72]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-315bec5aac2sm25713133eec.30.2026.08.08.14.10.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 08 Aug 2026 14:10:36 -0700 (PDT) From: Sreeraj S Kurup To: alexander.deucher@amd.com, christian.koenig@amd.com Cc: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, airlied@gmail.com, simona@ffwll.ch, Sreeraj S Kurup Subject: [PATCH 3/5] drm/amdgpu/aca: Fix inverted validation logic in amdgpu_aca_get_error_data Date: Sat, 8 Aug 2026 21:08:50 +0000 Message-ID: <20260808210852.2938-4-sreekuttan2156239@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260808210852.2938-1-sreekuttan2156239@gmail.com> References: <20260808210852.2938-1-sreekuttan2156239@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" aca_handle_is_valid() returned false if !list_empty(&handle->node) evaluated to true. Because active registered handles have non-empty nodes in the handle list, valid handles evaluated as invalid. Consequently, amdgpu_aca_get_error_data() returned -EOPNOTSUPP whenever aca_handle_is_valid() evaluated to true. Fix the logic in aca_handle_is_valid() to verify that the handle is non-NULL, contains a valid mask, and is currently registered in the list. Negate the check in amdgpu_aca_get_error_data() so valid handles are processed properly. Signed-off-by: Sreeraj S Kurup --- drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c b/drivers/gpu/drm/amd/= amdgpu/amdgpu_aca.c index c76664af9902..1cddacb7c554 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c @@ -586,10 +586,7 @@ static int __aca_get_error_data(struct amdgpu_device *= adev, struct aca_handle *h =20 static bool aca_handle_is_valid(struct aca_handle *handle) { - if (!handle->mask || !list_empty(&handle->node)) - return false; - - return true; + return handle && handle->mask && !list_empty(&handle->node); } =20 int amdgpu_aca_get_error_data(struct amdgpu_device *adev, struct aca_handl= e *handle, @@ -599,7 +596,7 @@ int amdgpu_aca_get_error_data(struct amdgpu_device *ade= v, struct aca_handle *han if (!handle || !err_data) return -EINVAL; =20 - if (aca_handle_is_valid(handle)) + if (!aca_handle_is_valid(handle)) return -EOPNOTSUPP; =20 if ((type < 0) || (!(BIT(type) & handle->mask))) --=20 2.54.0 From nobody Tue Sep 29 10:32:58 2026 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 3343537A822 for ; Sat, 8 Aug 2026 21:10:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223444; cv=none; b=MBi6vfPoaZzBgulv6GybztM0aA2+gItkdL9v9QG74ZYZwtrS85o8cJTIGrBY8fWS8/vhNTaUImIN/yusOr6s+Z1blxla5gf0FBT8RaTKZzj1sRfI3Mu1Mi+Pul5arZ5aWaj537ljOB4LgMvQvAJZuCDYr89dZArIpMh6Oqn3g04= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223444; c=relaxed/simple; bh=urucChTEW3t1rxisOUF2FGWc8l51R9EqNm93s5TO2Ss=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pNXlh06oUpfD+BWfSv7qt3eJH6JjrM6LbwcyPjhXzReO6DeEYGPL1TjGjh/1WvtBsvNutENbPvBzbWtwIxYzBc6WY/Ke6y54ocKuBV24hHVVY3pmGp7ndDaPCRkCBCh2z4aEwJlkVAOD0XkzrkpXkRl4I2vK66eriAVwq05MeAA= 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=ZCMcKjED; arc=none smtp.client-ip=209.85.214.181 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="ZCMcKjED" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2ced3386430so8194035ad.1 for ; Sat, 08 Aug 2026 14:10:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786223442; x=1786828242; 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:content-type; bh=6hwMQ2HMVOe/ZrnavsLxJJgOKuAnP/w9GzcsAMiyxO4=; b=ZCMcKjED3o8fkDAyIUDGQ+ae6ro4gy8aZkbR8gZKDd1zd3wFZaFLEbAB05ekzymmlC VCLRmMHEvF5BotaA5XHMz1pg+oInmRxxpiNzBsJdj21Ku2ms8Zr+YT2y6msxovaQ3WJW rTfFb+dNZBmM8HY6ngamB952O/qZPjvkGeB5TuvlLA8w08uie2FdrHHZiXXrw8iyvDAg qlgcNWcY/wd0hP9ovvRJfn4MxY182ZCBe89O+eG+bZBc12qwn+7limBZ/wY7eq+mr48X F8ZozXKiX/yu2RWjcGifPexQvoCm6QAN82OpfkkNVoHgUl0A2kF8jJJJ3bTz9vMdN9/+ Xi0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786223442; x=1786828242; 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:content-type; bh=6hwMQ2HMVOe/ZrnavsLxJJgOKuAnP/w9GzcsAMiyxO4=; b=nmvr/Wcoo+BwjIg7DqjBKjpzWdc8ehKfUpEJtp8eqmySkilmB96n2OZ+GLaL4gF7xb xx1iERnK9lAarXE2N+lNXBfqHusNs9wBiM24Nz6qYvuKCJB6X/nhCMLm/AJbvj1l9Hm+ URRjj7HzGwzJhD9zQxHLY6m6AfMf8zBaoHb3yci8yMXuxo9S2FWcOqdmLj7gJxLgDL46 MJu2PLLQxVFNtRIl8I8C90ENhOjmQer/kqKwyoFfvsIiDR4cLH3+mcaJfiGJuH6sEWcQ X3/uRMO3+LCHtpZGS46pI9uCTKeD2en6KzpRSNIMCxGPyEsvBCS+8mZsclOE4LmsC6P/ rx0w== X-Forwarded-Encrypted: i=1; AHgh+RqOEPPp/NTPOMMnRkAmF54oHBkSyFDOjRF5Q/0DHR0XTI7QVDSnp73C+Y9STrxBbbu8CrTQI9Nxeiqb3uc=@vger.kernel.org X-Gm-Message-State: AOJu0YxkWod3qIQMFgimrTyr6wbvnurlwDByzcno0Own9BnOEQIcFwqc arkIVrbaRkpBvXOjT/fO8TTSubO8mQ+q86y3JSClySubViSxIMZPMoD0 X-Gm-Gg: AR+sD12js0OuOPbKXnqwoY8o9AVXD9ErENbu9HGJAUNj7+UUmvR2wzd3EsqufoX1a/b SqiWwEk5ULFWjJ2KftmcXDpoYzxusJ14/vLKhGiyEtSJVS+syTypUb72hdAuLQvKOg6fOFxZdSW p5B/ZFmJVjMFziErZZJPUIjc2UXBWZW/8xov5+4YhCUsxZlPUH933cxgxqXeDQFuU1upYaGLHu0 JYLw3Ar7bIsBX+Me69hJyFXP2SqF6ez7hDugnkT512CSUhrq/DLhKGwSZBHgNZpSqyFuBlRGOA6 EGOS553MIx2UtROfcUGZk4yRMVYLmNqO7lwibKPEor1Em5fI+CxSM5AAbyCD4T63TTX7vSZnC91 qn8Qa/YKSEaL+UWbJA/hV/UYVCakI0STw5Mx5PdjAMWKyOAAhQOKUckbw9+G8B92bdhLrJQ75pq z5vJpLYvT+SvVg+6QL3Gj1hQ9n0B8dy0qC3S1DSgzDUa41RZgqp5gWrr0h2o2ZD8bIFjG4fB8u/ 2kXqTZWjxs= X-Received: by 2002:a05:6a20:4322:b0:3c3:b57b:6285 with SMTP id adf61e73a8af0-3cbc01b4a9bmr11804825637.13.1786223442339; Sat, 08 Aug 2026 14:10:42 -0700 (PDT) Received: from localhost.localdomain ([103.178.204.72]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-315bec5aac2sm25713133eec.30.2026.08.08.14.10.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 08 Aug 2026 14:10:41 -0700 (PDT) From: Sreeraj S Kurup To: alexander.deucher@amd.com, christian.koenig@amd.com Cc: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, airlied@gmail.com, simona@ffwll.ch, Sreeraj S Kurup Subject: [PATCH 4/5] drm/amdgpu/aca: Add missing NULL check for banks parameter in aca_banks_add_bank Date: Sat, 8 Aug 2026 21:08:51 +0000 Message-ID: <20260808210852.2938-5-sreekuttan2156239@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260808210852.2938-1-sreekuttan2156239@gmail.com> References: <20260808210852.2938-1-sreekuttan2156239@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" aca_banks_add_bank() verified that the 'bank' parameter was non-NULL, but passed 'banks' directly into list_add_tail(&node->node, &banks->list) and incremented 'banks->nr_banks' without validating whether 'banks' was NULL. Add a NULL check for 'banks' to prevent a kernel NULL pointer dereference if an invalid pointer is passed by a caller. Signed-off-by: Sreeraj S Kurup --- drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c b/drivers/gpu/drm/amd/= amdgpu/amdgpu_aca.c index 1cddacb7c554..47f3bcd5de0b 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c @@ -49,7 +49,7 @@ static int aca_banks_add_bank(struct aca_banks *banks, st= ruct aca_bank *bank) { struct aca_bank_node *node; =20 - if (!bank) + if (!banks || !bank) return -EINVAL; =20 node =3D kvzalloc_obj(*node); --=20 2.54.0 From nobody Tue Sep 29 10:32:58 2026 Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) (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 C6B6E37D114 for ; Sat, 8 Aug 2026 21:10:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223450; cv=none; b=tq3h43IRWC+pM3EV5IhtQ/wnWuJDmHj+uhAsPPE8hejTU4xFbucAoKqhvWLGSUKprB2y0ybXECZtRujR2AWh4MA4FVJ3dnRbpbkpieAkvI+cYtbGCDIqK2woI3XMd1vF2JydsNTAzfwk2vpHs3ks3flOmLam0o9syZxjgQAoYUk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786223450; c=relaxed/simple; bh=Gtnc7yHugoH8nMheSErKzrhTCKkVbyJ2CKYkLY1yce0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PuL8tIjnXYdIytrVBkbbwM8ypEdhZC7fg0SULPQuGKibBj+Nqj1xcAVNudBZZhzywJLnm5ptoq9WtsTqOn3HyYGLWg8lvznGdzTBABP7+CnmTy+WDwB27i2ZqPJbGqhIDH6ag4EpwOwpzZ3OEwQx1BoyIVm4FC272KpUMr6UcOI= 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=VCNzBBgs; arc=none smtp.client-ip=209.85.215.171 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="VCNzBBgs" Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-ca12086c06eso480309a12.0 for ; Sat, 08 Aug 2026 14:10:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786223448; x=1786828248; 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:content-type; bh=+ZnZdNInXJH3ydcuEXxhiXYZkKv9ONVp9lgUwHUOreg=; b=VCNzBBgsB3rIfcTwN6+hq8jLr5gnS3FciZhb4NsduOWDSy/5s6EmiGIRd1mDJ54C+2 +tX2xbgWOAb1qSH1P2BHGvFKMhbGskN7gdnKz6a7qua/vgqgUp2x5NAaoBNwAz/PI0fj rBxk0cDHjEt2k7ZWq22i+8xMedsJIZYEuW5OrYqAMi6ezN24/UjK5Kr+2bSG4y0WN1PY dV08wKQ1oe+H1UT3QQVx/S0FGQZVfaNi2DhV1uhl62epMIzAIGSd2aVOFRMjvphtrIJ7 nOwlc1kc7ZZQJ3W/zL95r5qDu/NNKo204WL+3Sggob4YXSp0ZXQAhzCOXZ+k4WeuMn49 FKAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786223448; x=1786828248; 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:content-type; bh=+ZnZdNInXJH3ydcuEXxhiXYZkKv9ONVp9lgUwHUOreg=; b=svB1OkUHErbFA3d/atKRBHzohYj5xfnsBpkOAbIFVV8Fp3F5eLFlBQl3Or/nCuXQYB /98TqFtviBpeYTYNLEDNP0ISEm+SQv10S0DFqJxW+iVEyadiSXoaLcHN+RUZrV6PVDIr y1m/XTggLFgNwdgOtXYLESBR5Ts/8Knws4ljNxPKAmn42czIE1HuOcH4bB3PHlGkyqYc +8V7gFfvdPGQFfJwYgIQkwQ8nCoqrNjYH47+uAe/eLyHMeRXBSBztxUmx+G4s1eOTpC+ hptHyyJsQhJfIorwqoCNDZ3CujwjNGDUV0fT9ZC+K+d0Lr/dp5DLJutuz7+Brwe9dp5i Du9Q== X-Forwarded-Encrypted: i=1; AHgh+RrvcLvhIFHei6H8+Ksv1cvQJk+K7UFK+gfR7H1EENF7SEnrvIFXqP/WCig+EwvmZNs6ZhLBrgMfzMKtLHE=@vger.kernel.org X-Gm-Message-State: AOJu0YxxDQpxiZ9HcD3K/dQU/9h/KHlQ5FmM44ltTvC1rzzFYLYWYnvN PtiEbfAk/SqdZhYLLXlFFag3twV6REgAr5DjINGAIZEUrE3WhnPu2mS3 X-Gm-Gg: AR+sD126pJCL8NnD3Y8XyMweR6Y7C9hI95YjxK6GyVnbTO4Gca78KWyY6kTZ8NDXDzK eUUANt/nLHSGA74g8ft/FY6A9LjMROK18ZZELUvhNS65bQaFVKk53qAUA3Y8ClFHBnfM0PDlcJR KpC45rGXnpCdKGGyqkHWP6tzasTxzLJ7WEMQYkPXXSVpONhLfStTKKtYNc+PTeF50cw1R5isL20 q1SisZSY3QgH/Midh/oBq2w0rABD6PRVWz8sL4eRn2W60xl6CDAWeiIokRBFuN+pn8bevkAuNNw XlwS5YgA5cZ/xk8SLzCFW5/u5SdYAHE1wd0E3FQOEDOh1H5KzFbQCdn/24phwLEBM/Ais+SW0k+ txjiqQKglxdsbhETUyPIC2V8awU6WibbmDjbPWG6iHWqb9EevtztAZczsnm1MqFuos2NNCFYqfg M2CcB/n9zFl1poSeKZZnhST04jPl3f65V5FzEstdoI4U/rVDJKmjmTyi7Lc1XKYlm3e8FRhCMsA vQ6wbOXKvE= X-Received: by 2002:a05:6a20:3949:b0:3c3:a9ad:a747 with SMTP id adf61e73a8af0-3cbce92f86bmr9478414637.26.1786223447996; Sat, 08 Aug 2026 14:10:47 -0700 (PDT) Received: from localhost.localdomain ([103.178.204.72]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-315bec5aac2sm25713133eec.30.2026.08.08.14.10.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 08 Aug 2026 14:10:47 -0700 (PDT) From: Sreeraj S Kurup To: alexander.deucher@amd.com, christian.koenig@amd.com Cc: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, airlied@gmail.com, simona@ffwll.ch, Sreeraj S Kurup Subject: [PATCH 5/5] drm/amdgpu/aca: Fix off-by-one buffer size parameter in add_aca_sysfs Date: Sat, 8 Aug 2026 21:08:52 +0000 Message-ID: <20260808210852.2938-6-sreekuttan2156239@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260808210852.2938-1-sreekuttan2156239@gmail.com> References: <20260808210852.2938-1-sreekuttan2156239@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" snprintf() guarantees NUL-termination within the size limit specified by its second argument. Passing 'sizeof(handle->attr_name) - 1' unnecessarily reduces the usable buffer capacity by one byte, causing sysfs attribute names to be truncated early. Pass 'sizeof(handle->attr_name)' directly to snprintf() in add_aca_sysfs() to allow full use of the allocated buffer space. Signed-off-by: Sreeraj S Kurup --- drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c b/drivers/gpu/drm/amd/= amdgpu/amdgpu_aca.c index 47f3bcd5de0b..99c315283f06 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_aca.c @@ -682,7 +682,7 @@ static int add_aca_sysfs(struct amdgpu_device *adev, st= ruct aca_handle *handle) { struct device_attribute *aca_attr =3D &handle->aca_attr; =20 - snprintf(handle->attr_name, sizeof(handle->attr_name) - 1, "aca_%s", hand= le->name); + snprintf(handle->attr_name, sizeof(handle->attr_name), "aca_%s", handle->= name); aca_attr->show =3D aca_sysfs_read; aca_attr->attr.name =3D handle->attr_name; aca_attr->attr.mode =3D S_IRUGO; --=20 2.54.0