[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YQFxJnB+cH4SU9I3@yury-ThinkPad>
Date: Wed, 28 Jul 2021 08:00:54 -0700
From: Yury Norov <yury.norov@...il.com>
To: linux-kernel@...r.kernel.org, linux-arch@...r.kernel.org,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Yoshinori Sato <ysato@...rs.sourceforge.jp>,
Brian Cain <bcain@...eaurora.org>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Jonas Bonn <jonas@...thpole.se>,
Stefan Kristiansson <stefan.kristiansson@...nalahti.fi>,
"James E.J. Bottomley" <James.Bottomley@...senpartnership.com>,
Palmer Dabbelt <palmer@...belt.com>,
Heiko Carstens <hca@...ux.ibm.com>,
Rich Felker <dalias@...c.org>,
David Hildenbrand <david@...hat.com>,
Jaegeuk Kim <jaegeuk@...nel.org>,
Arnd Bergmann <arnd@...db.de>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
Andrew Morton <akpm@...ux-foundation.org>,
Alexander Lobakin <alobakin@...me>,
Samuel Mendoza-Jonas <sam@...dozajonas.com>,
Jakub Kicinski <kuba@...nel.org>,
Daniel Bristot de Oliveira <bristot@...hat.com>,
Alexey Klimov <aklimov@...hat.com>,
Ingo Molnar <mingo@...hat.com>
Subject: Re: [PATCH 0/8] all: use find_next_*_bit() instead of
find_first_*_bit() where possible
Ping again.
The rebased series together with other bitmap patches can be found
here:
https://github.com/norov/linux/tree/bitmap-20210716
On Sat, Jun 12, 2021 at 05:36:31AM -0700, Yury Norov wrote:
> find_first_*_bit() is simpler and faster than 'next' version [1], and they
> work identically if start == 0. But in many cases kernel code uses the
> 'next' version where 'first' can be used. This series addresses this issue.
>
> Patches 1-3 move find.h under include/linux as it simplifies development.
> Patches 4-8 switch the kernel and tools to find_first_*_bit() implementation
> where appropriate.
>
> Yury Norov (8):
> bitops: protect find_first_{,zero}_bit properly
> bitops: move find_bit_*_le functions from le.h to find.h
> include: move find.h from asm_generic to linux
> arch: remove GENERIC_FIND_FIRST_BIT entirely
> lib: add find_first_and_bit()
> cpumask: use find_first_and_bit()
> all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where
> appropriate
> tools: sync tools/bitmap with mother linux
>
> MAINTAINERS | 4 +-
> arch/alpha/include/asm/bitops.h | 2 -
> arch/arc/Kconfig | 1 -
> arch/arc/include/asm/bitops.h | 1 -
> arch/arm/include/asm/bitops.h | 1 -
> arch/arm64/Kconfig | 1 -
> arch/arm64/include/asm/bitops.h | 1 -
> arch/csky/include/asm/bitops.h | 1 -
> arch/h8300/include/asm/bitops.h | 1 -
> arch/hexagon/include/asm/bitops.h | 1 -
> arch/ia64/include/asm/bitops.h | 2 -
> arch/m68k/include/asm/bitops.h | 2 -
> arch/mips/Kconfig | 1 -
> arch/mips/include/asm/bitops.h | 1 -
> arch/openrisc/include/asm/bitops.h | 1 -
> arch/parisc/include/asm/bitops.h | 2 -
> arch/powerpc/include/asm/bitops.h | 2 -
> arch/powerpc/platforms/pasemi/dma_lib.c | 4 +-
> arch/riscv/include/asm/bitops.h | 1 -
> arch/s390/Kconfig | 1 -
> arch/s390/include/asm/bitops.h | 1 -
> arch/s390/kvm/kvm-s390.c | 2 +-
> arch/sh/include/asm/bitops.h | 1 -
> arch/sparc/include/asm/bitops_32.h | 1 -
> arch/sparc/include/asm/bitops_64.h | 2 -
> arch/x86/Kconfig | 1 -
> arch/x86/include/asm/bitops.h | 2 -
> arch/x86/um/Kconfig | 1 -
> arch/xtensa/include/asm/bitops.h | 1 -
> drivers/block/rnbd/rnbd-clt.c | 2 +-
> drivers/dma/ti/edma.c | 2 +-
> drivers/iio/adc/ad7124.c | 2 +-
> drivers/infiniband/hw/irdma/hw.c | 16 +-
> drivers/media/cec/core/cec-core.c | 2 +-
> drivers/media/mc/mc-devnode.c | 2 +-
> drivers/pci/controller/dwc/pci-dra7xx.c | 2 +-
> drivers/scsi/lpfc/lpfc_sli.c | 10 +-
> drivers/soc/ti/k3-ringacc.c | 4 +-
> drivers/tty/n_tty.c | 2 +-
> drivers/virt/acrn/ioreq.c | 3 +-
> fs/f2fs/segment.c | 8 +-
> fs/ocfs2/cluster/heartbeat.c | 2 +-
> fs/ocfs2/dlm/dlmdomain.c | 4 +-
> fs/ocfs2/dlm/dlmmaster.c | 18 +--
> fs/ocfs2/dlm/dlmrecovery.c | 2 +-
> fs/ocfs2/dlm/dlmthread.c | 2 +-
> include/asm-generic/bitops.h | 1 -
> include/asm-generic/bitops/le.h | 64 --------
> include/linux/bitmap.h | 1 +
> include/linux/cpumask.h | 30 ++--
> .../bitops => include/linux}/find.h | 149 +++++++++++++++++-
> lib/Kconfig | 3 -
> lib/find_bit.c | 21 +++
> lib/find_bit_benchmark.c | 21 +++
> lib/genalloc.c | 2 +-
> net/ncsi/ncsi-manage.c | 4 +-
> tools/include/asm-generic/bitops.h | 1 -
> tools/include/linux/bitmap.h | 7 +-
> .../bitops => tools/include/linux}/find.h | 54 +++++--
> tools/lib/find_bit.c | 20 +++
> 60 files changed, 319 insertions(+), 185 deletions(-)
> rename {tools/include/asm-generic/bitops => include/linux}/find.h (50%)
> rename {include/asm-generic/bitops => tools/include/linux}/find.h (83%)
>
> --
> 2.30.2
Powered by blists - more mailing lists