Page MenuHomeFreeBSD

Enable ^C (and incidentally ^S/^Q) in ddb.
ClosedPublic

Authored by rang_acm.org on Jan 11 2017, 5:52 PM.
Tags
None
Referenced Files
F131959789: D9138.id23912.diff
Sun, Oct 12, 12:48 PM
Unknown Object (File)
Wed, Oct 8, 6:05 AM
Unknown Object (File)
Fri, Oct 3, 5:43 PM
Unknown Object (File)
Thu, Oct 2, 4:25 PM
Unknown Object (File)
Wed, Oct 1, 3:40 AM
Unknown Object (File)
Mon, Sep 29, 10:23 PM
Unknown Object (File)
Fri, Sep 19, 6:32 PM
Unknown Object (File)
Sep 10 2025, 8:02 PM
Subscribers
None

Details

Summary

I usually set $lines to 0 so that I can do large memory/buffer/etc. dumps from ddb; but sometimes it is useful to be able to interrupt the output, especially when using a relatively slow serial connection. Code for this was already present, but not hooked up for some reason. This just hooks it up to the console subsystem.

I did minimal testing, just using DDB on an AMD64 kernel, but it seems to work as expected. It's a little messy since you get the kdb reentry stack after ^C, but works.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

rang_acm.org retitled this revision from to Enable ^C (and incidentally ^S/^Q) in ddb..
rang_acm.org updated this object.
rang_acm.org edited the test plan for this revision. (Show Details)
rang_acm.org added reviewers: markj, jhb.
markj edited edge metadata.

Nice, I've wanted this too.

The backtrace spam is a feature of many seemingly reasonable DDB actions (e.g. "show proc <pid>" when no process with that PID exists).

This revision is now accepted and ready to land.Jan 11 2017, 6:06 PM
jhb edited edge metadata.

How odd that this was never hooked up.

This revision was automatically updated to reflect the committed changes.