[Intel-gfx] [PATCH] drm/i915: More reasonable memcpy unroll in i915_gem_swizzle_page

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Mon Dec 19 09:47:05 UTC 2016


On ma, 2016-12-19 at 09:19 +0000, Tvrtko Ursulin wrote:
> +++ b/drivers/gpu/drm/i915/i915_gem_fence_reg.c
> @@ -631,9 +631,9 @@ i915_gem_swizzle_page(struct page *page)
>  	vaddr = kmap(page);
>  
>  	for (i = 0; i < PAGE_SIZE; i += 128) {
> -		memcpy(temp, &vaddr[i], 64);
> +		memcpy(&temp[0], &vaddr[i], 64);
>  		memcpy(&vaddr[i], &vaddr[i + 64], 64);
> -		memcpy(&vaddr[i + 64], temp, 64);
> +		memcpy(&vaddr[i + 64], &temp[0], 64);

This reeks of GCC bug badly. So I would not apply as next time the bug
could be into the another direction.

Regards, Joonas
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation


More information about the Intel-gfx mailing list