OS-6565: remove KMDB branch debugging support


Issue Type:Bug
Priority:4 - Normal
Created at:2018-01-20T03:34:15.815Z
Updated at:2018-01-23T19:51:30.318Z


Created by:Former user
Reported by:Former user
Assigned to:Former user


Fixed: A fix for this issue is checked into the tree and tested.
(Resolution Date: 2018-01-23T19:51:30.308Z)

Related Issues


KMDB has vestigial support for two features, ::step branch and ::branches. The former allows you to step to the next branch point, while the latter reports the "last few" branches, as recorded in MSRs such as the LBR.

However, this was never properly implemented for 64-bit, thus is effectively non-existent on any reasonably modern system. While it could be resurrected, fixing this would complicate KPTI implementation. As it's already broken, it's hard to argue that it will be missed; we'll just remove all the relevant code.

Side note: if we ever decide to reimplement this, it can likely be in greatly simplified form, as the CPU support long since solidified.


Comment by Former user
Created at 2018-01-22T19:42:54.756Z

Tested this with debug and non-debug, from bootloaded and modloaded KMDB, along with a bunch of step/bpt testing.

Comment by Jira Bot
Created at 2018-01-23T19:48:17.792Z

illumos-joyent commit abe3b0816f5a2c16be4d4cec2645edff263bb490 (branch master, by John Levon)

OS-6565 remove KMDB branch debugging support
OS-6566 ::crregs could do with cr2/cr3 support
OS-6567 ::ttrace should be able to filter by thread
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Approved by: Patrick Mooney <patrick.mooney@joyent.com>