[PATCH v2] drm/amdgpu: off by on in amdgpu_device_attr_create_groups() error handling

Ruhl, Michael J michael.j.ruhl at intel.com
Wed May 20 15:23:52 UTC 2020

"off by on"


"off by one"



>-----Original Message-----
>From: dri-devel <dri-devel-bounces at lists.freedesktop.org> On Behalf Of Dan
>Sent: Wednesday, May 20, 2020 9:08 AM
>To: Alex Deucher <alexander.deucher at amd.com>; Kevin Wang
><kevin1.wang at amd.com>
>Cc: David Airlie <airlied at linux.ie>; kernel-janitors at vger.kernel.org; linux-
>kernel at vger.kernel.org; amd-gfx at lists.freedesktop.org; Hawking Zhang
><Hawking.Zhang at amd.com>; Rui Huang <ray.huang at amd.com>; dri-
>devel at lists.freedesktop.org; Evan Quan <evan.quan at amd.com>; Kenneth
>Feng <kenneth.feng at amd.com>; Christian König
><christian.koenig at amd.com>; Yintian Tao <yttao at amd.com>
>Subject: [PATCH v2] drm/amdgpu: off by on in
>amdgpu_device_attr_create_groups() error handling
>This loop in the error handling code should start a "i - 1" and end at
>"i == 0".  Currently it starts a "i" and ends at "i == 1".  The result
>is that it removes one attribute that wasn't created yet, and leaks the
>zeroeth attribute.
>Fixes: 4e01847c38f7 ("drm/amdgpu: optimize amdgpu device attribute code")
>Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
>v2: style change
> drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c           | 3 +--
> 1 files changed, 1 insertions(+), 2 deletions(-)
>diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
>index b75362bf0742..e809534fabd4 100644
>--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
>+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
>@@ -1942,9 +1942,8 @@ static int amdgpu_device_attr_create_groups(struct
>amdgpu_device *adev,
> 	return 0;
> failed:
>-	for (; i > 0; i--) {
>+	while (i--)
> 		amdgpu_device_attr_remove(adev, &attrs[i]);
>-	}
> 	return ret;
> }
>dri-devel mailing list
>dri-devel at lists.freedesktop.org

More information about the dri-devel mailing list