Fsd and BusDriver (BSOD)

Help,
In response to IRP_MN_QUERY_ID I am creating id's(BusQueryDeviceID,
BusQueryHardwareIDs, BusQueryCompatibleIDs, BusQueryInstanceID ) in our
bus driver for the child devices (disk PDOs ), when I open a handle to
this device using DEVICEINTERFACE(dbcc_name) as a device path on a
DBT_DEVICEARRIVAL notification from an user level service system crashes
in dfsdriver.

If I disable our service, svchost system service attempt to open our
device results to crash! I am assuming svchost is also attempting to open
using DEVICEINTERFACE, when I disable svchost and our service I don't see
crash, but for sure I think if any other application attempts to open
using DEVICEINTERFACE will result to crash..

Imp Note: I am seeing this problem only when I am running
PowerQuest/StorageCraft file system driver(pqv2i.sys) with our bus driver.

I don't see any problem when a local disk device is opened using
DEVICEINTERFACE or when I open our disk devices as \.\PhysicalDriveX on a
DBT_DEVICEARRIVAL notification i.e. from the service with pqv2i driver
running.

Following is the dump:

***************************************************************************

*
* Bugcheck Analysis
*
*
*
***************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 82, {bff016c8, 804fbe41, 0, 0}

*** ERROR: Module load completed but symbols could not be loaded for
PQV2i.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols
for SYMEVENT.SYS -
Probably caused by : Dfs.sys ( Dfs!DfsBugCheck+28 )

Followup: MachineOwner

0: kd> !analyze -v
****************************************************************************
*
* Bugcheck Analysis
*
*
*
***************************************************************************

DFS_FILE_SYSTEM (82)
Arguments:
Arg1: bff016c8
Arg2: 804fbe41
Arg3: 00000000
Arg4: 00000000

Debugging Details:

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x82

LAST_CONTROL_TRANSFER: from bff016c8 to bff016aa

STACK_TEXT:
be64ef8c bff016c8 bff020db c0000005 be64efbc Dfs!DfsBugCheck+0x28
be64ef90 bff020db c0000005 be64efbc 8053eb1b Dfs!DfsExceptionFilter+0x1c
be64f740 804fbe41 885d17e0 879874a8 00000000
Dfs!DfsFsdFileSystemControl+0x6b
be64f754 bfee813f 8798760c 87994eb8 bf04b000 nt!IopfCallDriver+0x35
WARNING: Stack unwind information not available. Following frames may be
wrong.
be64f774 bfeeb11c 885d17e0 879874a8 885d16c0 PQV2i+0x313f
be64f7a8 bfeeafb2 885d16c0 879870d8 885d16c0 PQV2i+0x611c
be64f84c be75c327 be64f86c 804fd56e be75c3f8 PQV2i+0x5fb2
be64f8e0 805067ef c000014f 00000001 00000000 SYMEVENT+0x6327
be64f908 8059ef41 be64fc84 8896b9d0 be64fadc nt!IopCheckVpbMounted+0x5f
be64fa98 8052f716 8896b9d0 00000000 be64fb4c nt!IopParseDevice+0x3e7
be64fb0c 805b511d 00000000 89055e00 00000040 nt!ObpLookupObjectName+0x4f2
be64fc1c 8057fcfa 00000000 00000000 e257cc01 nt!ObOpenObjectByName+0xc5
be64fcf0 805871ce 00c4f6ec 80100080 00c4f688 nt!IoCreateFile+0x3ec
be64fd30 80544389 00c4f6ec 80100080 00c4f688 nt!NtCreateFile+0x2e
be64fd30 77f8f9c5 00c4f6ec 80100080 00c4f688 nt!KiSystemService+0xc9
00c4f648 7c4ec506 00c4f6ec 80100080 00c4f688 ntdll!NtCreateFile+0xb
00c4f6e4 761d32a0 00000000 80000000 00000003 KERNEL32!CreateFileW+0x343
00c4f720 761d30dc 0000002b 00000000 00000000
ntmssvc!DeviceInfo::InitFromDevice+0x174
00c4f760 761d2deb 0044e0bc 00000000 00c4f9c4
ntmssvc!DeviceConfiguration::DeviceConfiguration+0xd2
00c4f928 761d2da4 00c4fc64 00000000 00000000
ntmssvc!DeviceList::GetDeviceList+0x2a
00c4f940 761d277f 00000000 0000001c 002d0057
ntmssvc!AutoConfig::Initialize+0x161
00c4f9ec 761d1f01 00c4fa0c 00c4ff78 00000000 ntmssvc!LmConfigure+0x92
00c4ff84 761d1dfe 00084240 0000001c 00000000 ntmssvc!LmInitialize+0x10f
00c4ffb4 7c4e987c 00000000 00084240 0000001c ntmssvc!LmInitStart+0x4f
00c4ffec 00000000 761d1dbf 00000000 00000000 KERNEL32!BaseThreadStart+0x52

FOLLOWUP_IP:
Dfs!DfsBugCheck+28
bff016aa c9 leave

FOLLOWUP_NAME: MachineOwner

SYMBOL_NAME: Dfs!DfsBugCheck+28

MODULE_NAME: Dfs

IMAGE_NAME: Dfs.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 3e49af1a

STACK_COMMAND: kb

BUCKET_ID: 0x82_Dfs!DfsBugCheck+28

Followup: MachineOwner

Any ideas or suggestions on what's going here?

Thanks in advance for your time and effort,
-Anand
xxxxx@yahoo.com

See the windbg doc for Exception Record. The stack for your bugcheck
indicates that you are in an exception handler: DfsExceptionFilter, and the
first two parameter values, c0000005 and be64efbc are the exception code and
a pointer to an exception record. You should be able to decode the exception
using the documented procedure in windbg and get back to the original stack
that way.

Of course it would help if your debugger was set up with the correct
symbols.

=====================
Mark Roddy

-----Original Message-----
From: AR [mailto:xxxxx@yahoo.com]
Sent: Monday, August 11, 2003 3:15 PM
To: Windows System Software Developers Interest List
Subject: [ntdev] Fsd and BusDriver (BSOD)

Help,
In response to IRP_MN_QUERY_ID I am creating id's(BusQueryDeviceID,
BusQueryHardwareIDs, BusQueryCompatibleIDs, BusQueryInstanceID ) in our
bus driver for the child devices (disk PDOs ), when I open a handle to
this device using DEVICEINTERFACE(dbcc_name) as a device path on a
DBT_DEVICEARRIVAL notification from an user level service system crashes
in dfsdriver.

If I disable our service, svchost system service attempt to open our
device results to crash! I am assuming svchost is also attempting to open
using DEVICEINTERFACE, when I disable svchost and our service I don't see
crash, but for sure I think if any other application attempts to open
using DEVICEINTERFACE will result to crash..

Imp Note: I am seeing this problem only when I am running
PowerQuest/StorageCraft file system driver(pqv2i.sys) with our bus driver.

I don't see any problem when a local disk device is opened using
DEVICEINTERFACE or when I open our disk devices as \.\PhysicalDriveX on a
DBT_DEVICEARRIVAL notification i.e. from the service with pqv2i driver
running.

Following is the dump:

***************************************************************************

*
* Bugcheck Analysis
*
*
*
***************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 82, {bff016c8, 804fbe41, 0, 0}

*** ERROR: Module load completed but symbols could not be loaded for
PQV2i.sys
*** ERROR: Symbol file could not be found. Defaulted to export symbols
for SYMEVENT.SYS -
Probably caused by : Dfs.sys ( Dfs!DfsBugCheck+28 )

Followup: MachineOwner

0: kd> !analyze -v
****************************************************************************
*
* Bugcheck Analysis
*
*
*
***************************************************************************

DFS_FILE_SYSTEM (82)
Arguments:
Arg1: bff016c8
Arg2: 804fbe41
Arg3: 00000000
Arg4: 00000000

Debugging Details:

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0x82

LAST_CONTROL_TRANSFER: from bff016c8 to bff016aa

STACK_TEXT:
be64ef8c bff016c8 bff020db c0000005 be64efbc Dfs!DfsBugCheck+0x28
be64ef90 bff020db c0000005 be64efbc 8053eb1b Dfs!DfsExceptionFilter+0x1c
be64f740 804fbe41 885d17e0 879874a8 00000000
Dfs!DfsFsdFileSystemControl+0x6b
be64f754 bfee813f 8798760c 87994eb8 bf04b000 nt!IopfCallDriver+0x35
WARNING: Stack unwind information not available. Following frames may be
wrong.
be64f774 bfeeb11c 885d17e0 879874a8 885d16c0 PQV2i+0x313f
be64f7a8 bfeeafb2 885d16c0 879870d8 885d16c0 PQV2i+0x611c
be64f84c be75c327 be64f86c 804fd56e be75c3f8 PQV2i+0x5fb2
be64f8e0 805067ef c000014f 00000001 00000000 SYMEVENT+0x6327
be64f908 8059ef41 be64fc84 8896b9d0 be64fadc nt!IopCheckVpbMounted+0x5f
be64fa98 8052f716 8896b9d0 00000000 be64fb4c nt!IopParseDevice+0x3e7
be64fb0c 805b511d 00000000 89055e00 00000040 nt!ObpLookupObjectName+0x4f2
be64fc1c 8057fcfa 00000000 00000000 e257cc01 nt!ObOpenObjectByName+0xc5
be64fcf0 805871ce 00c4f6ec 80100080 00c4f688 nt!IoCreateFile+0x3ec
be64fd30 80544389 00c4f6ec 80100080 00c4f688 nt!NtCreateFile+0x2e
be64fd30 77f8f9c5 00c4f6ec 80100080 00c4f688 nt!KiSystemService+0xc9
00c4f648 7c4ec506 00c4f6ec 80100080 00c4f688 ntdll!NtCreateFile+0xb
00c4f6e4 761d32a0 00000000 80000000 00000003 KERNEL32!CreateFileW+0x343
00c4f720 761d30dc 0000002b 00000000 00000000
ntmssvc!DeviceInfo::InitFromDevice+0x174
00c4f760 761d2deb 0044e0bc 00000000 00c4f9c4
ntmssvc!DeviceConfiguration::DeviceConfiguration+0xd2
00c4f928 761d2da4 00c4fc64 00000000 00000000
ntmssvc!DeviceList::GetDeviceList+0x2a
00c4f940 761d277f 00000000 0000001c 002d0057
ntmssvc!AutoConfig::Initialize+0x161
00c4f9ec 761d1f01 00c4fa0c 00c4ff78 00000000 ntmssvc!LmConfigure+0x92
00c4ff84 761d1dfe 00084240 0000001c 00000000 ntmssvc!LmInitialize+0x10f
00c4ffb4 7c4e987c 00000000 00084240 0000001c ntmssvc!LmInitStart+0x4f
00c4ffec 00000000 761d1dbf 00000000 00000000 KERNEL32!BaseThreadStart+0x52

FOLLOWUP_IP:
Dfs!DfsBugCheck+28
bff016aa c9 leave

FOLLOWUP_NAME: MachineOwner

SYMBOL_NAME: Dfs!DfsBugCheck+28

MODULE_NAME: Dfs

IMAGE_NAME: Dfs.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 3e49af1a

STACK_COMMAND: kb

BUCKET_ID: 0x82_Dfs!DfsBugCheck+28

Followup: MachineOwner

Any ideas or suggestions on what's going here?

Thanks in advance for your time and effort,
-Anand
xxxxx@yahoo.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@stratus.com
To unsubscribe send a blank email to xxxxx@lists.osr.com