Re: [PATCH] bitops: use the same mechanism for get_count_order[_long]

From: Wei Yang
Date: Tue May 26 2020 - 17:57:25 EST


On Tue, May 26, 2020 at 10:04:57AM +0300, Andy Shevchenko wrote:
>On Mon, May 25, 2020 at 09:59:58PM +0000, Wei Yang wrote:
>> These two functions share the same logic.
>
>So, same comment. Please, add test first, make sure it works on current kernel,
>then after your patch applied, and send it as a series, thanks!
>
>P.S. W/o test code looks good, but based on my experience I'm very suspicious
>about "small" changes that may lead to big issues. Hope you understand my point.
>

Sure, I see your point.

>> Signed-off-by: Wei Yang <richard.weiyang@xxxxxxxxx>
>> ---
>> include/linux/bitops.h | 8 +++-----
>> 1 file changed, 3 insertions(+), 5 deletions(-)
>>
>> diff --git a/include/linux/bitops.h b/include/linux/bitops.h
>> index 5b5609e81a84..80703ef27aee 100644
>> --- a/include/linux/bitops.h
>> +++ b/include/linux/bitops.h
>> @@ -188,12 +188,10 @@ static inline unsigned fls_long(unsigned long l)
>>
>> static inline int get_count_order(unsigned int count)
>> {
>> - int order;
>> + if (count == 0)
>> + return -1;
>>
>> - order = fls(count) - 1;
>> - if (count & (count - 1))
>> - order++;
>> - return order;
>> + return fls(--count);
>> }
>>
>> /**
>> --
>> 2.23.0
>>
>
>--
>With Best Regards,
>Andy Shevchenko
>

--
Wei Yang
Help you, Help me