RFC Helper to isolate least-significant bit
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest2 patches 31 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | bits: introduce ffs_val()MAINTAINERS include/ include/ | +23 | 13 replies | |
| 2/2 | treewide, bits: use ffs_val() where it is open-codedarch/ arch/ arch/ +25 more | +48 | 15 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [RFC PATCH 0/2] Helper to isolate least-significant bit
Isolation of the least significant bit can be achieved with 3 basic ALU operations which are already open-coded in various places in the kernel.
However, since other places less efficient constructs, for example 1UL << ffs(x), I assume the trick is known only to some authors, and it's worth adding a helper to promote its use.
Petr Tesarik (2):
bits: introduce ffs_val()
treewide, bits: use ffs_val() where it is open-coded
arch/alpha/include/asm/bitops.h | 2 +- arch/alpha/kernel/core_cia.c | 2 +- arch/alpha/kernel/smp.c | 2 +- arch/arc/include/asm/bitops.h | 2 +- arch/m68k/include/asm/bitops.h | 12 +++++------ arch/mips/dec/ecc-berr.c | 2 +- arch/mips/include/asm/bitops.h | 4 ++-- arch/mips/pci/pci-malta.c | 4 ++-- arch/powerpc/include/asm/bitops.h | 4 ++-- arch/powerpc/kvm/e500_mmu_host.c | 2 +- arch/powerpc/lib/sstep.c | 2 +- arch/powerpc/xmon/ppc-dis.c | 3 ++- arch/powerpc/xmon/ppc-opc.c | 6 +++--- arch/s390/include/asm/bitops.h | 2 +- arch/xtensa/include/asm/bitops.h | 6 +++--- arch/xtensa/kernel/traps.c | 2 +- drivers/gpu/drm/gma500/psb_intel_sdvo.c | 2 +- drivers/iommu/dma-iommu.c | 2 +- drivers/net/ethernet/netronome/nfp/bpf/jit.c | 2 +- drivers/net/usb/cdc_ncm.c | 4 ++-- include/asm-generic/div64.h | 4 ++-- include/linux/bitfield.h | 3 ++- include/linux/bitops.h | 1 + include/linux/ffs_val.h | 21 ++++++++++++++++++++ include/linux/log2.h | 2 +- include/linux/min_heap.h | 5 +++-- lib/math/gcd.c | 4 ++-- lib/sort.c | 3 ++- net/bluetooth/mgmt.c | 2 +- net/netfilter/nft_set_pipapo.c | 2 +- 30 files changed, 70 insertions(+), 44 deletions(-) create mode 100644 include/linux/ffs_val.h
Signature · 1 line
2.52.0