Message ID | 20220316084148.GD30941@kili (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/amdgpu: fix off by one in amdgpu_gfx_kiq_acquire() | expand |
Applied. Thanks! Alex On Wed, Mar 16, 2022 at 4:42 AM Dan Carpenter <dan.carpenter@oracle.com> wrote: > > This post-op should be a pre-op so that we do not pass -1 as the bit > number to test_bit(). The current code will loop downwards from 63 to > -1. After changing to a pre-op, it loops from 63 to 0. > > Fixes: 71c37505e7ea ("drm/amdgpu/gfx: move more common KIQ code to amdgpu_gfx.c") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > index 8fe939976224..28a736c507bb 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > @@ -266,7 +266,7 @@ static int amdgpu_gfx_kiq_acquire(struct amdgpu_device *adev, > * adev->gfx.mec.num_pipe_per_mec > * adev->gfx.mec.num_queue_per_pipe; > > - while (queue_bit-- >= 0) { > + while (--queue_bit >= 0) { > if (test_bit(queue_bit, adev->gfx.mec.queue_bitmap)) > continue; > > -- > 2.20.1 >
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c index 8fe939976224..28a736c507bb 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c @@ -266,7 +266,7 @@ static int amdgpu_gfx_kiq_acquire(struct amdgpu_device *adev, * adev->gfx.mec.num_pipe_per_mec * adev->gfx.mec.num_queue_per_pipe; - while (queue_bit-- >= 0) { + while (--queue_bit >= 0) { if (test_bit(queue_bit, adev->gfx.mec.queue_bitmap)) continue;
This post-op should be a pre-op so that we do not pass -1 as the bit number to test_bit(). The current code will loop downwards from 63 to -1. After changing to a pre-op, it loops from 63 to 0. Fixes: 71c37505e7ea ("drm/amdgpu/gfx: move more common KIQ code to amdgpu_gfx.c") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> --- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)