Re: [PATCH v1 1/1] bitops: Share BYTES_TO_BITS() for everyone
From: Yury Norov <yury.norov@gmail.com>
Date: 2023-09-10 14:07:23
Also in:
lkml
On Wed, Sep 06, 2023 at 05:54:26PM +0300, Andy Shevchenko wrote:
On Wed, Sep 06, 2023 at 04:40:39PM +0200, Alexander Lobakin wrote:quoted
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Date: Thu, 31 Aug 2023 16:21:30 +0300quoted
On Fri, Aug 25, 2023 at 04:49:07PM +0200, Alexander Lobakin wrote:quoted
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Date: Thu, 24 Aug 2023 15:37:28 +0300quoted
It may be new callers for the same macro, share it. Note, it's unknown why it's represented in the current form instead of simple multiplication and commit 1ff511e35ed8 ("tracing/kprobes: Add bitfield type") doesn't explain that neither. Let leave it as is and we may improve it in the future.Maybe symmetrical change in tools/ like I did[0] an aeon ago?Hmm... Why can't you simply upstream your version? It seems better than mine.It was a part of the Netlink bigint API which is a bit on hold for now (I needed this macro available treewide). But I can send it as standalone if you're fine with that.I'm fine. Yury?
Do we have opencoded BYTES_TO_BITS() somewhere else? If so, it should be
fixed in the same series.
Regarding implementation, the current:
#define BYTES_TO_BITS(nb) ((BITS_PER_LONG * (nb)) / sizeof(long))
looks weird. Maybe there are some special considerations in a tracing
subsystem to make it like this, but as per Masami's email - there's
not.
For a general purpose I'd suggest a simpler:
#define BYTES_TO_BITS(nb) ((nb) * BITS_PER_BYTE)
Thanks,
Yury