From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Yury Norov <yury.norov@gmail.com>
Cc: linux-m68k@lists.linux-m68k.org, linux-kernel@vger.kernel.org,
linux-sh@vger.kernel.org, linux-arch@vger.kernel.org,
Geert Uytterhoeven <geert@linux-m68k.org>,
Yoshinori Sato <ysato@users.sourceforge.jp>,
Rich Felker <dalias@libc.org>, Arnd Bergmann <arnd@arndb.de>,
Dennis Zhou <dennis@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Wolfram Sang <wsa+renesas@sang-engineering.com>,
David Sterba <dsterba@suse.com>,
Stefano Brivio <sbrivio@redhat.com>,
"Ma, Jianpeng" <jianpeng.ma@intel.com>,
Wei Yang <richard.weiyang@linux.alibaba.com>,
Josh Poimboeuf <jpoimboe@redhat.com>,
Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Subject: Re: [PATCH 6/6] lib: add fast path for find_first_*_bit() and find_last_bit()
Date: Thu, 21 Jan 2021 12:40:20 +0200 [thread overview]
Message-ID: <YAlaFJpV5Jd9VN2S@smile.fi.intel.com> (raw)
In-Reply-To: <20210121000630.371883-7-yury.norov@gmail.com>
On Wed, Jan 20, 2021 at 04:06:30PM -0800, Yury Norov wrote:
> Similarly to bitmap functions, users will benefit if we'll handle
> a case of small-size bitmaps that fit into a single word.
>
> While here, move the find_last_bit() declaration to bitops/find.h
> where other find_*_bit() functions sit.
...
> +static inline
> +unsigned long find_first_bit(const unsigned long *addr, unsigned long size)
> +{
> + if (small_const_nbits(size)) {
> + unsigned long idx;
> +
> + if (!*addr)
> + return size;
> +
> + idx = __ffs(*addr);
> + return idx < size ? idx : size;
But can't we mask it first, then check for 0 (no bit set) otherwise return the
result of __ffs directly?
Same comment for other similar places.
> + }
> +
> + return _find_first_bit(addr, size);
> +}
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2021-01-21 10:41 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-21 0:06 [PATCH 0/6] lib/find_bit: fast path for small bitmaps Yury Norov
2021-01-21 0:06 ` [PATCH 1/6] arch: rearrahge headers inclusion order in asm/bitops for m68k and sh Yury Norov
2021-01-21 8:03 ` Geert Uytterhoeven
2021-01-21 8:47 ` John Paul Adrian Glaubitz
2021-01-21 0:06 ` [PATCH 2/6] bitmap: move some macros from linux/bitmap.h to linux/bitops.h Yury Norov
2021-01-21 10:19 ` Andy Shevchenko
2021-01-21 20:38 ` Yury Norov
2021-01-21 0:06 ` [PATCH 3/6] tools: sync bitops macro definitions with the kernel Yury Norov
2021-01-21 10:23 ` Andy Shevchenko
2021-01-21 0:06 ` [PATCH 4/6] lib: inline _find_next_bit() wrappers Yury Norov
2021-01-21 10:28 ` Andy Shevchenko
2021-01-29 6:41 ` Yury Norov
2021-01-21 0:06 ` [PATCH 5/6] lib: add fast path for find_next_*_bit() Yury Norov
2021-01-21 10:34 ` Andy Shevchenko
2021-01-21 0:06 ` [PATCH 6/6] lib: add fast path for find_first_*_bit() and find_last_bit() Yury Norov
2021-01-21 10:40 ` Andy Shevchenko [this message]
-- strict thread matches above, loose matches on Subject: below --
2021-01-29 20:45 [PATCH 0/6] lib/find_bit: fast path for small bitmaps Yury Norov
2021-01-29 20:45 ` [PATCH 6/6] lib: add fast path for find_first_*_bit() and find_last_bit() Yury Norov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YAlaFJpV5Jd9VN2S@smile.fi.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=dalias@libc.org \
--cc=dennis@kernel.org \
--cc=dsterba@suse.com \
--cc=geert@linux-m68k.org \
--cc=jianpeng.ma@intel.com \
--cc=jpoimboe@redhat.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linux-sh@vger.kernel.org \
--cc=rasmus.villemoes@prevas.dk \
--cc=richard.weiyang@linux.alibaba.com \
--cc=sbrivio@redhat.com \
--cc=wsa+renesas@sang-engineering.com \
--cc=ysato@users.sourceforge.jp \
--cc=yury.norov@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.