Am 10.08.2017 um 21:43 schrieb Dave Airlie:
On 10 August 2017 at 23:56, Emil Velikov <emil.l.velikov@xxxxxxxxx> wrote:
Hi Dave,
On 18 July 2017 at 04:52, Dave Airlie <airlied@xxxxxxxxx> wrote:
+int amdgpu_cs_submit_raw(amdgpu_device_handle dev,
+ amdgpu_context_handle context,
+ amdgpu_bo_list_handle bo_list_handle,
+ int num_chunks,
+ struct drm_amdgpu_cs_chunk *chunks,
+ uint64_t *seq_no)
+{
+ union drm_amdgpu_cs cs = {0};
+ uint64_t *chunk_array;
+ int i, r;
+ if (num_chunks == 0)
+ return -EINVAL;
+
+ chunk_array = alloca(sizeof(uint64_t) * num_chunks);
Out of curiosity:
Does malloc/free produce noticeable overhead that lead you you alloca?
The preexisting code for these ioctls used alloca so I just followed
the existing pattern.
I doubt we'd notice malloc/free, but we shouldn't also be sending more
than 5-10 chunks
even in the future, so stack alloc should be fine.
num_chunks is signed - should we bail on negative values, can we make
it unsigned?
Possibly, I don't see random users of this API appearing though, but yeah could
change the if <= 0.
I would rather make the variable unsigned, but yeah it's not so much of
an issue.
Christian.
Dave.
_______________________________________________
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