lkml.org 
[lkml]   [2022]   [Jun]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] libbpf: Fix is_pow_of_2
From
Date


On 06/22/2022 07:03 AM, Zvi Effron wrote:
> On Sun, Jun 19, 2022 at 12:13 PM Pavel Machek <pavel@ucw.cz> wrote:
>>
>> Hi!
>>
>>> From: Yuze Chi <chiyuze@google.com>
>>>
>>> +++ b/tools/lib/bpf/libbpf.c
>>> @@ -4956,7 +4956,7 @@ static void bpf_map__destroy(struct bpf_map *map);
>>>
>>> static bool is_pow_of_2(size_t x)
>>> {
>>> - return x && (x & (x - 1));
>>> + return x && !(x & (x - 1));
>>> }
>>
>> I'm pretty sure we have this test in macro in includes somewhere... should we use
>> that instead?
>
> I went looking for a macro that provided this check and could not find one. I

arch/microblaze/mm/pgtable.c

#define is_power_of_2(x) ((x) != 0 && (((x) & ((x) - 1)) == 0))

> did find the inlined static function is_power_of_2 in log2.h, though, that we
> could use.

Here is a patch, but it seems that this is not worth the extra pain.

https://lore.kernel.org/bpf/8e5291b7-bd89-6fea-bfb7-954cacdb8523@iogearbox.net/

Thanks,
Tiezhu

\
 
 \ /
  Last update: 2022-06-22 02:21    [W:0.097 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site