Re: [PATCH 02/27] Add a SysRq option to lift kernel lockdown

From: David Howells
Date: Thu Mar 07 2019 - 10:59:41 EST


Matthew Garrett <matthewgarrett@xxxxxxxxxx> wrote:

> + /* Ban synthetic events from some sysrq functionality */
> + if ((from == SYSRQ_FROM_PROC || from == SYSRQ_FROM_SYNTHETIC) &&
> + op_p->enable_mask & SYSRQ_DISABLE_USERSPACE)
> + printk("This sysrq operation is disabled from userspace.\n");
> /*
> * Should we check for enabled operations (/proc/sysrq-trigger
> * should not) and is the invoked operation enabled?
> */
> - if (!check_mask || sysrq_on_mask(op_p->enable_mask)) {
> + if (from == SYSRQ_FROM_KERNEL || sysrq_on_mask(op_p->enable_mask)) {

There's some missing logic here. Probably an else is missing, but it seems
more than that.

David