Currently help message of /proc/sysrq-trigger highlight its
upper-case characters, like below:
SysRq : HELP : loglevel(0-9) reBoot Crash terminate-all-tasks(E)
memory-full-oom-kill(F) kill-all-tasks(I) ...
this would confuse user trigger sysrq by upper-case character, which is
inconsistent with the real lower-case character registed key.
This inconsistent help message will also lead more confused when
26 upper-case letters put into use in future.
This patch fix arm etm sysrq key: "etm buffer dump(v)"
Signed-off-by: zhangwei(Jovi) <[email protected]>
Cc: Russell King <[email protected]>
---
arch/arm/kernel/etm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/kernel/etm.c b/arch/arm/kernel/etm.c
index 9b6de8c..e2dad6f 100644
--- a/arch/arm/kernel/etm.c
+++ b/arch/arm/kernel/etm.c
@@ -254,7 +254,7 @@ static void sysrq_etm_dump(int key)
static struct sysrq_key_op sysrq_etm_op = {
.handler = sysrq_etm_dump,
- .help_msg = "ETM buffer dump",
+ .help_msg = "etm buffer dump(v)",
.action_msg = "etm",
};
--
1.7.9.7
On Thu, Mar 07, 2013 at 05:00:23PM +0800, zhangwei(Jovi) wrote:
> Currently help message of /proc/sysrq-trigger highlight its
> upper-case characters, like below:
>
> SysRq : HELP : loglevel(0-9) reBoot Crash terminate-all-tasks(E)
> memory-full-oom-kill(F) kill-all-tasks(I) ...
>
> this would confuse user trigger sysrq by upper-case character, which is
> inconsistent with the real lower-case character registed key.
>
> This inconsistent help message will also lead more confused when
> 26 upper-case letters put into use in future.
>
> This patch fix arm etm sysrq key: "etm buffer dump(v)"
Umm, actually this is wrong. sysrq doesn't deal with case.
static int sysrq_key_table_key2index(int key)
{
int retval;
if ((key >= '0') && (key <= '9'))
retval = key - '0';
else if ((key >= 'a') && (key <= 'z'))
retval = key + 10 - 'a';
else
retval = -1;
return retval;
}
It actually accepts no upper case characters (because they can't be
typed on a PC keyboard with the simple code that is sysrq.) The sysrq
key combinations there are Alt+Sysrq+key.
All sysrq help messages give the key in parens with a capital letter.
However, there's one change you should make to this anyway - there
should be no spaces in the help message - instead, the spaces should
be the "-" character. Space is used to separate each sysrq key help
message.
Thanks.
On 2013/3/7 19:36, Russell King - ARM Linux wrote:
> On Thu, Mar 07, 2013 at 05:00:23PM +0800, zhangwei(Jovi) wrote:
>> Currently help message of /proc/sysrq-trigger highlight its
>> upper-case characters, like below:
>>
>> SysRq : HELP : loglevel(0-9) reBoot Crash terminate-all-tasks(E)
>> memory-full-oom-kill(F) kill-all-tasks(I) ...
>>
>> this would confuse user trigger sysrq by upper-case character, which is
>> inconsistent with the real lower-case character registed key.
>>
>> This inconsistent help message will also lead more confused when
>> 26 upper-case letters put into use in future.
>>
>> This patch fix arm etm sysrq key: "etm buffer dump(v)"
>
> Umm, actually this is wrong. sysrq doesn't deal with case.
>
> static int sysrq_key_table_key2index(int key)
> {
> int retval;
>
> if ((key >= '0') && (key <= '9'))
> retval = key - '0';
> else if ((key >= 'a') && (key <= 'z'))
> retval = key + 10 - 'a';
> else
> retval = -1;
> return retval;
> }
>
> It actually accepts no upper case characters (because they can't be
> typed on a PC keyboard with the simple code that is sysrq.) The sysrq
> key combinations there are Alt+Sysrq+key.
>
No, sysrq doesn't accept upper-case characters just now,
function sysrq_key_table_key2index will be change if lower-case character is full for sysrq key use.
upper-case can be use for sysrq, whatever user trigger it by Sysrq key in PC keyboard, or echo "letter" into /proc/sysrq-trigger.
When trigger upper-case sysrq key by PC keyboard, you need open Caps-Lock firstly.
(Tested in my PC box)
> All sysrq help messages give the key in parens with a capital letter.
> However, there's one change you should make to this anyway - there
> should be no spaces in the help message - instead, the spaces should
> be the "-" character. Space is used to separate each sysrq key help
> message.
You are right, I fix it by below patch. Thanks.
---------------------
>From 93a03255cc570ac0e7f306b0bbd815195944813e Mon Sep 17 00:00:00 2001
From: "zhangwei(Jovi)" <[email protected]>
Date: Fri, 8 Mar 2013 11:04:16 +0800
Subject: [PATCH 4/8] ARM/etm/sysrq: fix inconstistent help message of sysrq
key
Currently help message of /proc/sysrq-trigger highlights its
upper-case characters, like below:
SysRq : HELP : loglevel(0-9) reBoot Crash terminate-all-tasks(E)
memory-full-oom-kill(F) kill-all-tasks(I) ...
this would confuse user trigger sysrq by upper-case character, which is
inconsistent with the real lower-case character registed key.
This inconsistent help message will also lead more confused when
26 upper-case letters put into use in future.
This patch fix arm etm sysrq key: "etm-buffer-dump(v)"
(This patch also add "-" to separate each sysrq key help word,
instead of spaces)
Signed-off-by: zhangwei(Jovi) <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
Cc: Russell King <[email protected]>
---
arch/arm/kernel/etm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/kernel/etm.c b/arch/arm/kernel/etm.c
index 9b6de8c..8ff0ecd 100644
--- a/arch/arm/kernel/etm.c
+++ b/arch/arm/kernel/etm.c
@@ -254,7 +254,7 @@ static void sysrq_etm_dump(int key)
static struct sysrq_key_op sysrq_etm_op = {
.handler = sysrq_etm_dump,
- .help_msg = "ETM buffer dump",
+ .help_msg = "etm-buffer-dump(v)",
.action_msg = "etm",
};
--
1.7.9.7