[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <901aef4c-27fa-475f-9d56-7ee292cca763@intel.com>
Date: Thu, 1 Feb 2024 16:49:23 +0100
From: Alexander Lobakin <aleksander.lobakin@...el.com>
To: Arnd Bergmann <arnd@...db.de>
CC: "David S . Miller" <davem@...emloft.net>, Eric Dumazet
<edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni
<pabeni@...hat.com>, Michal Swiatkowski <michal.swiatkowski@...ux.intel.com>,
Marcin Szycik <marcin.szycik@...ux.intel.com>, Wojciech Drewek
<wojciech.drewek@...el.com>, Yury Norov <yury.norov@...il.com>, "Andy
Shevchenko" <andy@...nel.org>, Rasmus Villemoes <linux@...musvillemoes.dk>,
Alexander Potapenko <glider@...gle.com>, Jiri Pirko <jiri@...nulli.us>, "Ido
Schimmel" <idosch@...dia.com>, Przemek Kitszel
<przemyslaw.kitszel@...el.com>, Simon Horman <horms@...nel.org>,
<linux-btrfs@...r.kernel.org>, <dm-devel@...hat.com>,
<ntfs3@...ts.linux.dev>, <linux-s390@...r.kernel.org>,
"intel-wired-lan@...ts.osuosl.org" <intel-wired-lan@...ts.osuosl.org>, Netdev
<netdev@...r.kernel.org>, <linux-kernel@...r.kernel.org>, Syed Nayyar Waris
<syednwaris@...il.com>, William Breathitt Gray <william.gray@...aro.org>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Subject: Re: [PATCH net-next v5 01/21] lib/bitmap: add bitmap_{read,write}()
From: Arnd Bergmann <arnd@...db.de>
Date: Thu, 01 Feb 2024 14:23:33 +0100
> On Thu, Feb 1, 2024, at 13:21, Alexander Lobakin wrote:
>> From: Syed Nayyar Waris <syednwaris@...il.com>
>>
>> The two new functions allow reading/writing values of length up to
>> BITS_PER_LONG bits at arbitrary position in the bitmap.
>>
>> The code was taken from "bitops: Introduce the for_each_set_clump macro"
>> by Syed Nayyar Waris with a number of changes and simplifications:
>> - instead of using roundup(), which adds an unnecessary dependency
>> on <linux/math.h>, we calculate space as BITS_PER_LONG-offset;
>> - indentation is reduced by not using else-clauses (suggested by
>> checkpatch for bitmap_get_value());
>> - bitmap_get_value()/bitmap_set_value() are renamed to bitmap_read()
>> and bitmap_write();
>> - some redundant computations are omitted.
>
> These functions feel like they should not be inline but are
> better off in lib/bitmap.c given their length.
When their arguments are compile-time constants, they got optimized
well. They're also used on hotpath, so making them external could hurt
performance + taking the first sentence into account, making them
external will hurt the performance even more, 'cause they won't be then
as optimized by the compiler as they are now.
>
> As far as I can tell, the header ends up being included
> indirectly almost everywhere, so just parsing these functions
> likey adds not just dependencies but also compile time.
>
> Arnd
Thanks,
Olek
Powered by blists - more mailing lists