[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHp75Vfx3RADfU0cm7Y0kYfOtba4K008xZSSVbACRa3OwbAKGw@mail.gmail.com>
Date: Fri, 8 Jul 2022 11:12:36 +0200
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: Rasmus Villemoes <linux@...musvillemoes.dk>
Cc: Yury Norov <yury.norov@...il.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Alexander Lobakin <alexandr.lobakin@...el.com>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Arnd Bergmann <arnd@...db.de>, David Gow <davidgow@...gle.com>,
Eric Dumazet <edumazet@...gle.com>,
Isabella Basso <isabbasso@...eup.net>,
Kees Cook <keescook@...omium.org>,
Keith Busch <kbusch@...nel.org>,
Kumar Kartikeya Dwivedi <memxor@...il.com>,
Marco Elver <elver@...gle.com>,
Mark Rutland <mark.rutland@....com>,
Steven Rostedt <rostedt@...dmis.org>,
Toke Høiland-Jørgensen <toke@...hat.com>
Subject: Re: [PATCH 1/5] lib: add find_nth(,and,andnot)_bit()
On Fri, Jul 8, 2022 at 10:55 AM Rasmus Villemoes
<linux@...musvillemoes.dk> wrote:
> On 07/07/2022 23.03, Yury Norov wrote:
>
> >> And I don't
> >> like that the index is apparently 1-based (and that surprising API isn't
> >> spelled out anywhere).
> >
> > Yeah... My motivation to start counting from 1 is to keep consistency
> > with ffs: __ffs(word) <=> fns(word, 1).
>
> I understand that you're translating that second f in ffs (find First
> set) to a 1. But I disagree that that's necessarily a logical thing to
> do. Everybody understands that (given a C or python or... context) when
> some prose talks about "the first element in an array", it's the one at
> [0]. So I find it much more natural that the set bits in a word are
> enumerated 0, 1, ..., popcount(w)-1.
I agree that here we operate with an array of bits, which naturally
starts from bit 0.
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists