driver missing from the stack

Hi all,

I a writing a lower disk class driver and also a pseduo bus driver for my
pesudo devices that sit below
the disk class.
When i load my driver on the sytsem, it takes a long time to boot.

I hooked a up a debugger to see what could be the issue & it looks like that
my driver is “missing” from the I/o stack.

I see only one thread waiting at the time of hang & that is processing 2
IRPs (irp from partmgr to disk to next driver)

89669c68 [897a23c8] irpStack: ( 3,34) 89650030 [\Driver\Disk] 0x00000000

8977d198 [897a23c8] irpStack: (1b, 7) 896549d8 [\Driver\PartMgr]

0: kd> !irp 8977d198

Irp is active with 5 stacks 5 is current (= 0x8977d298)

No Mdl Thread 897a23c8: Irp stack trace.

cmd flg cl Device File Completion-Context

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[1b, 0] 0 0 896c1620 00000000 00000000-00000000

\Driver\mydrv -> my driver present after disk
Args: 00000000 00000000 00000000 00000000

[1b, 0] 0 0 89650030 00000000 f74c9100-f789e294
\Driver\Disk
Args: 00000000 00000000 00000000 00000000

[1b, 7] 0 0 896549d8 00000000 00000000-00000000
\Driver\PartMgr
Args: 00000000 00000000 00000000 00000000

&

0: kd> !irp 89669c68

Irp is active with 4 stacks 4 is current (= 0x89669d44)

Mdl = 8970e750 Thread 897a23c8: Irp stack trace.

cmd flg cl Device File Completion-Context

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[0, 0] 0 0 00000000 00000000 00000000-00000000 -> where is the next
driver???

Args: 00000000 00000000 00000000 00000000

[3,34] 2 1 89650030 00000000 00000000-00000000 pending

\Driver\Disk
Args: 00000200 00000000 00000000 00000000

Also, I can see my driver in the device stack of partmgr & disk:

0: kd> !devstack 89650030

!DevObj !DrvObj !DevExt ObjectName

896549d8 \Driver\PartMgr 89654a90

89650030 \Driver\Disk 896500e8 DR5
89652830 \Driver\mdrv 896528e8 -> my pseudo filter device
896c1620 \Driver\mydrv 896c16d8 PseudoDev -> My pesudo device

The driver gets loaded on the stack after some time. & the system boots up
fine. Any ideas as to why it would take some time to get loaded??

Thanks in advance.


Arrange your love marriage. http://www.shaadi.com/ptnr.php?ptnr=hmltag On
Shaadi.com.

The services for your drivers are set to start at boot, correct?

-p

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of atul kabra
Sent: Tuesday, July 27, 2004 6:05 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] driver missing from the stack

Hi all,

I a writing a lower disk class driver and also a pseduo bus driver for
my pesudo devices that sit below the disk class.
When i load my driver on the sytsem, it takes a long time to boot.

I hooked a up a debugger to see what could be the issue & it looks like
that my driver is “missing” from the I/o stack.

I see only one thread waiting at the time of hang & that is processing 2
IRPs (irp from partmgr to disk to next driver)

89669c68 [897a23c8] irpStack: ( 3,34) 89650030 [\Driver\Disk]
0x00000000

8977d198 [897a23c8] irpStack: (1b, 7) 896549d8 [\Driver\PartMgr]

0: kd> !irp 8977d198

Irp is active with 5 stacks 5 is current (= 0x8977d298)

No Mdl Thread 897a23c8: Irp stack trace.

cmd flg cl Device File Completion-Context

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[1b, 0] 0 0 896c1620 00000000 00000000-00000000

\Driver\mydrv -> my driver present after disk
Args: 00000000 00000000 00000000 00000000

[1b, 0] 0 0 89650030 00000000 f74c9100-f789e294
\Driver\Disk
Args: 00000000 00000000 00000000 00000000

[1b, 7] 0 0 896549d8 00000000 00000000-00000000
\Driver\PartMgr
Args: 00000000 00000000 00000000 00000000

&

0: kd> !irp 89669c68

Irp is active with 4 stacks 4 is current (= 0x89669d44)

Mdl = 8970e750 Thread 897a23c8: Irp stack trace.

cmd flg cl Device File Completion-Context

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000

[0, 0] 0 0 00000000 00000000 00000000-00000000 -> where is the next

driver???

Args: 00000000 00000000 00000000 00000000

[3,34] 2 1 89650030 00000000 00000000-00000000 pending

\Driver\Disk
Args: 00000200 00000000 00000000 00000000

Also, I can see my driver in the device stack of partmgr & disk:

0: kd> !devstack 89650030

!DevObj !DrvObj !DevExt ObjectName

896549d8 \Driver\PartMgr 89654a90

89650030 \Driver\Disk 896500e8 DR5
89652830 \Driver\mdrv 896528e8 -> my pseudo filter device
896c1620 \Driver\mydrv 896c16d8 PseudoDev -> My pesudo device

The driver gets loaded on the stack after some time. & the system boots
up fine. Any ideas as to why it would take some time to get loaded??

Thanks in advance.


Arrange your love marriage. http://www.shaadi.com/ptnr.php?ptnr=hmltag
On Shaadi.com.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com