From: Robin Murphy <robin.murphy@arm.com>
To: Philipp Hahn <phahn-oss@avm.de>,
amd-gfx@lists.freedesktop.org, apparmor@lists.ubuntu.com,
bpf@vger.kernel.org, ceph-devel@vger.kernel.org, cocci@inria.fr,
dm-devel@lists.linux.dev, dri-devel@lists.freedesktop.org,
gfs2@lists.linux.dev, intel-gfx@lists.freedesktop.org,
intel-wired-lan@lists.osuosl.org, iommu@lists.linux.dev,
kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-block@vger.kernel.org, linux-bluetooth@vger.kernel.org,
linux-btrfs@vger.kernel.org, linux-cifs@vger.kernel.org,
linux-clk@vger.kernel.org, linux-erofs@lists.ozlabs.org,
linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org,
linux-gpio@vger.kernel.org, linux-hyperv@vger.kernel.org,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-leds@vger.kernel.org, linux-media@vger.kernel.org,
linux-mips@vger.kernel.org, linux-mm@kvack.org,
linux-modules@vger.kernel.org, linux-mtd@lists.infradead.org,
linux-nfs@vger.kernel.org, linux-omap@vger.kernel.org,
linux-phy@lists.infradead.org, linux-pm@vger.kernel.org,
linux-rockchip@lists.infradead.org, linux-s390@vger.kernel.org,
linux-scsi@vger.kernel.org, linux-sctp@vger.kernel.org,
linux-security-module@vger.kernel.org, linux-sh@vger.kernel.org,
linux-sound@vger.kernel.org,
linux-stm32@st-md-mailman.stormreply.com,
linux-trace-kernel@vger.kernel.org, linux-usb@vger.kernel.org,
linux-wireless@vger.kernel.org, netdev@vger.kernel.org,
ntfs3@lists.linux.dev, samba-technical@lists.samba.org,
sched-ext@lists.linux.dev, target-devel@vger.kernel.org,
tipc-discussion@lists.sourceforge.net, v9fs@lists.linux.dev
Cc: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>
Subject: Re: [PATCH 50/61] iommu: Prefer IS_ERR_OR_NULL over manual NULL check
Date: Mon, 16 Mar 2026 13:30:19 +0000 [thread overview]
Message-ID: <2c7466f5-d952-4356-9b55-9d2ebb3471f2@arm.com> (raw)
In-Reply-To: <20260310-b4-is_err_or_null-v1-50-bd63b656022d@avm.de>
On 2026-03-10 11:49 am, Philipp Hahn wrote:
> Prefer using IS_ERR_OR_NULL() over using IS_ERR() and a manual NULL
> check.
AFAICS it doesn't look possible for the argument to be anything other
than valid at both callsites, so *both* conditions here seem in fact to
be entirely redundant.
> Change generated with coccinelle.
Please use coccinelle responsibly. Mechanical changes are great for
scripted API updates, but for cleanup, whilst it's ideal for *finding*
areas of code that are worth looking at, the code then wants actually
looking at, in its whole context, because meaningful cleanup often goes
deeper than trivial replacement.
In particular, anywhere IS_ERR_OR_NULL() is genuinely relevant is
usually a sign of bad interface design, so if you're looking at this
then you really should be looking first and foremost to remove any
checks that are already unnecessary, and for the remainder, to see if
the thing being checked can be improved to not mix the two different
styles. That would be constructive and (usually) welcome cleanup. Simply
churning a bunch of code with this ugly macro that's arguably less
readable than what it replaces, not so much.
Thanks,
Robin.
> To: Joerg Roedel <joro@8bytes.org>
> To: Will Deacon <will@kernel.org>
> To: Robin Murphy <robin.murphy@arm.com>
> Cc: iommu@lists.linux.dev
> Cc: linux-kernel@vger.kernel.org
> Signed-off-by: Philipp Hahn <phahn-oss@avm.de>
> ---
> drivers/iommu/omap-iommu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c
> index 8231d7d6bb6a9202025643639a6b28e6faa84659..500a42b57a997696ff37c76f028a717ab71d01f9 100644
> --- a/drivers/iommu/omap-iommu.c
> +++ b/drivers/iommu/omap-iommu.c
> @@ -881,7 +881,7 @@ static int omap_iommu_attach(struct omap_iommu *obj, u32 *iopgd)
> **/
> static void omap_iommu_detach(struct omap_iommu *obj)
> {
> - if (!obj || IS_ERR(obj))
> + if (IS_ERR_OR_NULL(obj))
> return;
>
> spin_lock(&obj->iommu_lock);
>
next prev parent reply other threads:[~2026-03-16 13:30 UTC|newest]
Thread overview: 120+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-10 11:48 [PATCH 00/61] treewide: Use IS_ERR_OR_NULL over manual NULL check - refactor Philipp Hahn
2026-03-10 11:48 ` [PATCH 01/61] Coccinelle: Prefer IS_ERR_OR_NULL over manual NULL check Philipp Hahn
2026-03-10 15:41 ` Markus Elfring
2026-03-11 15:12 ` Markus Elfring
2026-03-10 11:48 ` [PATCH 02/61] btrfs: " Philipp Hahn
2026-03-13 19:22 ` David Sterba
2026-03-10 11:48 ` [PATCH 03/61] ceph: " Philipp Hahn
2026-03-10 18:13 ` Viacheslav Dubeyko
2026-03-11 8:16 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 04/61] ext4: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 05/61] smb: Prefer IS_ERR_OR_NULL over manual NULl check Philipp Hahn
2026-03-10 11:48 ` [PATCH 06/61] 9p: Prefer IS_ERR_OR_NULL over manual NULL check Philipp Hahn
2026-03-10 13:45 ` Christian Schoenebeck
2026-03-11 8:17 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 07/61] erofs: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 08/61] fuse: " Philipp Hahn
2026-03-11 8:18 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 09/61] ntfs3: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 10/61] gfs2: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 11/61] pstore: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 12/61] quota: " Philipp Hahn
2026-03-11 8:19 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-19 14:13 ` Jan Kara
2026-03-10 11:48 ` [PATCH 13/61] squashfs: " Philipp Hahn
2026-03-11 8:19 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 14/61] seq_file: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 15/61] trace: " Philipp Hahn
2026-03-10 14:07 ` Steven Rostedt
2026-03-11 5:13 ` Masami Hiramatsu
2026-03-11 14:03 ` Steven Rostedt
2026-03-11 14:06 ` Geert Uytterhoeven
2026-03-10 11:48 ` [PATCH 16/61] sched: " Philipp Hahn
2026-03-11 9:16 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 17/61] module: " Philipp Hahn
2026-03-10 14:45 ` Aaron Tomlin
2026-03-11 9:18 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 18/61] sound: " Philipp Hahn
2026-03-10 12:28 ` Mark Brown
2026-03-10 11:48 ` [PATCH 19/61] kvm: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 20/61] apparmor: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 21/61] lib/test: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 22/61] md: " Philipp Hahn
2026-03-11 9:19 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 23/61] net/ipv6: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 24/61] net/9p: " Philipp Hahn
2026-03-10 13:47 ` Christian Schoenebeck
2026-03-11 9:19 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 25/61] net/bluetooth: " Philipp Hahn
2026-03-10 13:55 ` Bastien Nocera
2026-03-11 9:21 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 26/61] net/core: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 27/61] net/netlink: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 28/61] net/sched: " Philipp Hahn
2026-03-11 9:22 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 29/61] net/sctp: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 30/61] net/sunrpc: " Philipp Hahn
2026-03-10 12:23 ` Jeff Layton
2026-03-10 13:23 ` Chuck Lever
2026-03-11 9:22 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:48 ` [PATCH 31/61] net/tipc: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 32/61] net/wireless: " Philipp Hahn
2026-03-10 11:48 ` [PATCH 33/61] mm: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 34/61] arch/arm: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 35/61] arch/mips: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 36/61] arch/sh: " Philipp Hahn
2026-03-11 13:15 ` Geert Uytterhoeven
2026-03-10 11:49 ` [PATCH 37/61] drm: " Philipp Hahn
2026-03-10 12:08 ` Christian König
2026-03-10 11:49 ` [PATCH 38/61] net: " Philipp Hahn
2026-03-10 15:07 ` [EXTERNAL] " Elad Nachman
2026-03-11 0:16 ` Russell King (Oracle)
2026-03-11 9:24 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-12 16:11 ` Przemek Kitszel
2026-03-10 11:49 ` [PATCH 39/61] irqchip: " Philipp Hahn
2026-03-11 9:24 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:49 ` [PATCH 40/61] phy: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 41/61] pinctrl: " Philipp Hahn
2026-03-11 9:32 ` Linus Walleij
2026-03-10 11:49 ` [PATCH 42/61] pmdomain: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 43/61] s390: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 44/61] target: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 45/61] thermal: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 46/61] vfio: " Philipp Hahn
2026-03-10 12:53 ` Pranjal Shrivastava
2026-03-11 9:25 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-16 22:10 ` Alex Williamson
2026-03-10 11:49 ` [PATCH 47/61] nfc: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 48/61] mtd: " Philipp Hahn
2026-03-12 19:33 ` Richard Weinberger
2026-03-10 11:49 ` [PATCH 49/61] media: " Philipp Hahn
2026-03-11 9:25 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-11 23:03 ` Kieran Bingham
2026-03-10 11:49 ` [PATCH 50/61] iommu: " Philipp Hahn
2026-03-11 9:26 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-16 13:30 ` Robin Murphy [this message]
2026-03-10 11:49 ` [PATCH 51/61] leds: " Philipp Hahn
2026-03-10 13:33 ` (subset) " Lee Jones
2026-03-10 11:49 ` [PATCH 52/61] gpib: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 53/61] hyperv: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 54/61] aoe: " Philipp Hahn
2026-03-11 9:26 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-03-10 11:49 ` [PATCH 55/61] interconnect: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 56/61] clk: " Philipp Hahn
2026-03-10 13:21 ` Brian Masney
2026-03-11 2:07 ` Chen-Yu Tsai
2026-03-10 11:49 ` [PATCH 57/61] reset: " Philipp Hahn
2026-03-10 12:43 ` Philipp Zabel
2026-03-11 4:59 ` Masami Hiramatsu
2026-03-10 11:49 ` [PATCH 58/61] arch/x86: " Philipp Hahn
2026-03-10 11:49 ` [PATCH 59/61] debugobjects: Drop likely() around !IS_ERR_OR_NULL() Philipp Hahn
2026-03-10 11:49 ` [PATCH 60/61] Input alps: Drop unlikely() around IS_ERR_OR_NULL() Philipp Hahn
2026-03-10 11:49 ` [PATCH 61/61] file: " Philipp Hahn
2026-03-10 12:23 ` Jeff Layton
2026-03-10 14:14 ` [PATCH 00/61] treewide: Use IS_ERR_OR_NULL over manual NULL check - refactor Steven Rostedt
2026-03-10 14:23 ` Theodore Tso
2026-03-10 18:40 ` Kuan-Wei Chiu
2026-03-12 12:57 ` Jason Gunthorpe
2026-03-12 15:32 ` James Bottomley
2026-03-12 16:54 ` Jason Gunthorpe
2026-03-11 0:09 ` Russell King (Oracle)
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=2c7466f5-d952-4356-9b55-9d2ebb3471f2@arm.com \
--to=robin.murphy@arm.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=apparmor@lists.ubuntu.com \
--cc=bpf@vger.kernel.org \
--cc=ceph-devel@vger.kernel.org \
--cc=cocci@inria.fr \
--cc=dm-devel@lists.linux.dev \
--cc=dri-devel@lists.freedesktop.org \
--cc=gfs2@lists.linux.dev \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=kvm@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-bluetooth@vger.kernel.org \
--cc=linux-btrfs@vger.kernel.org \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-erofs@lists.ozlabs.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-modules@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-sctp@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=ntfs3@lists.linux.dev \
--cc=phahn-oss@avm.de \
--cc=samba-technical@lists.samba.org \
--cc=sched-ext@lists.linux.dev \
--cc=target-devel@vger.kernel.org \
--cc=tipc-discussion@lists.sourceforge.net \
--cc=v9fs@lists.linux.dev \
--cc=will@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox