KM, Slobodan,
I appreciate your help.
I finally got the debugger to connect normally, I'm not sure which new
component fixed this. Anyway, now the debugger does confirm this is
the 7B error. Below you'll see the results of my !devnode 0 1 and
!analyze -v commands.
Slobadan, I am sorry that 7B is such a pain. What a beast!
If you have any advice for me, it will be very much appreciated.
Thanks,
SAC
Loading User Symbols
****************************************************************************
***
*
*
* Bugcheck Analysis
*
*
*
****************************************************************************
***
Use !analyze -v to get detailed debugging information.
BugCheck 7B, {fc8d2640, c0000034, 0, 0}
Probably caused by : ntoskrnl.exe ( nt!KiBugCheckDebugBreak+19 )
Followup: MachineOwner
---------
nt!RtlpBreakWithStatusInstruction:
805103fa cc int 3
kd> !devnode 0 1
Dumping IopRootDeviceNode (= 0x80e7b008)
DevNode 0x80e7b008 for PDO 0x80e7c430
InstancePath is "HTREE\ROOT\0"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x80e7bd28 for PDO 0x80e7be70
InstancePath is "Root\LEGACY_RDPWD\0000"
ServiceName is "RDPWD"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x80e7ba48 for PDO 0x80e7bb90
InstancePath is "Root\LEGACY_TDPIPE\0000"
ServiceName is "TDPIPE"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x80e7b808 for PDO 0x80e7b950
InstancePath is "Root\LEGACY_TDTCP\0000"
ServiceName is "TDTCP"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x80e7b5c8 for PDO 0x80e7b710
InstancePath is "Root\RDPDR\0000"
ServiceName is "rdpdr"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_REGISTRY
DevNode 0x80e7b388 for PDO 0x80e7b4d0
InstancePath is "Root\RDP_KBD\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x80e7b148 for PDO 0x80e7b290
InstancePath is "Root\RDP_MOU\0000"
ServiceName is "TermDD"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x80eb5ee8 for PDO 0x80eb5030
InstancePath is "Root\SYSTEM\0000"
ServiceName is "swenum"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_REGISTRY
DevNode 0x80eb5ca8 for PDO 0x80eb5df0
InstancePath is "Root\SYSTEM\0001"
ServiceName is "update"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
DevNode 0x80eb5970 for PDO 0x80eb5ab8
InstancePath is "ROOT\PCI_HAL\0000"
ServiceName is "\Driver\PCI_HAL"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0x80e7ad10 for PDO 0x80eb55d0
InstancePath is "PCI_HAL\PNP0A03\0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80e7aad0 for PDO 0x80e7ac18
InstancePath is "Root\*PNP0301\1_0_22_0_32_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80e7a890 for PDO 0x80e7a9d8
InstancePath is "Root\*PNP0400\1_0_20_0_0_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb4dc8 for PDO 0x80eb4f10
InstancePath is "Root\*PNP0501\1_0_17_0_0_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb4b88 for PDO 0x80eb4cd0
InstancePath is "Root\*PNP0501\1_0_17_1_0_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb4948 for PDO 0x80eb4a90
InstancePath is "Root\*PNP0501\1_0_17_2_0_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb4708 for PDO 0x80eb4850
InstancePath is "Root\*PNP0501\1_0_17_3_0_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb44c8 for PDO 0x80eb4610
InstancePath is "Root\*PNP0700\1_0_13_0_26_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb4288 for PDO 0x80eb43d0
InstancePath is "Root\*PNP0F03\1_0_21_0_31_0"
State = DeviceNodeInitialized (0x302)
Previous State = DeviceNodeUninitialized (0x301)
Problem = CM_PROB_NOT_CONFIGURED
DevNode 0x80eb3700 for PDO 0x80eb3848
InstancePath is "ROOT\Ftdisk\0000"
ServiceName is "Ftdisk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
kd> !analyze -v
****************************************************************************
***
*
*
* Bugcheck Analysis
*
*
*
****************************************************************************
***
INACCESSIBLE_BOOT_DEVICE (7b)
During the initialization of the I/O system, it is possible that the
driver
for the boot device failed to initialize the device that the system is
attempting to boot from, or it is possible for the file system that is
supposed to read that device to either fail its initialization or to
simply
not recognize the data on the boot device as a file system structure
that
it recognizes. In the former case, the argument (#1) is the address
of a
Unicode string data structure that is the ARC name of the device from
which
the boot was being attempted. In the latter case, the argument (#1)
is the
address of the device object that could not be mounted.
If this is the initial setup of the system, then this error can occur
if
the system was installed on an unsupported disk or SCSI controller.
Note
that some controllers are supported only by drivers which are in the
Windows
Driver Library (WDL) which requires the user to do a custom install.
See
the Windows Driver Library for more information.
This error can also be caused by the installation of a new SCSI
adapter or
disk controller or repartitioning the disk with the system partition.
If
this is the case, on x86 systems the boot.ini file must be edited or
on ARC
systems setup must be run. See the "Advanced Server System
Administrator's
User Guide" for information on changing boot.ini.
If the argument is a pointer to an ARC name string, then the format of
the
first two (and in this case only) longwords will be:
USHORT Length;
USHORT MaximumLength;
PWSTR Buffer;
That is, the first longword will contain something like 00800020 where
20
is the actual length of the Unicode string, and the next longword will
contain the address of buffer. This address will be in system space,
so
the high order bit will be set.
If the argument is a pointer to a device object, then the format of
the first
word will be:
USHORT Type;
That is, the first word will contain a 0003, where the Type code will
ALWAYS
be 0003.
Note that this makes it immediately obvious whether the argument is a
pointer
to an ARC name string or a device object, since a Unicode string can
never
have an odd number of bytes, and a device object will always have a
Type
code of 3.
Arguments:
Arg1: fc8d2640, Pointer to the device object or Unicode string of ARC
name
Arg2: c0000034
Arg3: 00000000
Arg4: 00000000
Debugging Details:
------------------
DEFAULT_BUCKET_ID: DRIVER_FAULT
BUGCHECK_STR: 0x7B
LAST_CONTROL_TRANSFER: from 805258ca to 805103fa
STACK_TEXT:
fc8d20bc 805258ca 00000003 fc8d23ec fc8d2640
nt!RtlpBreakWithStatusInstruction
fc8d2108 80526160 00000003 80084000 e10682f8
nt!KiBugCheckDebugBreak+0x19
fc8d24d4 805266db 0000007b fc8d2640 c0000034 nt!KeBugCheck2+0x46d
fc8d24f4 80692788 0000007b fc8d2640 c0000034 nt!KeBugCheckEx+0x19
fc8d2654 8067ed3b 80084000 80084000 00000000
nt!IopMarkBootPartition+0xbd
fc8d26a4 8068a5a5 80084000 fc8d27ec 00034000
nt!IopInitializeBootDrivers+0x49d
fc8d2844 8068b3a1 80084000 00000000 80e92960 nt!IoInitSystem+0x60a
fc8d2dac 8057c73a 80084000 00000000 00000000
nt!Phase1Initialization+0x83b
fc8d2ddc 805124c1 8068ad55 80084000 00000000
nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16
FOLLOWUP_IP:
nt!KiBugCheckDebugBreak+19
805258ca eb59 jmp nt!KiBugCheckDebugBreak+0x74
(80525925)
FOLLOWUP_NAME: MachineOwner
SYMBOL_NAME: nt!KiBugCheckDebugBreak+19
MODULE_NAME: nt
IMAGE_NAME: ntoskrnl.exe
DEBUG_FLR_IMAGE_TIMESTAMP: 3d6de35c
STACK_COMMAND: kb
BUCKET_ID: 0x7B_nt!KiBugCheckDebugBreak+19
Followup: MachineOwner
---------
Since you are seeing 7B error then this scenario is not possible, you would
see various different errors if what you describe was the actual cause.
We have reached NDA point here. Only what I can say without going deeper to
the problem is something that you probably know or at least it is publicly
available:
In DDK 7B error is described under section "Bug Check 0x7B:
INACCESSIBLE_BOOT_DEVICE"
Cause for 7B error can be anything, I have isolated more than 10 different
causes. But one this is constant 7B error is not thrown by any of drivers,
but by ntoskrnl.exe when init phase 0 is complete and when boot disk is
expected to be present and functional.
Regards,
Slobodan
PS:
I'm sick of 7B, c000021a errors. I have been dealing with them for last two
months, day and nights. Hopefully I have solved them all. More testing will
tell.