[PATCH] /proc/sysrq-trigger: accept multiple keys at once

Tomas Mudrunka
2023-11-13T18:30:09Z

Just for convenience.
This way we can do:
`echo reisub > /proc/sysrq-trigger`
Instead of:
`for i in r e i s u b; do echo "$i" > /proc/sysrq-trigger; done;`

Signed-off-by: Tomas Mudrunka <tomas.mudrunka@gmail.com>
---
drivers/tty/sysrq.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
index 6b4a28bcf..bc5a679f6 100644
--- a/drivers/tty/sysrq.c
+++ b/drivers/tty/sysrq.c
@@ -1154,10 +1154,12 @@ EXPORT_SYMBOL(unregister_sysrq_key);
static ssize_t write_sysrq_trigger(struct file *file, const char __user *buf,
size_t count, loff_t *ppos)
{
- if (count) {
+ size_t i;
+
+ for (i = 0; i < count; i++) {
char c;

- if (get_user(c, buf))
+ if (get_user(c, buf+i))
return -EFAULT;
__handle_sysrq(c, false);
}
--
2.42.1