[PATCH 1/4] drm/ttm: add multihop infrastrucutre (v2)
Christian König
christian.koenig at amd.com
Mon Nov 9 15:57:29 UTC 2020
Am 09.11.20 um 16:16 schrieb Ville Syrjälä:
> On Wed, Nov 11, 2020 at 06:13:02PM +0100, Christian König wrote:
>> Am 09.11.20 um 01:54 schrieb Dave Airlie:
>>> @@ -1432,15 +1479,18 @@ int ttm_bo_swapout(struct ttm_operation_ctx *ctx)
>>> if (bo->mem.mem_type != TTM_PL_SYSTEM) {
>>> struct ttm_operation_ctx ctx = { false, false };
>>> struct ttm_resource evict_mem;
>>> + struct ttm_place hop = {};
>> Please always use memset() if you want to zero initialize something in
>> the kernel, we had enough trouble with that.
> What trouble is that? I've not heard of anything, and we use
> ={} quite extensively in drm land.
={} initializes only named fields, not padding.
The result is that for example when doing a hash or CRC of a structure
you can come up with different results depending on the architecture
and/or structure layout.
Another problem are information leaks from the kernel to userspace
because of this.
Because of this Mesa for example strongly discourages using ={} for
zeroing a structure.
Regards,
Christian.
More information about the dri-devel
mailing list