- Fix some coverity errors.

- Use KeBugCheck(MEMORY_MANAGEMENT) instead of ASSERT(FALSE), so it dies on release builds too.
- Enable support for Hyper-V.
- Fix incorrect gate wait code -- fixes sporadic crashes in the network stack.
- Mark KeBugCheck*, ExRaise* and RtlRaiseStatus as declspec(noreturn), for better optimization of functions which call them, less potential warnings in the compiler, and, assuming coverity understands it, less false CIDs.
- Fix KiUpdateDr7, which resulted in broken support for hardware breakpoints.
- Fix failure cases in EnumerateRootDevices which might've freed non-allocated memory.
- Fix NtAddAtom/NtFindAtom logic when dealing with NULL or kernel Atom names.

Patch by Alex Ionescu.

svn path=/trunk/; revision=37668
This commit is contained in:
Aleksey Bragin
2008-11-26 18:56:41 +00:00
parent 1afa5e29a0
commit 24da6d32fe
16 changed files with 227 additions and 203 deletions
+5
View File
@@ -7666,12 +7666,14 @@ ExNotifyCallback(
NTKERNELAPI
VOID
NTAPI
__declspec(noreturn)
ExRaiseAccessViolation(
VOID);
NTKERNELAPI
VOID
NTAPI
__declspec(noreturn)
ExRaiseDatatypeMisalignment(
VOID);
@@ -7679,6 +7681,7 @@ DECLSPEC_NORETURN
NTKERNELAPI
VOID
NTAPI
__declspec(noreturn)
ExRaiseStatus(
IN NTSTATUS Status);
@@ -9603,12 +9606,14 @@ KeAreApcsDisabled(
NTKERNELAPI
VOID
NTAPI
__declspec(noreturn)
KeBugCheck(
IN ULONG BugCheckCode);
NTKERNELAPI
VOID
NTAPI
__declspec(noreturn)
KeBugCheckEx(
IN ULONG BugCheckCode,
IN ULONG_PTR BugCheckParameter1,
+1
View File
@@ -431,6 +431,7 @@ RtlRaiseException(
NTSYSAPI
VOID
NTAPI
__declspec(noreturn)
RtlRaiseStatus(
IN NTSTATUS Status
);