lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu,  9 Sep 2021 11:17:55 -0500
From:   Andrew Halaney <ahalaney@...hat.com>
To:     jbaron@...mai.com
Cc:     linux-kernel@...r.kernel.org, Andrew Halaney <ahalaney@...hat.com>
Subject: [PATCH] dyndbg: make dyndbg a known cli param

Right now dyndbg shows up as an unknown parameter if used on boot:

    Unknown command line parameters: dyndbg=module params +p ; module sys +p

That's because it is unknown, it doesn't sit in the __param
section, so the processing done to warn users supplying an unknown
parameter doesn't think it is legitimate.

Install a dummy handler to register it. This was chosen instead of the
approach the (deprecated) ddebug_query param takes, which is to
have a real handler that copies the string taking up a KiB memory.

Fixes: 86d1919a4fb0 ("init: print out unknown kernel parameters")
Signed-off-by: Andrew Halaney <ahalaney@...hat.com>
---

This is the last valid param I know of that was getting flagged on boot
if used correctly. Please let me know if the alternative approach of
actually copying the string is preferred and I'll spin that up instead.

Sort of an aside, but what's the policy for removing deprecated cli
params? ddebug_query has been deprecated for a very long time now, but I
am not sure if removing params like that is considered almost as bad as
breaking userspace considering some systems might update their kernels
but not the bootloader supplying the param.

 lib/dynamic_debug.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index cb5abb42c16a..84c16309cc63 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -761,6 +761,18 @@ static __init int ddebug_setup_query(char *str)
 
 __setup("ddebug_query=", ddebug_setup_query);
 
+/*
+ * Install a noop handler to make dyndbg look like a normal kernel cli param.
+ * This avoids warnings about dyndbg being an unknown cli param when supplied
+ * by a user.
+ */
+static __init int dyndbg_setup(char *str)
+{
+	return 1;
+}
+
+__setup("dyndbg=", dyndbg_setup);
+
 /*
  * File_ops->write method for <debugfs>/dynamic_debug/control.  Gathers the
  * command text from userspace, parses and executes it.
-- 
2.31.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ