[RFC][PATCH 2/5] libdrm: amdgpu: Initialize unions with memset rather than "= {0}"

Alex Deucher alexdeucher at gmail.com
Mon Apr 22 14:58:58 UTC 2019


On Sat, Apr 20, 2019 at 12:25 AM John Stultz <john.stultz at linaro.org> wrote:
>
> Clang complains when initializing unions using "= {0}"
> so instead use memset.
>
> Cc: Emil Velikov <emil.velikov at collabora.com>
> Cc: Sean Paul <seanpaul at chromium.org>
> Cc: Alistair Strachan <astrachan at google.com>
> Cc: Marissa Wall <marissaw at google.com>
> Signed-off-by: John Stultz <john.stultz at linaro.org>

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

Do you have commit rights?

Alex

> ---
>  amdgpu/amdgpu_cs.c | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/amdgpu/amdgpu_cs.c b/amdgpu/amdgpu_cs.c
> index 7ee844f..7c5b9d1 100644
> --- a/amdgpu/amdgpu_cs.c
> +++ b/amdgpu/amdgpu_cs.c
> @@ -733,12 +733,13 @@ drm_public int amdgpu_cs_submit_raw(amdgpu_device_handle dev,
>                                     struct drm_amdgpu_cs_chunk *chunks,
>                                     uint64_t *seq_no)
>  {
> -       union drm_amdgpu_cs cs = {0};
> +       union drm_amdgpu_cs cs;
>         uint64_t *chunk_array;
>         int i, r;
>         if (num_chunks == 0)
>                 return -EINVAL;
>
> +       memset(&cs, 0, sizeof(cs));
>         chunk_array = alloca(sizeof(uint64_t) * num_chunks);
>         for (i = 0; i < num_chunks; i++)
>                 chunk_array[i] = (uint64_t)(uintptr_t)&chunks[i];
> @@ -763,10 +764,11 @@ drm_public int amdgpu_cs_submit_raw2(amdgpu_device_handle dev,
>                                      struct drm_amdgpu_cs_chunk *chunks,
>                                      uint64_t *seq_no)
>  {
> -       union drm_amdgpu_cs cs = {0};
> +       union drm_amdgpu_cs cs;
>         uint64_t *chunk_array;
>         int i, r;
>
> +       memset(&cs, 0, sizeof(cs));
>         chunk_array = alloca(sizeof(uint64_t) * num_chunks);
>         for (i = 0; i < num_chunks; i++)
>                 chunk_array[i] = (uint64_t)(uintptr_t)&chunks[i];
> @@ -803,9 +805,10 @@ drm_public int amdgpu_cs_fence_to_handle(amdgpu_device_handle dev,
>                                          uint32_t what,
>                                          uint32_t *out_handle)
>  {
> -       union drm_amdgpu_fence_to_handle fth = {0};
> +       union drm_amdgpu_fence_to_handle fth;
>         int r;
>
> +       memset(&fth, 0, sizeof(fth));
>         fth.in.fence.ctx_id = fence->context->id;
>         fth.in.fence.ip_type = fence->ip_type;
>         fth.in.fence.ip_instance = fence->ip_instance;
> --
> 2.7.4
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list