Does sysrq work over USB?
Marc SCHAEFER
schaefer at alphanet.ch
Tue Nov 16 09:04:56 EST 2021
Hello,
I made the following setup work, that is I can send break and '?'
(to get the magic sysrq help) or 's' to do an Emergency sync, and the
kernel logs it:
laptop apu2
USB serial port ------- null modem ------- ttyS0 internal 16550A
(an apu2 is an embedded amd64 computer [4])
As it works, of course MAGIC_SYSRQ is enabled, including for serial
ports, and the correct value is in the /proc pseudo-file.
It works with the getty enabled or disabled.
However, the following does not work to support magic sysrq, although
bidirectionnal communication also works with cu [5], with the correct
speed set:
laptop apu2
USB serial port ------- null modem ------- USB serial port
First, reading documentation, I thought that this would not be possible with
USB and only with the internal serial port [1], but then, reading kernel
source, it looks it should work with my adapter:
Oct 11 14:30:56 apu2-init7 kernel: [ 9.915105] usb 2-2: pl2303 converter now attached to ttyUSB0
since the driver [2] contains code for magic sysrq, see line 993 for
sysrq mode and line 892 for break handling, with implementation in [3]
(lines 589-597).
I am running Debian buster kernel 4.19.0-18-amd64 on the apu2.
Should I abandon all hope to make it work with USB, or should it work?
Thank your for any pointers.
[1] https://www.kernel.org/doc/Documentation/admin-guide/sysrq.rst
"On the serial console (PC style standard serial ports only)"
[2] https://github.com/jplozi/linux-4.19/blob/loadbalancing/drivers/usb/serial/pl2303.c
[3] https://github.com/jplozi/linux-4.19/blob/loadbalancing/drivers/usb/serial/generic.c
[4] https://pcengines.ch/apu2.htm
[5] https://linux.die.net/man/1/cu
from the days before 2003 where I was doing UUCP
cu -l ttyUSB0 -s 9600
More information about the Kernelnewbies
mailing list