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-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 20 May 2010 20:28:54 -0500
From:	Jason Wessel <jason.wessel@...driver.com>
To:	Dmitry Torokhov <dmitry.torokhov@...il.com>
CC:	Stephen Rothwell <sfr@...b.auug.org.au>,
	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: linux-next: build failure after merge of the kgdb tree

On 05/20/2010 08:23 PM, Dmitry Torokhov wrote:
> On Fri, May 21, 2010 at 11:09:38AM +1000, Stephen Rothwell wrote:
>> Hi Jason,
>>
>> On Thu, 20 May 2010 19:49:51 -0500 Jason Wessel <jason.wessel@...driver.com> wrote:
>>> Before brute force toggling it, it seems we should check the value and
>>> restore it after the execution of handle_sysrq().
>> Indeed, at the time I couldn't find an easy way to do that.
>>
>>> I'll have to look and see if there is an access function for this.
>> Great, thanks.
> 
> I would not mind re-exporting sysrq_on() again.
> 

We could but I don't know that you need to.

Would you be willing to sign off on a change like the one below
Dmitry?  If so then I'll push it into kgdb-next.

It is as simple as making the return from sysrq_toggle_support a bit
more meaningful.

Thanks,
Jason.


--- a/drivers/char/sysrq.c
+++ b/drivers/char/sysrq.c
@@ -717,7 +717,7 @@ int sysrq_toggle_support(int enable_mask
 			sysrq_unregister_handler();
 	}
 
-	return 0;
+	return was_enabled;
 }
 
 static int __sysrq_swap_key_ops(int key, struct sysrq_key_op *insert_op_p,
--- a/kernel/debug/kdb/kdb_main.c
+++ b/kernel/debug/kdb/kdb_main.c
@@ -1926,17 +1926,19 @@ static int kdb_rm(int argc, const char *
  */
 static int kdb_sr(int argc, const char **argv)
 {
+	int toggle_save;
+
 	if (argc != 1)
 		return KDB_ARGCOUNT;
-	if (!__sysrq_enabled) {
-		kdb_printf("Auto activating sysrq\n");
-		__sysrq_enabled = 1;
-	}
+
+	toggle_save = sysrq_toggle_support(1);
 
 	kdb_trap_printk++;
 	handle_sysrq(*argv[1], NULL);
 	kdb_trap_printk--;
 
+	sysrq_toggle_support(toggle_save);
+
 	return 0;
 }
 #endif	/* CONFIG_MAGIC_SYSRQ */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ