Now, a panic/oops message is sure better than a silent hang, but that's it, really.
Anything less than that should just go in a logfile where the admin can look
it up later. The very ability to write on the console will alway be abused
by some application programmer or kernel driver module vendor.
Blindly writing on the console won't be very useful either, the user might
be running a game or video which overwrites the message within 1/30s anyway.
Well, perhaps it can be done better than that, with some thought. I.e. :
* block all further access to /dev/fb0, processes will wait.
* Mark graphichs memory "not present" for any process that have it mapped,
so as to pagefault anyone using it directly. (read-only is not enough,
processes should see the graphichs memory they expect, not
the kernel message)
* Try to allocate memory for saving the screen image (assuming the
machine won't hang completely, it will often keep running after an oops)
* Annoy the user by showing the message
* Provide some way of letting the user decide when to proceed, such
as pressing a key
* Restore the saved screen memory (if that allocation was successful)
* Mark framebuffer memory present, releasing pagefaulted processes
* Unblock /dev/fb0