I have recently started getting a blue screen of death (BSOD) error very shortly after logging in to my Windows 7 laptop. It is fine if I am in safe mode, but crashes every time when I log in to normal windows mode. Based on the memory dump it is some kind of registry error. I have copied the output from windbg below. I don't recall installing anything recently and I haven't attached any new hardware.
Once I waited for about 8 hours between booting the laptop and logging in and it worked again until I restarted and logged in more quickly. I am not sure how to proceed and if there is anything I can do to fix the registry problem. Is there anything I can do?
REGISTRY_ERROR (51) Something has gone badly wrong with the registry. If a kernel debugger is available, get a stack trace. It can also indicate that the registry got an I/O error while trying to read one of its files, so it can be caused by hardware problems or filesystem corruption. It may occur due to a failure in a refresh operation, which is used only in by the security system, and then only when resource limits are encountered. Arguments: Arg1: 0000000000000001, (reserved) Arg2: fffff8a000024290, (reserved) Arg3: 00000000017f7000, depends on where Windows bugchecked, may be pointer to hive Arg4: 0000000000000374, depends on where Windows bugchecked, may be return code of HvCheckHive if the hive is corrupt. Debugging Details: ------------------ DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT BUGCHECK_STR: 0x51 PROCESS_NAME: services.exe CURRENT_IRQL: 0 LAST_CONTROL_TRANSFER: from fffff800039ad688 to fffff8000367dbc0 STACK_TEXT: nt!KeBugCheckEx nt! ?? ::NNGAKEGL::`string'+0x9d9a nt!HvMarkDirty+0x176 nt!HvMarkCellDirty+0x150 nt! ?? ::NNGAKEGL::`string'+0x1174c nt!CmpMarkKeyValuesDirty+0x182 nt!CmpFreeKeyValues+0x24 nt!CmpSyncKeyValues+0x7a nt!CmpCopySyncTree2+0x2a8 nt!CmpCopySyncTree+0x6e nt!CmpSaveBootControlSet+0x307 nt!NtInitializeRegistry+0xc6 nt!KiSystemServiceCopyEnd+0x13 nt!KiServiceLinkage nt!NtInitializeRegistry+0x6f nt!KiSystemServiceCopyEnd+0x13 STACK_COMMAND: kb FOLLOWUP_IP: nt! ?? ::NNGAKEGL::`string'+9d9a fffff800`039ad688 cc int 3 FAILURE_BUCKET_ID: X64_0x51_nt!_??_::NNGAKEGL::_string_+9d9a