Am 20.05.20 um 17:31 schrieb Ruhl, Michael J:
-----Original Message----- From: Dan Carpenter dan.carpenter@oracle.com Sent: Wednesday, May 20, 2020 11:26 AM To: Alex Deucher alexander.deucher@amd.com; Kevin Wang kevin1.wang@amd.com; Ruhl, Michael J michael.j.ruhl@intel.com Cc: Christian König christian.koenig@amd.com; David Airlie airlied@linux.ie; Daniel Vetter daniel@ffwll.ch; Evan Quan evan.quan@amd.com; Rui Huang ray.huang@amd.com; Kenneth Feng kenneth.feng@amd.com; Yintian Tao yttao@amd.com; Hawking Zhang Hawking.Zhang@amd.com; amd-gfx@lists.freedesktop.org; dri- devel@lists.freedesktop.org; linux-kernel@vger.kernel.org; kernel- janitors@vger.kernel.org Subject: [PATCH v3] drm/amdgpu: off by one 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@oracle.com
v2: style change v3: Fix embarrassing typo in the subject
😊
Acked-by: Michael J. Ruhl michael.j.ruhl@intel.com
Reviewed-by: Christian König christian.koenig@amd.com
m
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 b/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;
}