mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] ramoops: update parameters only after successful init
@ 2011-10-18 18:01 Kees Cook
  2011-10-18 21:45 ` Andrew Morton
  0 siblings, 1 reply; 2+ messages in thread
From: Kees Cook @ 2011-10-18 18:01 UTC (permalink / raw)
  To: linux-kernel
  Cc: Andrew Morton, Marco Stornelli, Sergiu Iordache, Seiji Aguchi,
	James Bottomley

If a platform device exists on the system, but ramoops fails to attach to
it, the module parameters are overridden before ramoops can fall back and
try to use passed module parameters. Move update to end of init routine.

Signed-off-by: Kees Cook <keescook@chromium.org>
---
 drivers/char/ramoops.c |   17 +++++++++--------
 1 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/drivers/char/ramoops.c b/drivers/char/ramoops.c
index 810aff9..0ec4bb3 100644
--- a/drivers/char/ramoops.c
+++ b/drivers/char/ramoops.c
@@ -147,14 +147,6 @@ static int __init ramoops_probe(struct platform_device *pdev)
 	cxt->phys_addr = pdata->mem_address;
 	cxt->record_size = pdata->record_size;
 	cxt->dump_oops = pdata->dump_oops;
-	/*
-	 * Update the module parameter variables as well so they are visible
-	 * through /sys/module/ramoops/parameters/
-	 */
-	mem_size = pdata->mem_size;
-	mem_address = pdata->mem_address;
-	record_size = pdata->record_size;
-	dump_oops = pdata->dump_oops;
 
 	if (!request_mem_region(cxt->phys_addr, cxt->size, "ramoops")) {
 		pr_err("request mem region failed\n");
@@ -175,6 +167,15 @@ static int __init ramoops_probe(struct platform_device *pdev)
 		goto fail1;
 	}
 
+	/*
+	 * Update the module parameter variables as well so they are visible
+	 * through /sys/module/ramoops/parameters/
+	 */
+	mem_size = pdata->mem_size;
+	mem_address = pdata->mem_address;
+	record_size = pdata->record_size;
+	dump_oops = pdata->dump_oops;
+
 	return 0;
 
 fail1:
-- 
1.7.5.4


-- 
Kees Cook                                            @outflux.net

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] ramoops: update parameters only after successful init
  2011-10-18 18:01 [PATCH] ramoops: update parameters only after successful init Kees Cook
@ 2011-10-18 21:45 ` Andrew Morton
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Morton @ 2011-10-18 21:45 UTC (permalink / raw)
  To: Kees Cook
  Cc: linux-kernel, Marco Stornelli, Sergiu Iordache, Seiji Aguchi,
	James Bottomley

On Tue, 18 Oct 2011 11:01:27 -0700
Kees Cook <kees@outflux.net> wrote:

> If a platform device exists on the system, but ramoops fails to attach to
> it, the module parameters are overridden before ramoops can fall back and
> try to use passed module parameters. Move update to end of init routine.

Modifying the module paremeters in this way seems like a Wrong Thing To
Do and a rather nasty hack.

I'd have thought that /sys/module/ramoops/parameters should reflect the
options which were provided to the module and should not be modified by
the kernel behind everyone's back.

If we wish to display the configuration which the driver acquired from
the platform data then sure, add an interface to do that.  But it's
wrong to go and pretend that this is what the user provided to
modprobe!


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-10-18 21:45 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-18 18:01 [PATCH] ramoops: update parameters only after successful init Kees Cook
2011-10-18 21:45 ` Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®