freebsd-dev/sys/ddb
Ryan Libby 3e5e9939cd ddb: enable the use of ^C and ^S/^Q
This lets one interrupt DDB's output, which is useful if paging is
disabled and the output device is slow.

This follows a previous implementation in svn r311952 / git
5fddef7999 which was reverted because it
broke DDB type-ahead.

Now, try this again, but with a 512-byte type-ahead buffer.  While there
is buffer space, control input is handled and non-control input is
buffered.  When the buffer is exhausted, the default is to print a
warning and drop further non-control input in order to continue handling
control input.  sysctl debug.ddb.prioritize_control_input can be set to
0 to instead preserve all input but lose immediate handling of control
input.  This could for example effect pasting of a large script into the
ddb console.

Suggested by:	Anton Rang <rang@acm.org>
Reviewed by:	markj
Discussed with:	imp
Sponsored by:	Dell EMC Isilon
Differential Revision:	https://reviews.freebsd.org/D28676
2021-03-14 16:04:27 -07:00
..
db_access.c No need to force md code to define a macro that's the same as 2018-04-16 13:52:23 +00:00
db_access.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_break.c ddb: clean up empty lines in .c and .h files 2020-09-01 22:14:30 +00:00
db_break.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_capture.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
db_command.c ddb: reliably fail with ambiguous commands 2021-02-24 15:56:16 -08:00
db_command.h ddb(4): Move an extern variable declaration to a header 2019-09-09 01:33:45 +00:00
db_examine.c SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_expr.c kernel: provide panicky version of __unreachable 2020-05-13 18:07:37 +00:00
db_input.c ddb: enable the use of ^C and ^S/^Q 2021-03-14 16:04:27 -07:00
db_lex.c ddb: just move cursor when the lexer backs up 2021-02-24 15:56:16 -08:00
db_lex.h ddb(4): Add some support for lexing IPv6 addresses 2019-09-09 16:32:23 +00:00
db_main.c [PowerPC] More relocation fixes 2020-06-21 03:39:26 +00:00
db_output.c ddb: enable the use of ^C and ^S/^Q 2021-03-14 16:04:27 -07:00
db_output.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_print.c ddb: add ability to print user registers 2021-01-08 14:53:06 -04:00
db_ps.c Use atomic loads/stores when updating td->td_state 2021-02-18 14:02:48 +00:00
db_run.c ddb(4): Move an extern variable declaration to a header 2019-09-09 01:33:45 +00:00
db_script.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
db_sym.c db_search_symbol: prevent pollution from bogus symbols 2020-10-26 16:42:53 +00:00
db_sym.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_textdump.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
db_thread.c Use kdb_thr_from_pid() in db_lookup_thread(). 2020-12-31 16:01:27 -08:00
db_variables.c SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_variables.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_watch.c ddb: clean up empty lines in .c and .h files 2020-09-01 22:14:30 +00:00
db_watch.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
db_write_cmd.c ddb: clean up empty lines in .c and .h files 2020-09-01 22:14:30 +00:00
ddb.h ddb: enable the use of ^C and ^S/^Q 2021-03-14 16:04:27 -07:00