Seriously, all these "while (TRUE);" are retarded. All they do is hide
bugs.
Especially in usermode and at high irql. (which most of them are from a
quick glance)
The result is not "The OS cannot continue and halts", but "One thread of
the OS silently stops doing anything, eating up cpu, while the rest of
the OS happily continues to mess up the system even more, hiding the
previous debug print under a shitload of unrelated stuff, so that you
won't notice anything, except that something doesn't work."
And on high irql it makes the system hang. Which is not much better,
since usually the reason of a hang is not closely related to the latest
debug prints, so that's not what you are looking at. "normal users" have
no idea how to handle that. They won't give you a bt, something people
often do when experiencing a crash or failed assertion.
If it's fatal, either bugcheck or ASSERT or DbgBreakPoint();
Therefore: good work, killing this crap.
If there is a DPRINT1 + UNIMPLEMENTED or not ... who cares? It's not
like this is production code ;-)
Timo