From: Sascha Hauer <s.hauer@pengutronix.de>
To: Ahmad Fatoum <a.fatoum@pengutronix.de>
Cc: barebox@lists.infradead.org
Subject: Re: [PATCH] driver: have dev_platform_ioremap_resource return error pointer
Date: Mon, 14 Apr 2025 12:40:12 +0200 [thread overview]
Message-ID: <Z_zmDIRhJoafG3zB@pengutronix.de> (raw)
In-Reply-To: <45c42b7a-6b52-4862-a204-595092b39f50@pengutronix.de>
On Mon, Apr 14, 2025 at 12:10:54PM +0200, Ahmad Fatoum wrote:
> Hello Sascha,
>
> On 4/14/25 11:07, Sascha Hauer wrote:
> > On Mon, Apr 14, 2025 at 08:23:03AM +0200, Ahmad Fatoum wrote:
> >> From: Ahmad Fatoum <a.fatoum@barebox.org>
> >>
> >> devm_request_mem_region doesn't return NULL on error on Linux and thus
> >> it should neither in barebox. Fix this.
> >>
> >> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
> >> ---
> >> drivers/base/driver.c | 2 ++
> >> include/linux/device.h | 2 +-
> >> 2 files changed, 3 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/base/driver.c b/drivers/base/driver.c
> >> index edba037fa2dd..4e361a96c9ee 100644
> >> --- a/drivers/base/driver.c
> >> +++ b/drivers/base/driver.c
> >> @@ -587,6 +587,8 @@ void __iomem *dev_request_mem_region(struct device *dev, int num)
> >> struct resource *res;
> >>
> >> res = dev_request_mem_resource(dev, num);
> >> + if (!IS_ERR(res) && WARN_ON(IS_ERR_VALUE(res->start)))
> >> + return IOMEM_ERR_PTR(res->start);
> >
> > Which code can set res->start to an error value?
>
> It can end up being an error value, because there is actual a MMIO
> region at a high address. In that case, I'd rather we return an
> error, so dev_request_mem_resource would need to be used instead.
Ok, so you don't expect code to intentionally set the resource start to
an error value, but instead the resource start actually is in a range
that is interpreted as an error value (i.e. >= 0x100000000 - MAX_ERRNO
aka the last page in the 32bit address space).
Can we add a comment here to clarify this?
Sascha
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
prev parent reply other threads:[~2025-04-14 11:01 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-14 6:23 Ahmad Fatoum
2025-04-14 9:07 ` Sascha Hauer
2025-04-14 10:10 ` Ahmad Fatoum
2025-04-14 10:40 ` Sascha Hauer [this message]
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=Z_zmDIRhJoafG3zB@pengutronix.de \
--to=s.hauer@pengutronix.de \
--cc=a.fatoum@pengutronix.de \
--cc=barebox@lists.infradead.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