LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Andy Shevchenko <firstname.lastname@example.org>
To: "Vaittinen, Matti" <Matti.Vaittinen@fi.rohmeurope.com>
Cc: Matti Vaittinen <email@example.com>,
Liam Girdwood <firstname.lastname@example.org>,
Mark Brown <email@example.com>, Jiri Kosina <firstname.lastname@example.org>,
Andrew Morton <email@example.com>,
Yury Norov <firstname.lastname@example.org>,
Kumar Kartikeya Dwivedi <email@example.com>,
Rasmus Villemoes <firstname.lastname@example.org>,
Geert Uytterhoeven <email@example.com>,
Subject: Re: [PATCH 1/4] bitops: Add single_bit_set()
Date: Mon, 22 Nov 2021 14:57:27 +0200 [thread overview]
Message-ID: <YZuTt3+PPvyJsFQfirstname.lastname@example.org> (raw)
On Mon, Nov 22, 2021 at 12:42:21PM +0000, Vaittinen, Matti wrote:
> On 11/22/21 13:28, Andy Shevchenko wrote:
> > On Mon, Nov 22, 2021 at 01:03:25PM +0200, Matti Vaittinen wrote:
> >> There are cases when it is useful to check a bit-mask has only one bit
> >> set. Add a generic helper for it instead of baking own one for each
> >> user.
> > So, you decided to reinvent hamming weight...
> > Please, drop this patch and use corresponding hweight() call.
> Thanks Andy.
> There are few differences to hamming weight here. We scan only given
> amount of bits - and we will end scanning immediately when we hit second
> set bit. Oh, and obviously we only return information whether there is
> exactly one bit set. So no, this is not hamming weight().
What do you mean by this?
hweight() will return you the number of the non-zero elements in the set.
In application to boolean based arrays it means the number of bits that
are set. Obviously, the condition `hweight() == 1` is what you are looking
Or is there anything that missed in the equation?
> Yet, I think you are correct. My use-case does not warrant adding this.
> I have no need for scanning only certain amount of bits.
(I guess no need to tell that eliminating bits is using mask in the parameter
as you do anyway by supplying amount of bits.)
> I think I actually tried using hweight() at some point but don't really
> remember why I rolled the single_bit_set. (I remember the hweight()
> usage because I had to do some googling as I had never heard term
> hamming weight before).
Oh, it should be a very good reason not to use hweight() since on some
architectures it might become just one assembly instruction.
> I'll see how it works out and if (when) it does I'll respin the series
> w/o this as you suggested. So thanks.
(Side note: all your sentences but last in all of the paragraphs are ending
with trailing space. For example, "series " and "thanks." for the comparison
in the previous paragraph. Can you fix this, please?)
With Best Regards,
next prev parent reply other threads:[~2021-11-22 12:57 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-22 11:03 [PATCH 0/4] Provide event map helper for regulator drivers Matti Vaittinen
2021-11-22 11:03 ` [PATCH 1/4] bitops: Add single_bit_set() Matti Vaittinen
2021-11-22 11:28 ` Andy Shevchenko
2021-11-22 12:42 ` Vaittinen, Matti
2021-11-22 12:57 ` Andy Shevchenko [this message]
2021-11-22 13:00 ` Andy Shevchenko
2021-11-22 13:18 ` Vaittinen, Matti
2021-11-23 10:42 ` David Laight
2021-11-23 10:47 ` Andy Shevchenko
2021-11-23 10:58 ` David Laight
2021-11-23 13:43 ` 'Andy Shevchenko'
2021-11-23 14:36 ` David Laight
2021-11-23 11:42 ` Vaittinen, Matti
2021-11-22 17:54 ` Yury Norov
2021-11-22 19:56 ` Andy Shevchenko
2021-11-23 7:51 ` Yury Norov
2021-11-23 5:26 ` Vaittinen, Matti
2021-11-23 7:33 ` Yury Norov
2021-11-23 9:03 ` Andy Shevchenko
2021-11-23 9:10 ` Geert Uytterhoeven
2021-11-22 11:03 ` [PATCH 2/4] regulators: Add regulator_err2notif() helper Matti Vaittinen
2021-11-22 11:04 ` [PATCH 3/4] regulators: irq_helper: Provide helper for trivial IRQ notifications Matti Vaittinen
2021-11-22 11:48 ` Andy Shevchenko
2021-11-22 12:44 ` Vaittinen, Matti
2021-11-22 11:04 ` [PATCH 4/4] regulator: Drop unnecessary struct member Matti Vaittinen
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:
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--subject='Re: [PATCH 1/4] bitops: Add single_bit_set()' \
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).