[PATCH] drm/i915: Silence build error with UBSAN

Jani Nikula jani.nikula at linux.intel.com
Tue Oct 16 11:48:13 UTC 2018


On Tue, 16 Oct 2018, Chris Wilson <chris at chris-wilson.co.uk> wrote:
> Quoting Jani Nikula (2018-10-16 10:59:42)
>> diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
>> index f27dbe26bcc1..897d5a557d88 100644
>> --- a/drivers/gpu/drm/i915/intel_engine_cs.c
>> +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
>> @@ -461,12 +461,14 @@ static void intel_engine_init_batch_pool(struct intel_engine_cs *engine)
>>         i915_gem_batch_pool_init(&engine->batch_pool, engine);
>>  }
>>  
>> +#define IS_POWER_OF_2(n) ((n) != 0 && ((n) & ((n) - 1)) == 0)
>> +
>>  static void intel_engine_init_execlist(struct intel_engine_cs *engine)
>>  {
>>         struct intel_engine_execlists * const execlists = &engine->execlists;
>>  
>>         execlists->port_mask = 1;
>> -       BUILD_BUG_ON_NOT_POWER_OF_2(execlists_num_ports(execlists));
>> +       GEM_BUG_ON(!IS_POWER_OF_2(execlists_num_ports(execlists)));
>
> That should be happy with is_power_of_2() from log2.h

D'oh. Thanks. I was sure there was one, I looked for it, but my git
greps were all upper case. :/

I'll spin a new version, along with the other clang build fix.

BR,
Jani.


-- 
Jani Nikula, Intel Open Source Graphics Center


More information about the dri-devel mailing list