[PATCH] drm/amd/powerplay: rv: Use designated initializers

Christian König christian.koenig at amd.com
Fri Jul 28 09:13:01 UTC 2017


Am 28.07.2017 um 03:43 schrieb Alex Deucher:
> On Tue, Jul 25, 2017 at 5:47 PM, Kees Cook <keescook at chromium.org> wrote:
>> As done for vega10 in commit 3ddd396f6b57 ("drm/amd/powerplay: Use
>> designated initializers") mark other tableFunction entries with designated
>> initializers. The randstruct plugin requires designated initializers for
>> structures that are entirely function pointers.
>>
>> Cc: Rex Zhu <Rex.Zhu at amd.com>
>> Cc: Hawking Zhang <Hawking.Zhang at amd.com>
>> Cc: Alex Deucher <alexander.deucher at amd.com>
>> Signed-off-by: Kees Cook <keescook at chromium.org>
>> ---
>> If I can get an Ack for this, I'll carry it in the gcc-plugins tree, unless
>> you think this is worth landing for v4.13, in which case, please take it
>> now. :)
>>
> Acked-by: Alex Deucher <alexander.deucher at amd.com>
>
> I'm happy to take this through my tree if that is ok with you.

I'm wondering a bit how the plugin detects that it can randomize a 
structure layout?

We have a couple of structs where this would be fatal.

Christian.

>
> Alex
>
>> Thanks!
>> ---
>>   drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c | 8 ++++----
>>   1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c
>> index 4c7f430b36eb..8e6cfd89c7e0 100644
>> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c
>> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c
>> @@ -308,8 +308,8 @@ static int rv_tf_set_num_active_display(struct pp_hwmgr *hwmgr, void *input,
>>   }
>>
>>   static const struct phm_master_table_item rv_set_power_state_list[] = {
>> -       { NULL, rv_tf_set_clock_limit },
>> -       { NULL, rv_tf_set_num_active_display },
>> +       { .tableFunction = rv_tf_set_clock_limit },
>> +       { .tableFunction = rv_tf_set_num_active_display },
>>          { }
>>   };
>>
>> @@ -382,7 +382,7 @@ static int rv_tf_disable_gfx_off(struct pp_hwmgr *hwmgr,
>>   }
>>
>>   static const struct phm_master_table_item rv_disable_dpm_list[] = {
>> -       {NULL, rv_tf_disable_gfx_off},
>> +       { .tableFunction = rv_tf_disable_gfx_off },
>>          { },
>>   };
>>
>> @@ -407,7 +407,7 @@ static int rv_tf_enable_gfx_off(struct pp_hwmgr *hwmgr,
>>   }
>>
>>   static const struct phm_master_table_item rv_enable_dpm_list[] = {
>> -       {NULL, rv_tf_enable_gfx_off},
>> +       { .tableFunction = rv_tf_enable_gfx_off },
>>          { },
>>   };
>>
>> --
>> 2.7.4
>>
>>
>> --
>> Kees Cook
>> Pixel Security
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx




More information about the amd-gfx mailing list