From: Yury Norov <yury.no...@gmail.com> Date: Sun, 10 Sep 2023 07:07:16 -0700
> 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: >>> From: Andy Shevchenko <andriy.shevche...@linux.intel.com> >>> Date: Thu, 31 Aug 2023 16:21:30 +0300 >>>> On Fri, Aug 25, 2023 at 04:49:07PM +0200, Alexander Lobakin wrote: >>>>> From: Andy Shevchenko <andriy.shevche...@linux.intel.com> >>>>> Date: Thu, 24 Aug 2023 15:37:28 +0300 >>>>> >>>>>> 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. Treewide -- a ton. We could add it so that devs could start using it and stop open-coding :D > > 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) I also didn't notice anything that would require using logic more complex than this one. It would probably make more sense to define it that way when moving. > > Thanks, > Yury Thanks, Olek