Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1266250 > unrolled thread

[PATCH] of: Print rather than WARN'ing when overlap check fails

Started byMichael Ellerman <mpe@ellerman.id.au>
First post2015-11-10 06:10 +0100
Last post2015-11-10 22:50 +0100
Articles 4 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] of: Print rather than WARN'ing when overlap check fails Michael Ellerman <mpe@ellerman.id.au> - 2015-11-10 06:10 +0100
    Re: [PATCH] of: Print rather than WARN'ing when overlap check fails Michael Ellerman <mpe@ellerman.id.au> - 2015-11-10 10:30 +0100
    RE: [PATCH] of: Print rather than WARN'ing when overlap check fails David Laight <David.Laight@ACULAB.COM> - 2015-11-10 10:50 +0100
      Re: [PATCH] of: Print rather than WARN'ing when overlap check fails Michael Ellerman <mpe@ellerman.id.au> - 2015-11-10 22:50 +0100

#1266250 — [PATCH] of: Print rather than WARN'ing when overlap check fails

FromMichael Ellerman <mpe@ellerman.id.au>
Date2015-11-10 06:10 +0100
Subject[PATCH] of: Print rather than WARN'ing when overlap check fails
Message-ID<qt9lT-Gw-3@gated-at.bofh.it>
__rmem_check_for_overlap() is called very early in boot, and on some
powerpc systems it's not safe to call WARN that early in boot.

If the overlap check fails the system will oops instead of printing a
warning. Furthermore because it's so early in boot the console is not up
and the user doesn't see the oops, they just get a dead system.

Fix it by printing an error instead of calling WARN.

Fixes: ae1add247bf8 ("of: Check for overlap in reserved memory regions")
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
---
 drivers/of/of_reserved_mem.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c
index 62f467b8ccae..49703916a30e 100644
--- a/drivers/of/of_reserved_mem.c
+++ b/drivers/of/of_reserved_mem.c
@@ -226,10 +226,9 @@ static void __init __rmem_check_for_overlap(void)
 
 			this_end = this->base + this->size;
 			next_end = next->base + next->size;
-			WARN(1,
-			     "Reserved memory: OVERLAP DETECTED!\n%s (%pa--%pa) overlaps with %s (%pa--%pa)\n",
-			     this->name, &this->base, &this_end,
-			     next->name, &next->base, &next_end);
+			pr_err("Reserved memory: OVERLAP DETECTED!\n%s (%pa--%pa) overlaps with %s (%pa--%pa)\n",
+			       this->name, &this->base, &this_end,
+			       next->name, &next->base, &next_end);
 		}
 	}
 }
-- 
2.5.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1266351

FromMichael Ellerman <mpe@ellerman.id.au>
Date2015-11-10 10:30 +0100
Message-ID<qtdpv-3cC-11@gated-at.bofh.it>
In reply to#1266250
On Tue, 2015-11-10 at 16:08 +1100, Michael Ellerman wrote:

> __rmem_check_for_overlap() is called very early in boot, and on some
> powerpc systems it's not safe to call WARN that early in boot.
> 
> If the overlap check fails the system will oops instead of printing a
> warning. Furthermore because it's so early in boot the console is not up
> and the user doesn't see the oops, they just get a dead system.
> 
> Fix it by printing an error instead of calling WARN.
> 
> Fixes: ae1add247bf8 ("of: Check for overlap in reserved memory regions")
> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
> ---
>  drivers/of/of_reserved_mem.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)

I forgot to say, I assume you're OK to merge this and get it to Linus soonish?
Otherwise I can stuff it in a fix branch and ask Linus to pull that. Let me
know which you'd prefer.

cheers

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1266359

FromDavid Laight <David.Laight@ACULAB.COM>
Date2015-11-10 10:50 +0100
Message-ID<qtdIR-3jG-3@gated-at.bofh.it>
In reply to#1266250
RnJvbTogTWljaGFlbCBFbGxlcm1hbg0KPiBTZW50OiAxMCBOb3ZlbWJlciAyMDE1IDA1OjA5DQo+
IF9fcm1lbV9jaGVja19mb3Jfb3ZlcmxhcCgpIGlzIGNhbGxlZCB2ZXJ5IGVhcmx5IGluIGJvb3Qs
IGFuZCBvbiBzb21lDQo+IHBvd2VycGMgc3lzdGVtcyBpdCdzIG5vdCBzYWZlIHRvIGNhbGwgV0FS
TiB0aGF0IGVhcmx5IGluIGJvb3QuDQo+IA0KPiBJZiB0aGUgb3ZlcmxhcCBjaGVjayBmYWlscyB0
aGUgc3lzdGVtIHdpbGwgb29wcyBpbnN0ZWFkIG9mIHByaW50aW5nIGENCj4gd2FybmluZy4gRnVy
dGhlcm1vcmUgYmVjYXVzZSBpdCdzIHNvIGVhcmx5IGluIGJvb3QgdGhlIGNvbnNvbGUgaXMgbm90
IHVwDQo+IGFuZCB0aGUgdXNlciBkb2Vzbid0IHNlZSB0aGUgb29wcywgdGhleSBqdXN0IGdldCBh
IGRlYWQgc3lzdGVtLg0KDQpXb3VsZG4ndCBpdCBiZSBiZXR0ZXIgdG8gYWRkIHRoZSByZXF1aXJl
ZCBjaGVja3MgdG8gV0FSTigpPw0KVGhhdCB3b3VsZCBzdG9wIHRoZSBzYW1lIHByb2JsZW0gaGFw
cGVuaW5nIGVsc2V3aGVyZS4NCg0KCURhdmlkDQoNCg==
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1266801

FromMichael Ellerman <mpe@ellerman.id.au>
Date2015-11-10 22:50 +0100
Message-ID<qtoXE-27r-7@gated-at.bofh.it>
In reply to#1266359
On Tue, 2015-11-10 at 09:41 +0000, David Laight wrote:

> From: Michael Ellerman

> > Sent: 10 November 2015 05:09
> > __rmem_check_for_overlap() is called very early in boot, and on some
> > powerpc systems it's not safe to call WARN that early in boot.
> > 
> > If the overlap check fails the system will oops instead of printing a
> > warning. Furthermore because it's so early in boot the console is not up
> > and the user doesn't see the oops, they just get a dead system.
> 
> Wouldn't it be better to add the required checks to WARN()?

Yes obviously it would. But that's less simple than it sounds. I'm working on
it.

cheers

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web