From: Yury Norov <yury.norov@gmail.com>
To: Linus Torvalds <torvalds@linux-foundation.org>,
Linus Walleij <linus.walleij@linaro.org>,
Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 00/21] lib: add alternatives for GENMASK()
Date: Sat, 25 Oct 2025 12:37:00 -0400 [thread overview]
Message-ID: <aPz8rC-F_xYrf03N@yury> (raw)
In-Reply-To: <20251025162858.305236-1-yury.norov@gmail.com>
Please disregard it. The patches 8-21 have the TO list corrupted. I'll
resend shortly.
On Sat, Oct 25, 2025 at 12:28:36PM -0400, Yury Norov (NVIDIA) wrote:
> GENMASK(high, low) notation reflects a common pattern to describe
> hardware registers. However, out of drivers context it's confusing and
> error-prone.
>
> This series introduces alternatives for GENMASK():
>
> - BITS(low, high);
> - FIRST_BITS(nbits);
> - LAST_BITS(start);
>
> Patches 1-6 and 8 rename existing local BITS(). Patches 7 and 9 introduce
> new generic macros. Patches 10-18 switch GENMASK() usage in core files to
> better alternatives. Patch 19 adds Documentation section describing
> preferred parameters ordering.
>
> The series is inspired by:
>
> https://lore.kernel.org/all/CAHk-=whoOUsqPKb7OQwhQf9H_3=5sXGPJrDbfQfwLB3Bi13tcQ@mail.gmail.com/
>
> Yury Norov (NVIDIA) (21):
> arc: disasm: rename BITS() for FIELD()
> iwlwifi: drop unused BITS()
> select: rename BITS() to FDS_BITS()
> ALSA: rename BITS to R_BITS
> zlib: BITS() to LOWBITS()
> mfd: prepare to generalize BITS() macro
> bits: Add BITS() macro
> mfd: drop local BITS() macro
> bits: generalize BITMAP_{FIRST,LAST}_WORD_MASK
> i2c: nomadik: don't use GENMASK()
> drivers: don't use GENMASK() in FIELD_PREP_WM16()
> bitmap: don't use GENMASK()
> trace: don't use GENMASK()
> lib: 842: don't use GENMASK_ULL()
> bpf: don't use GENMASK()
> kcsan: don't use GENMASK()
> mm: don't use GENMASK()
> fprobe: don't use GENMASK()
> fs: don't use GENMASK()
> fortify-string: don't use GENMASK()
> Docs: add Functions parameters order section
>
> Documentation/process/coding-style.rst | 48 ++++++++++++++
> arch/arc/include/asm/disasm.h | 62 +++++++++----------
> arch/arc/kernel/disasm.c | 46 +++++++-------
> drivers/gpu/drm/rockchip/rockchip_lvds.h | 2 +-
> drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 4 +-
> drivers/i2c/busses/i2c-nomadik.c | 44 ++++++-------
> .../platform/synopsys/hdmirx/snps_hdmirx.h | 4 +-
> drivers/mfd/db8500-prcmu-regs.h | 2 -
> drivers/mmc/host/dw_mmc-rockchip.c | 4 +-
> .../net/wireless/intel/iwlwifi/fw/api/coex.h | 2 -
> drivers/soc/rockchip/grf.c | 4 +-
> fs/erofs/internal.h | 2 +-
> fs/f2fs/data.c | 2 +-
> fs/f2fs/inode.c | 2 +-
> fs/f2fs/segment.c | 2 +-
> fs/f2fs/super.c | 2 +-
> fs/proc/task_mmu.c | 2 +-
> fs/resctrl/pseudo_lock.c | 2 +-
> fs/select.c | 6 +-
> include/asm-generic/fprobe.h | 7 +--
> include/linux/bitmap.h | 11 ++--
> include/linux/bits.h | 11 ++++
> include/linux/f2fs_fs.h | 2 +-
> include/linux/find.h | 34 +++++-----
> include/linux/fortify-string.h | 4 +-
> kernel/bpf/verifier.c | 4 +-
> kernel/kcsan/encoding.h | 4 +-
> kernel/trace/fgraph.c | 10 +--
> kernel/trace/trace_probe.h | 2 +-
> lib/842/842_compress.c | 2 +-
> lib/842/842_decompress.c | 2 +-
> lib/bitmap.c | 2 +-
> lib/test_bitmap.c | 14 ++---
> lib/zlib_inflate/inflate.c | 48 +++++++-------
> mm/debug_vm_pgtable.c | 2 +-
> sound/core/oss/rate.c | 12 ++--
> sound/soc/rockchip/rockchip_i2s_tdm.h | 2 +-
> 37 files changed, 235 insertions(+), 180 deletions(-)
>
> --
> 2.43.0
next prev parent reply other threads:[~2025-10-25 16:37 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-25 16:28 [PATCH 00/21] lib: add alternatives for GENMASK() Yury Norov (NVIDIA)
2025-10-25 16:28 ` [PATCH 01/21] arc: disasm: rename BITS() for FIELD() Yury Norov (NVIDIA)
2025-10-25 16:28 ` Yury Norov (NVIDIA)
2025-10-25 16:28 ` [PATCH 02/21] iwlwifi: drop unused BITS() Yury Norov (NVIDIA)
2025-10-25 16:28 ` [PATCH 03/21] select: rename BITS() to FDS_BITS() Yury Norov (NVIDIA)
2025-10-25 16:28 ` [PATCH 04/21] ALSA: rename BITS to R_BITS Yury Norov (NVIDIA)
2025-10-27 9:09 ` Takashi Iwai
2025-10-25 16:28 ` [PATCH 05/21] zlib: rename BITS() to LOWBITS() Yury Norov (NVIDIA)
2025-10-25 16:28 ` [PATCH 06/21] mfd: prepare to generalize BITS() macro Yury Norov (NVIDIA)
2025-11-06 16:48 ` Lee Jones
2025-10-25 16:28 ` [PATCH 07/21] bits: Add " Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 08/21] mfd: drop local " Yury Norov (NVIDIA)
2025-10-27 22:21 ` Linus Walleij
2025-10-25 16:32 ` [PATCH 09/21] bits: generalize BITMAP_{FIRST,LAST}_WORD_MASK Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 10/21] i2c: nomadik: don't use GENMASK() Yury Norov (NVIDIA)
2025-10-27 22:22 ` Linus Walleij
2025-10-25 16:32 ` [PATCH 11/21] drivers: don't use GENMASK() in FIELD_PREP_WM16() Yury Norov (NVIDIA)
2025-10-25 16:32 ` Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 12/21] bitmap: don't use GENMASK() Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 13/21] trace: " Yury Norov (NVIDIA)
2025-10-25 19:29 ` Steven Rostedt
2025-10-25 19:36 ` Steven Rostedt
2025-10-25 16:32 ` [PATCH 14/21] lib: 842: don't use GENMASK_ULL() Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 15/21] bpf: don't use GENMASK() Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 16/21] kcsan: " Yury Norov (NVIDIA)
2025-10-25 16:32 ` [PATCH 17/21] mm: " Yury Norov (NVIDIA)
2025-10-25 16:33 ` [PATCH 18/21] fprobe: " Yury Norov (NVIDIA)
2025-10-25 16:33 ` [PATCH 19/21] fs: " Yury Norov (NVIDIA)
2025-10-25 16:33 ` [f2fs-dev] " Yury Norov (NVIDIA)
2025-10-25 16:33 ` [PATCH 20/21] fortify-string: " Yury Norov (NVIDIA)
2025-10-25 16:33 ` [PATCH 21/21] Docs: add Functions parameters order section Yury Norov (NVIDIA)
2025-10-27 9:02 ` Jani Nikula
2025-10-27 16:08 ` Jeff Johnson
2025-10-27 18:22 ` Andi Shyti
2025-10-27 18:43 ` Randy Dunlap
2025-10-25 16:37 ` Yury Norov [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-10-25 16:39 [PATCH 00/21] lib: add alternatives for GENMASK() Yury Norov (NVIDIA)
2025-10-25 17:56 ` Linus Torvalds
2025-11-26 9:07 ` Rasmus Villemoes
2025-11-26 10:38 ` david laight
2025-11-26 19:44 ` Linus Torvalds
2025-11-26 22:17 ` david laight
2025-11-26 23:47 ` Linus Torvalds
2025-11-27 9:37 ` david laight
2025-11-27 14:11 ` Nicolas Frattaroli
2025-11-27 17:29 ` Linus Torvalds
2025-11-27 18:51 ` david laight
2025-11-29 11:46 ` david laight
2025-10-25 18:01 Alexey Dobriyan
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=aPz8rC-F_xYrf03N@yury \
--to=yury.norov@gmail.com \
--cc=linus.walleij@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@rasmusvillemoes.dk \
--cc=nicolas.frattaroli@collabora.com \
--cc=torvalds@linux-foundation.org \
/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.