Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#1754 closed enhancement (duplicate)

Kernel debugger does not redraw screen on exit

Reported by: andreasf Owned by: axeld
Priority: normal Milestone: R1
Component: System/Kernel Version: R1/pre-alpha1
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: x86


When entering the kernel debugger via F12, typing e.g. threads (so that the screen gets completely white), a subsequent exit does not invalidate and redraw the screen. Only e.g. the blinking cursor of the terminal is visible. Finding the Terminal window and maximizing it and moving it around removes these artifacts.

Experienced in hrev23891.

Change History (7)

comment:1 Changed 11 years ago by axeld

Resolution: duplicate
Status: newclosed

Duplicate of #1421.

comment:2 Changed 11 years ago by andreasf

Hm, bug #1421 is marked invalid with the argument that no end user is expected to encounter this situation ... yet on Haiku's frontpage Ingo invites users to actually use the kernel debugger!

comment:3 Changed 11 years ago by axeld

Hehe :-) Our target audience in the long run won't need the kernel debugger anymore - for now it helps a lot, of course. I wouldn't mind if someone would provide a (clean) patch for the problem, but as I said in #1421, I don't think it's worth to spend much time on it.

The kernel debugger shouldn't be seen as part of the usual interface :-)

comment:4 Changed 11 years ago by andreasf

Well, a clean fix could be to extend the kernel debugger through a client-side tool that silently executes kernel debugger commands without the screen going white and afterwards printing their results to the tool's stdout, thinking of DTrace there.

comment:5 Changed 11 years ago by axeld

All KDL commands rely on the fact that you have complete ownership of the system (ie. interrupts are turned off, other CPUs are halted), so that's not the way to go.

Most stuff you can retrieve using KDL can also be retrieved in userland, though, and there are many tools available for this (GDB, list{area|image|port|sem|...}, ...), too.

But sometimes userland just isn't working right, so that's only a part time option. For that one could also do a tool that's able to have access to the "traced" buffer, though.

comment:6 Changed 11 years ago by euan

perhaps a temporary hotkey could be added eg, alt+12 that app_server could use to force a redraw? It happened today when I was wondering what terminal was up to when I typed lsdev then tab and it hanged.

comment:7 Changed 11 years ago by mmlr

Anyway, it's implemented in hrev24025.

Note: See TracTickets for help on using tickets.