lkml.org 
[lkml]   [2016]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v2] regulator: s2mps11: Simplify expression used in BUILD_BUG_ON
From
Date
On 18.02.2016 10:46, Andi Shyti wrote:
>>>> Following BUILD_BUG_ON using a variable fails for some of the compilers
>>>> and optimization levels (reported for gcc 4.9):
>>>> var = ARRAY_SIZE(s2mps15_regulators);
>>>> BUILD_BUG_ON(S2MPS_REGULATOR_MAX < var);
>>>> Fix this by using ARRAY_SIZE directly.
>>>>
>>>> Additionally add missing BUILD_BUG_ON check for S2MPS15 device (the
>>>> check ensures that internal arrays are big enough to hold data for all
>>>> of regulators on all devices).
>>>>
>>>> Reported-by: Arnd Bergmann <arnd@arndb.de>
>>>> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
>>>>
>>>
>>> [...]
>>>
>>>> case S2MPS11X:
>>>> s2mps11->rdev_num = ARRAY_SIZE(s2mps11_regulators);
>>>
>>> Why don't we remove rdev_num at all? It's not used that much
>>> other than in the probe function.
>>
>> Remove from probe? It is used in probe and removal would make the code
>> more complicated than it should be.
>
> no, I mean remove it from s2mps11_info. Other than in the probe
> this value is used only once in s2mps11_pmic_dt_parse() (which is
> called by probe()).

Sure, it can be safely removed from s2mps11_info... but it won't affect
this issue and this patch. Still the local variable would be used in
probe leading to compiler optimization choices impacting BUILD_BUG_ON.

BR,
Krzysztof

\
 
 \ /
  Last update: 2016-02-18 03:01    [W:0.063 / U:0.696 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site