On Thu, May 4, 2017 at 9:14 AM, Christian König <christian.koenig@xxxxxxx> wrote: > Am 04.05.2017 um 14:52 schrieb Nikola Pajkovsky: >> >> else branch is pointless if it's right at the end of function and use >> unlikely() on err path. >> >> Signed-off-by: Nikola Pajkovsky <npajkovsky@xxxxxxx> > > > Reviewed-by: Christian König <christian.koenig@xxxxxxx> > Applied. thanks. Alex > >> --- >> drivers/gpu/drm/amd/amdgpu/amdgpu.h | 45 >> +++++++++++++++++++------------------ >> 1 file changed, 23 insertions(+), 22 deletions(-) >> >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h >> b/drivers/gpu/drm/amd/amdgpu/amdgpu.h >> index c1b913541739..8ab250d4761a 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h >> @@ -1594,30 +1594,31 @@ static inline void >> amdgpu_ring_write_multiple(struct amdgpu_ring *ring, void *sr >> unsigned occupied, chunk1, chunk2; >> void *dst; >> - if (ring->count_dw < count_dw) { >> + if (unlikely(ring->count_dw < count_dw)) { >> DRM_ERROR("amdgpu: writing more dwords to the ring than >> expected!\n"); >> - } else { >> - occupied = ring->wptr & ring->ptr_mask; >> - dst = (void *)&ring->ring[occupied]; >> - chunk1 = ring->ptr_mask + 1 - occupied; >> - chunk1 = (chunk1 >= count_dw) ? count_dw: chunk1; >> - chunk2 = count_dw - chunk1; >> - chunk1 <<= 2; >> - chunk2 <<= 2; >> - >> - if (chunk1) >> - memcpy(dst, src, chunk1); >> - >> - if (chunk2) { >> - src += chunk1; >> - dst = (void *)ring->ring; >> - memcpy(dst, src, chunk2); >> - } >> - >> - ring->wptr += count_dw; >> - ring->wptr &= ring->ptr_mask; >> - ring->count_dw -= count_dw; >> + return; >> } >> + >> + occupied = ring->wptr & ring->ptr_mask; >> + dst = (void *)&ring->ring[occupied]; >> + chunk1 = ring->ptr_mask + 1 - occupied; >> + chunk1 = (chunk1 >= count_dw) ? count_dw: chunk1; >> + chunk2 = count_dw - chunk1; >> + chunk1 <<= 2; >> + chunk2 <<= 2; >> + >> + if (chunk1) >> + memcpy(dst, src, chunk1); >> + >> + if (chunk2) { >> + src += chunk1; >> + dst = (void *)ring->ring; >> + memcpy(dst, src, chunk2); >> + } >> + >> + ring->wptr += count_dw; >> + ring->wptr &= ring->ptr_mask; >> + ring->count_dw -= count_dw; >> } >> static inline struct amdgpu_sdma_instance * > > > > _______________________________________________ > amd-gfx mailing list > amd-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/amd-gfx _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel