weird crash

Hi, my driver is an upper-filter for class volume.During QA tests, driver verifier caused a blue screen. The weirdestthingis that the QA guy had mistakenly verified tcpip.sys instead of ourdriver!!Here is an excrept from the windbg crash analyzer. The machine iswin2003 UP.Windows Server 2003 Kernel Version 3790 UP Free x86 compatibleProduct: Server, suite: Enterprise TerminalServer SingleUserTSBuilt by: 3790.srv03_rtm.030324-2048Kernel base = 0x804de000 PsLoadedModuleList = 0x80568c08Debug session time: Thu Jul 15 08:52:23 2004System Uptime: 0 days 0:07:13.187Loading Kernel Symbols…Loading unloaded module list…Loading User Symbols…******************************************************************************** ** Bugcheck Analysis **
********************************************************************************Use !analyze -v to get detailed debugging information.BugCheck C4, {a0, 83986f20, 829b7030, 1444b95}Probably caused by : crcdisk.sys (crcdisk!VerifyOrStoreSectorCheckSum+282 )Followup: MachineOwner---------*** WARNING: Unable to verify checksum for trcuser.exe*** ERROR: Module load completed but symbols could not be loaded forn100325.syskd> !analyze -v******************************************************************************** ** Bugcheck Analysis ** ********************************************************************************DRIVER_VERIFIER_DETECTED_VIOLATION (c4)A device driver attempting to corrupt the system has been caught.
This isbecause the driver was specified in the registry as being suspect (bytheadministrator) and the kernel has enabled substantial checking of thisdriver.If the driver attempts to corrupt the system, bugchecks 0xC4, 0xC1 and0xA willbe among the most commonly seen crashes. Parameter 1 = 0x1000 … 0x1020 - deadlock verifier errorcodes. Typically the code is 0x1001 (deadlock detected) andyou can issue a ‘!deadlock’ KD command to get more information.Arguments:Arg1: 000000a0, A CRC error was detected on the sector(synchronously).Arg2: 83986f20, Request Irp.Arg3: 829b7030, Device object of the lower device.Arg4: 01444b95, Sector number on which the CRC error was detected.Debugging Details:------------------BUGCHECK_STR: 0xc4_a0DEFAULT_BUCKET_ID: DRIVER_FAULTCURRENT_IRQL: 2LAST_CONTROL_TRANSFER: from f74f915a to 8053eec8STACK_TEXT: f789ece4 f74f915a 000000c4 000000a0 83986f20 nt!KeBugCheckEx+0x19f789ed48 f74f966e 829800d0 01444b95
00006242crcdisk!VerifyOrStoreSectorCheckSum+0x282f789ed9c f74f83c1 829800d0 83986f20 01444b61crcdisk!VerifyCheckSum+0x148f789ee0c f74f899b 829800d0 83986f20 829800d0crcdisk!CompleteXfer+0x2a7f789ee24 8067f246 82980018 83986f20 8232ab78crcdisk!CrcScsiReadCompletion+0x2ff789ee48 804e4433 82980018 83986f20 f789ee8cnt!IovpLocalCompletionRoutine+0xb2f789ee78 8067f771 822cbc38 829f2b00 822a991cnt!IopfCompleteRequest+0xa0f789eee0 baee94d4 822cbc38 83986f20 f789ef28nt!IovCompleteRequest+0x90f789eef0 baee9f4f 822cbc38 00000001 00000000SCSIPORT!SpCompleteRequest+0x5cf789ef28 baee94fd 829f2b00 822cbc38 f789efa3SCSIPORT!SpProcessCompletedRequest+0x441f789efa4 804e47fb 829f2abc 829f2a48 00000000SCSIPORT!ScsiPortCompletionDpc+0x2b3f789eff4 804e48eb f4f69838 00000000 00000000 nt!KiRetireDpcList+0xc8FOLLOWUP_IP: crcdisk!VerifyOrStoreSectorCheckSum+282f74f915a 8b4508 mov eax,[ebp+0x8]FOLLOWUP_NAME: MachineOwnerSYMBOL_NAME: crcdisk!VerifyOrStoreSectorCheckSum+282MODULE_NAME:
crcdiskIMAGE_NAME: crcdisk.sysDEBUG_FLR_IMAGE_TIMESTAMP: 3e80002bSTACK_COMMAND: kbBUCKET_ID: 0xc4_a0_crcdisk!VerifyOrStoreSectorCheckSum+282Followup: MachineOwner---------kd> !irp 83986f20Irp is active with 3 stacks 3 is current (= 0x83986fd8) Mdl = 8242fe98 Thread 00000000: Irp stack trace. Pending has beenreturned cmd flg cl Device File Completion-Context [0, 0] 0 0 00000000 00000000 00000000-00000000 Args: 00000000 00000000 00000000 00000000 [f, 0] 0 10 829b7030 00000000 f74f896c-8232ab78 \Driver\sym_hi crcdisk!CrcScsiReadCompletion Args: 00000000 00000000 00000000 00000000>[f, 0] 2 e0 82980018 00000000 baed3540-822a9870 Success ErrorCancel \Driver\crcdisk CLASSPNP!TransferPktComplete Args: 822a991c 00000000 00000000 01444b61kd> !devobj 829b7030Device object (829b7030) is for: sym_hi1Port2Path0Target1Lun0 \Driver\sym_hi DriverObject 8297e570Current Irp 00000000 RefCount 0 Type 00000007 Flags 00001050Dacl e12c1bd4 DevExt
829b70e8 DevObjExt 829b7d10 Dope 82941578 DevNode829b8dc8ExtensionFlags (0x80000000) DOE_DESIGNATED_FDOAttachedDevice (Upper) 82980018 \Driver\crcdiskDeviceQueue: 83a5af20 8355ef20 83b1cf20 83522f20 83622f20 83550f20 838f4f20 83be4f20 8348ef20 8344af20 82fe6f20 83b4af20 836a4f20 838c8f20 83086f20 8378cf20 83592f20 83892f20 83526f20 83b18f20 836bcf20 837e4f20 83a36f20 83b8af20 8389ef20 834eef20 83bd8f20 8343af20 83b42f20 83822f20 83bb8f20 83322f20 8393af20 82c68f20 83ad8f20 83b02f20 8340af20 83860f20 83472f20 83878f20 837f4f20 837b6f20 8348af20 8363ef20 83444f20 837d6f20 kd> !verifier 15Verify Level bb … enabled options are: special pool special irql all pool allocations checked on unload Io subsystem checking enabled Deadlock detection enabled DMA checking enabledSummary of All Verifier StatisticsRaiseIrqls 0x262AcquireSpinLocks 0xc1869Synch Executions
0x0Trims 0x2000Pool Allocations Attempted 0x1405Pool Allocations Succeeded 0x1405Pool Allocations Succeeded SpecialPool 0x1405Pool Allocations With NO TAG 0x0Pool Allocations Failed 0x0Resource Allocations Failed Deliberately 0x0Current paged pool allocations 0x0 for 00000000 bytesPeak paged pool allocations 0x1 for 00000000 bytesCurrent nonpaged pool allocations 0x3eb for 000325C4 bytesPeak nonpaged pool allocations 0x41c for 00033BC4 bytesDriver Verification ListEntry State NonPagedPool PagedPool Module82aebdc0 Loaded 000325c4 00000000 tcpip.sys----------------------------------------------- Fault injection trace log ----------------------------------------------- No fault injection traces found. ----------------------------------------------- Verifier triage
----------------------------------------------- Verifier triage is not active.kd> !verifier 1Verify Level bb … enabled options are: special pool special irql all pool allocations checked on unload Io subsystem checking enabled Deadlock detection enabled DMA checking enabledSummary of All Verifier StatisticsRaiseIrqls 0x262AcquireSpinLocks 0xc1869Synch Executions 0x0Trims 0x2000Pool Allocations Attempted 0x1405Pool Allocations Succeeded 0x1405Pool Allocations Succeeded SpecialPool 0x1405Pool Allocations With NO TAG 0x0Pool Allocations Failed 0x0Resource Allocations Failed Deliberately 0x0Current paged pool allocations 0x0 for 00000000 bytesPeak paged pool allocations 0x1 for 00000000 bytesCurrent nonpaged pool allocations 0x3eb for 000325C4 bytesPeak nonpaged pool allocations 0x41c for 00033BC4
bytesDriver Verification ListEntry State NonPagedPool PagedPool Module82aebdc0 Loaded 000325c4 00000000 tcpip.sysCan someone please help with this?ERAN


Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!

what does your filter driver do?

crcdisk is complaining that the block it read from the disk isn’t the
same as the one it had previously written … if your filter does
something like send write requests directly to the port driver
(bypassing the class driver and crcdisk) to be “efficient” then that
could be the problem.

-p


From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of eran borovik
Sent: Sunday, July 18, 2004 10:22 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] weird crash

Hi, my driver is an upper-filter for class volume.
During QA tests, driver verifier caused a blue screen. The weirdest
thing
is that the QA guy had mistakenly verified tcpip.sys instead of our
driver!!

Here is an excrept from the windbg crash analyzer. The machine is
win2003 UP.

Windows Server 2003 Kernel Version 3790 UP Free x86 compatible
Product: Server, suite: Enterprise TerminalServer SingleUserTS
Built by: 3790.srv03_rtm.030324-2048
Kernel base = 0x804de000 PsLoadedModuleList = 0x80568c08
Debug session time: Thu Jul 15 08:52:23 2004
System Uptime: 0 days 0:07:13.187
Loading Kernel Symbols


Loading unloaded module list

Loading User Symbols

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

Use !analyze -v to get detailed debugging information.

BugCheck C4, {a0, 83986f20, 829b7030, 1444b95}

Probably caused by : crcdisk.sys (
crcdisk!VerifyOrStoreSectorCheckSum+282 )

Followup: MachineOwner

*** WARNING: Unable to verify checksum for trcuser.exe
*** ERROR: Module load completed but symbols could not be loaded for
n100325.sys
kd> !analyze -v
************************************************************************
*******
*
*
* Bugcheck Analysis
*
*
*
************************************************************************
*******

DRIVER_VERIFIER_DETECTED_VIOLATION (c4)
A device driver attempting to corrupt the system has been caught.
This is
because the driver was specified in the registry as being suspect (by
the
administrator) and the kernel has enabled substantial checking of this
driver.
If the driver attempts to corrupt the system, bugchecks 0xC4, 0xC1 and
0xA will
be among the most commonly seen crashes.
Parameter 1 = 0x1000 … 0x1020 - deadlock verifier error
codes.
Typically the code is 0x1001 (deadlock detected) and
you can
issue a ‘!deadlock’ KD command to get more information.
Arguments:
Arg1: 000000a0, A CRC error was detected on the sector
(synchronously).
Arg2: 83986f20, Request Irp.
Arg3: 829b7030, Device object of the lower device.
Arg4: 01444b95, Sector number on which the CRC error was detected.

Debugging Details:

BUGCHECK_STR: 0xc4_a0

DEFAULT_BUCKET_ID: DRIVER_FAULT

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from f74f915a to 8053eec8

STACK_TEXT:
f789ece4 f74f915a 000000c4 000000a0 83986f20 nt!KeBugCheckEx+0x19
f789ed48 f74f966e 829800d0 01444b95 00006242
crcdisk!VerifyOrStoreSectorCheckSum+0x282
f789ed9c f74f83c1 829800d0 83986f20 01444b61
crcdisk!VerifyCheckSum+0x148
f789ee0c f74f899b 829800d0 83986f20 829800d0
crcdisk!CompleteXfer+0x2a7
f789ee24 8067f246 82980018 83986f20 8232ab78
crcdisk!CrcScsiReadCompletion+0x2f
f789ee48 804e4433 82980018 83986f20 f789ee8c
nt!IovpLocalCompletionRoutine+0xb2
f789ee78 8067f771 822cbc38 829f2b00 822a991c
nt!IopfCompleteRequest+0xa0
f789eee0 baee94d4 822cbc38 83986f20 f789ef28
nt!IovCompleteRequest+0x90
f789eef0 baee9f4f 822cbc38 00000001 00000000
SCSIPORT!SpCompleteRequest+0x5c
f789ef28 baee94fd 829f2b00 822cbc38 f789efa3
SCSIPORT!SpProcessCompletedRequest+0x441
f789efa4 804e47fb 829f2abc 829f2a48 00000000
SCSIPORT!ScsiPortCompletionDpc+0x2b3
f789eff4 804e48eb f4f69838 00000000 00000000 nt!KiRetireDpcList+0xc8

FOLLOWUP_IP:
crcdisk!VerifyOrStoreSectorCheckSum+282
f74f915a 8b4508 mov eax,[ebp+0x8]

FOLLOWUP_NAME: MachineOwner

SYMBOL_NAME: crcdisk!VerifyOrStoreSectorCheckSum+282

MODULE_NAME: crcdisk

IMAGE_NAME: crcdisk.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 3e80002b

STACK_COMMAND: kb

BUCKET_ID: 0xc4_a0_crcdisk!VerifyOrStoreSectorCheckSum+282

Followup: MachineOwner

kd> !irp 83986f20
Irp is active with 3 stacks 3 is current (= 0x83986fd8)
Mdl = 8242fe98 Thread 00000000: Irp stack trace. Pending has been
returned
cmd flg cl Device File Completion-Context
[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000
[f, 0] 0 10 829b7030 00000000 f74f896c-8232ab78
\Driver\sym_hi crcdisk!CrcScsiReadCompletion
Args: 00000000 00000000 00000000 00000000

[f, 0] 2 e0 82980018 00000000 baed3540-822a9870 Success Error
Cancel
\Driver\crcdisk CLASSPNP!TransferPktComplete
Args: 822a991c 00000000 00000000 01444b61
kd> !devobj 829b7030
Device object (829b7030) is for:
sym_hi1Port2Path0Target1Lun0 \Driver\sym_hi DriverObject 8297e570
Current Irp 00000000 RefCount 0 Type 00000007 Flags 00001050
Dacl e12c1bd4 DevExt 829b70e8 DevObjExt 829b7d10 Dope 82941578 DevNode
829b8dc8
ExtensionFlags (0x80000000) DOE_DESIGNATED_FDO
AttachedDevice (Upper) 82980018 \Driver\crcdisk
DeviceQueue: 83a5af20 8355ef20 83b1cf20 83522f20
83622f20 83550f20 838f4f20 83be4f20
8348ef20 8344af20 82fe6f20 83b4af20
836a4f20 838c8f20 83086f20 8378cf20
83592f20 83892f20 83526f20 83b18f20
836bcf20 837e4f20 83a36f20 83b8af20
8389ef20 834eef20 83bd8f20 8343af20
83b42f20 83822f20 83bb8f20 83322f20
8393af20 82c68f20 83ad8f20 83b02f20
8340af20 83860f20 83472f20 83878f20
837f4f20 837b6f20 8348af20 8363ef20
83444f20 837d6f20
kd> !verifier 15

Verify Level bb … enabled options are:
special pool
special irql
all pool allocations checked on unload
Io subsystem checking enabled
Deadlock detection enabled
DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x262
AcquireSpinLocks 0xc1869
Synch Executions 0x0
Trims 0x2000

Pool Allocations Attempted 0x1405
Pool Allocations Succeeded 0x1405
Pool Allocations Succeeded SpecialPool 0x1405
Pool Allocations With NO TAG 0x0
Pool Allocations Failed 0x0
Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x0 for 00000000 bytes
Peak paged pool allocations 0x1 for 00000000 bytes
Current nonpaged pool allocations 0x3eb for 000325C4 bytes
Peak nonpaged pool allocations 0x41c for 00033BC4 bytes

Driver Verification List

Entry State NonPagedPool PagedPool Module

82aebdc0 Loaded 000325c4 00000000 tcpip.sys

Fault injection trace log

No fault injection traces found.

Verifier triage

Verifier triage is not active.
kd> !verifier 1

Verify Level bb … enabled options are:
special pool
special irql
all pool allocations checked on unload
Io subsystem checking enabled
Deadlock detection enabled
DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x262
AcquireSpinLocks 0xc1869
Synch Executions 0x0
Trims 0x2000

Pool Allocations Attempted 0x1405
Pool Allocations Succeeded 0x1405
Pool Allocations Succeeded SpecialPool 0x1405
Pool Allocations With NO TAG 0x0
Pool Allocations Failed 0x0
Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x0 for 00000000 bytes
Peak paged pool allocations 0x1 for 00000000 bytes
Current nonpaged pool allocations 0x3eb for 000325C4 bytes
Peak nonpaged pool allocations 0x41c for 00033BC4 bytes

Driver Verification List

Entry State NonPagedPool PagedPool Module

82aebdc0 Loaded 000325c4 00000000 tcpip.sys

Can someone please help with this?

ERAN


Do you Yahoo!?
New and Improved Yahoo! Mail
http:/new_mail/static/efficiency.html> - Send 10MB messages! — 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</http:>

However I thought DV only enabled crcfilter if it was doing disk driver
verification. Perhaps the test person enabled this with the /disk option
even though he only specified the tcp protocol driver as a target.

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


From: Peter Wieland [mailto:xxxxx@windows.microsoft.com]
Sent: Monday, July 19, 2004 1:00 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] weird crash

what does your filter driver do?

crcdisk is complaining that the block it read from the disk isn’t the same
as the one it had previously written … if your filter does something like
send write requests directly to the port driver (bypassing the class driver
and crcdisk) to be “efficient” then that could be the problem.

-p


From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of eran borovik
Sent: Sunday, July 18, 2004 10:22 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] weird crash

Hi, my driver is an upper-filter for class volume.

During QA tests, driver verifier caused a blue screen. The weirdest

thing

is that the QA guy had mistakenly verified tcpip.sys instead of our

driver!!

Here is an excrept from the windbg crash analyzer. The machine is

win2003 UP.

Windows Server 2003 Kernel Version 3790 UP Free x86 compatible

Product: Server, suite: Enterprise TerminalServer SingleUserTS

Built by: 3790.srv03_rtm.030324-2048

Kernel base = 0x804de000 PsLoadedModuleList = 0x80568c08

Debug session time: Thu Jul 15 08:52:23 2004

System Uptime: 0 days 0:07:13.187

Loading Kernel Symbols


Loading unloaded module list

Loading User Symbols

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

*

*

* Bugcheck Analysis

*

*

*

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

Use !analyze -v to get detailed debugging information.

BugCheck C4, {a0, 83986f20, 829b7030, 1444b95}

Probably caused by : crcdisk.sys (

crcdisk!VerifyOrStoreSectorCheckSum+282 )

Followup: MachineOwner


*** WARNING: Unable to verify checksum for trcuser.exe

*** ERROR: Module load completed but symbols could not be loaded for

n100325.sys

kd> !analyze -v

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

*

*

* Bugcheck Analysis

*

*

*

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

DRIVER_VERIFIER_DETECTED_VIOLATION (c4)

A device driver attempting to corrupt the system has been caught.

This is

because the driver was specified in the registry as being suspect (by

the

administrator) and the kernel has enabled substantial checking of this

driver.

If the driver attempts to corrupt the system, bugchecks 0xC4, 0xC1 and

0xA will

be among the most commonly seen crashes.

Parameter 1 = 0x1000 … 0x1020 - deadlock verifier error

codes.

Typically the code is 0x1001 (deadlock detected) and

you can

issue a ‘!deadlock’ KD command to get more information.

Arguments:

Arg1: 000000a0, A CRC error was detected on the sector

(synchronously).

Arg2: 83986f20, Request Irp.

Arg3: 829b7030, Device object of the lower device.

Arg4: 01444b95, Sector number on which the CRC error was detected.

Debugging Details:


BUGCHECK_STR: 0xc4_a0

DEFAULT_BUCKET_ID: DRIVER_FAULT

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from f74f915a to 8053eec8

STACK_TEXT:

f789ece4 f74f915a 000000c4 000000a0 83986f20 nt!KeBugCheckEx+0x19

f789ed48 f74f966e 829800d0 01444b95 00006242

crcdisk!VerifyOrStoreSectorCheckSum+0x282

f789ed9c f74f83c1 829800d0 83986f20 01444b61

crcdisk!VerifyCheckSum+0x148

f789ee0c f74f899b 829800d0 83986f20 829800d0

crcdisk!CompleteXfer+0x2a7

f789ee24 8067f246 82980018 83986f20 8232ab78

crcdisk!CrcScsiReadCompletion+0x2f

f789ee48 804e4433 82980018 83986f20 f789ee8c

nt!IovpLocalCompletionRoutine+0xb2

f789ee78 8067f771 822cbc38 829f2b00 822a991c

nt!IopfCompleteRequest+0xa0

f789eee0 baee94d4 822cbc38 83986f20 f789ef28

nt!IovCompleteRequest+0x90

f789eef0 baee9f4f 822cbc38 00000001 00000000

SCSIPORT!SpCompleteRequest+0x5c

f789ef28 baee94fd 829f2b00 822cbc38 f789efa3

SCSIPORT!SpProcessCompletedRequest+0x441

f789efa4 804e47fb 829f2abc 829f2a48 00000000

SCSIPORT!ScsiPortCompletionDpc+0x2b3

f789eff4 804e48eb f4f69838 00000000 00000000 nt!KiRetireDpcList+0xc8

FOLLOWUP_IP:

crcdisk!VerifyOrStoreSectorCheckSum+282

f74f915a 8b4508 mov eax,[ebp+0x8]

FOLLOWUP_NAME: MachineOwner

SYMBOL_NAME: crcdisk!VerifyOrStoreSectorCheckSum+282

MODULE_NAME: crcdisk

IMAGE_NAME: crcdisk.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 3e80002b

STACK_COMMAND: kb

BUCKET_ID: 0xc4_a0_crcdisk!VerifyOrStoreSectorCheckSum+282

Followup: MachineOwner


kd> !irp 83986f20

Irp is active with 3 stacks 3 is current (= 0x83986fd8)

Mdl = 8242fe98 Thread 00000000: Irp stack trace. Pending has been

returned

cmd flg cl Device File Completion-Context

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

Args: 00000000 00000000 00000000 00000000

[f, 0] 0 10 829b7030 00000000 f74f896c-8232ab78

\Driver\sym_hi crcdisk!CrcScsiReadCompletion

Args: 00000000 00000000 00000000 00000000

[f, 0] 2 e0 82980018 00000000 baed3540-822a9870 Success Error

Cancel

\Driver\crcdisk CLASSPNP!TransferPktComplete

Args: 822a991c 00000000 00000000 01444b61

kd> !devobj 829b7030

Device object (829b7030) is for:

sym_hi1Port2Path0Target1Lun0 \Driver\sym_hi DriverObject 8297e570

Current Irp 00000000 RefCount 0 Type 00000007 Flags 00001050

Dacl e12c1bd4 DevExt 829b70e8 DevObjExt 829b7d10 Dope 82941578 DevNode

829b8dc8

ExtensionFlags (0x80000000) DOE_DESIGNATED_FDO

AttachedDevice (Upper) 82980018 \Driver\crcdisk

DeviceQueue: 83a5af20 8355ef20 83b1cf20 83522f20

83622f20 83550f20 838f4f20 83be4f20

8348ef20 8344af20 82fe6f20 83b4af20

836a4f20 838c8f20 83086f20 8378cf20

83592f20 83892f20 83526f20 83b18f20

836bcf20 837e4f20 83a36f20 83b8af20

8389ef20 834eef20 83bd8f20 8343af20

83b42f20 83822f20 83bb8f20 83322f20

8393af20 82c68f20 83ad8f20 83b02f20

8340af20 83860f20 83472f20 83878f20

837f4f20 837b6f20 8348af20 8363ef20

83444f20 837d6f20

kd> !verifier 15

Verify Level bb … enabled options are:

special pool

special irql

all pool allocations checked on unload

Io subsystem checking enabled

Deadlock detection enabled

DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x262

AcquireSpinLocks 0xc1869

Synch Executions 0x0

Trims 0x2000

Pool Allocations Attempted 0x1405

Pool Allocations Succeeded 0x1405

Pool Allocations Succeeded SpecialPool 0x1405

Pool Allocations With NO TAG 0x0

Pool Allocations Failed 0x0

Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x0 for 00000000 bytes

Peak paged pool allocations 0x1 for 00000000 bytes

Current nonpaged pool allocations 0x3eb for 000325C4 bytes

Peak nonpaged pool allocations 0x41c for 00033BC4 bytes

Driver Verification List

Entry State NonPagedPool PagedPool Module

82aebdc0 Loaded 000325c4 00000000 tcpip.sys


Fault injection trace log


No fault injection traces found.


Verifier triage


Verifier triage is not active.

kd> !verifier 1

Verify Level bb … enabled options are:

special pool

special irql

all pool allocations checked on unload

Io subsystem checking enabled

Deadlock detection enabled

DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x262

AcquireSpinLocks 0xc1869

Synch Executions 0x0

Trims 0x2000

Pool Allocations Attempted 0x1405

Pool Allocations Succeeded 0x1405

Pool Allocations Succeeded SpecialPool 0x1405

Pool Allocations With NO TAG 0x0

Pool Allocations Failed 0x0

Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x0 for 00000000 bytes

Peak paged pool allocations 0x1 for 00000000 bytes

Current nonpaged pool allocations 0x3eb for 000325C4 bytes

Peak nonpaged pool allocations 0x41c for 00033BC4 bytes

Driver Verification List

Entry State NonPagedPool PagedPool Module

82aebdc0 Loaded 000325c4 00000000 tcpip.sys

Can someone please help with this?

ERAN


Do you Yahoo!?
New
http:_mail/static/efficiency.html> and Improved Yahoo! Mail - Send 10MB messages!
— 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
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</http:>

Hi,
the Crcdisk keeps crashing my tests machines so I tried deeping digger into it.
My volume filter driver doesn’t sent requests directly to the port driver, however
it reads the user data by using MmGetSystemAdderssForMdlSafe.
To be efficient, the read operation occurs concurrenlty with the I/O request that is being sent to the device. Obviously, I synchronise between the I/O completion and my read operation to avoid races in which I read after the IRP is completed.
Can such a read operation influence what is being written to the storage device?
Since the pages are already locked in I didn’t see any problem with this but I am not that big in hardware so any help in this department is greatly appreciated.

Here is my previous letter in this issue:

Hi, my driver is an upper-filter for class volume.
During QA tests, driver verifier caused a blue screen. The weirdest
thing
is that the QA guy had mistakenly verified tcpip.sys instead of our
driver!!

Here is an excrept from the windbg crash analyzer. The machine is
win2003 UP.

Windows Server 2003 Kernel Version 3790 UP Free x86 compatible
Product: Server, suite: Enterprise TerminalServer SingleUserTS
Built by: 3790.srv03_rtm.030324-2048
Kernel base = 0x804de000 PsLoadedModuleList = 0x80568c08
Debug session time: Thu Jul 15 08:52:23 2004
System Uptime: 0 days 0:07:13.187
Loading Kernel Symbols


Loading unloaded module list

Loading User Symbols

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

Use !analyze -v to get detailed debugging information.

BugCheck C4, {a0, 83986f20, 829b7030, 1444b95}

Probably caused by : crcdisk.sys (
crcdisk!VerifyOrStoreSectorCheckSum+282 )

Followup: MachineOwner

*** WARNING: Unable to verify checksum for trcuser.exe
*** ERROR: Module load completed but symbols could not be loaded for
n100325.sys
kd> !analyze -v
************************************************************************
*******
*
*
* Bugcheck Analysis
*
*
*
************************************************************************
*******

DRIVER_VERIFIER_DETECTED_VIOLATION (c4)
A device driver attempting to corrupt the system has been caught.
This is
because the driver was specified in the registry as being suspect (by
the
administrator) and the kernel has enabled substantial checking of this
driver.
If the driver attempts to corrupt the system, bugchecks 0xC4, 0xC1 and
0xA will
be among the most commonly seen crashes.
Parameter 1 = 0x1000 … 0x1020 - deadlock verifier error
codes.
Typically the code is 0x1001 (deadlock detected) and
you can
issue a ‘!deadlock’ KD command to get more information.
Arguments:
Arg1: 000000a0, A CRC error was detected on the sector
(synchronously).
Arg2: 83986f20, Request Irp.
Arg3: 829b7030, Device object of the lower device.
Arg4: 01444b95, Sector number on which the CRC error was detected.

Debugging Details:

BUGCHECK_STR: 0xc4_a0

DEFAULT_BUCKET_ID: DRIVER_FAULT

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from f74f915a to 8053eec8

STACK_TEXT:
f789ece4 f74f915a 000000c4 000000a0 83986f20 nt!KeBugCheckEx+0x19
f789ed48 f74f966e 829800d0 01444b95 00006242
crcdisk!VerifyOrStoreSectorCheckSum+0x282
f789ed9c f74f83c1 829800d0 83986f20 01444b61
crcdisk!VerifyCheckSum+0x148
f789ee0c f74f899b 829800d0 83986f20 829800d0
crcdisk!CompleteXfer+0x2a7
f789ee24 8067f246 82980018 83986f20 8232ab78
crcdisk!CrcScsiReadCompletion+0x2f
f789ee48 804e4433 82980018 83986f20 f789ee8c
nt!IovpLocalCompletionRoutine+0xb2
f789ee78 8067f771 822cbc38 829f2b00 822a991c
nt!IopfCompleteRequest+0xa0
f789eee0 baee94d4 822cbc38 83986f20 f789ef28
nt!IovCompleteRequest+0x90
f789eef0 baee9f4f 822cbc38 00000001 00000000
SCSIPORT!SpCompleteRequest+0x5c
f789ef28 baee94fd 829f2b00 822cbc38 f789efa3
SCSIPORT!SpProcessCompletedRequest+0x441
f789efa4 804e47fb 829f2abc 829f2a48 00000000
SCSIPORT!ScsiPortCompletionDpc+0x2b3
f789eff4 804e48eb f4f69838 00000000 00000000 nt!KiRetireDpcList+0xc8

FOLLOWUP_IP:
crcdisk!VerifyOrStoreSectorCheckSum+282
f74f915a 8b4508 mov eax,[ebp+0x8]

FOLLOWUP_NAME: MachineOwner

SYMBOL_NAME: crcdisk!VerifyOrStoreSectorCheckSum+282

MODULE_NAME: crcdisk

IMAGE_NAME: crcdisk.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 3e80002b

STACK_COMMAND: kb

BUCKET_ID: 0xc4_a0_crcdisk!VerifyOrStoreSectorCheckSum+282

Followup: MachineOwner

kd> !irp 83986f20
Irp is active with 3 stacks 3 is current (= 0x83986fd8)
Mdl = 8242fe98 Thread 00000000: Irp stack trace. Pending has been
returned
cmd flg cl Device File Completion-Context
[0, 0] 0 0 00000000 00000000 00000000-00000000

Args: 00000000 00000000 00000000 00000000
[f, 0] 0 10 829b7030 00000000 f74f896c-8232ab78
\Driver\sym_hi crcdisk!CrcScsiReadCompletion
Args: 00000000 00000000 00000000 00000000

[f, 0] 2 e0 82980018 00000000 baed3540-822a9870 Success Error
Cancel
\Driver\crcdisk CLASSPNP!TransferPktComplete
Args: 822a991c 00000000 00000000 01444b61
kd> !devobj 829b7030
Device object (829b7030) is for:
sym_hi1Port2Path0Target1Lun0 \Driver\sym_hi DriverObject 8297e570
Current Irp 00000000 RefCount 0 Type 00000007 Flags 00001050
Dacl e12c1bd4 DevExt 829b70e8 DevObjExt 829b7d10 Dope 82941578 DevNode
829b8dc8
ExtensionFlags (0x80000000) DOE_DESIGNATED_FDO
AttachedDevice (Upper) 82980018 \Driver\crcdisk
DeviceQueue: 83a5af20 8355ef20 83b1cf20 83522f20
83622f20 83550f20 838f4f20 83be4f20
8348ef20 8344af20 82fe6f20 83b4af20
836a4f20 838c8f20 83086f20 8378cf20
83592f20 83892f20 83526f20 83b18f20
836bcf20 837e4f20 83a36f20 83b8af20
8389ef20 834eef20 83bd8f20 8343af20
83b42f20 83822f20 83bb8f20 83322f20
8393af20 82c68f20 83ad8f20 83b02f20
8340af20 83860f20 83472f20 83878f20
837f4f20 837b6f20 8348af20 8363ef20
83444f20 837d6f20
kd> !verifier 15

Verify Level bb … enabled options are:
special pool
special irql
all pool allocations checked on unload
Io subsystem checking enabled
Deadlock detection enabled
DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x262
AcquireSpinLocks 0xc1869
Synch Executions 0x0
Trims 0x2000

Pool Allocations Attempted 0x1405
Pool Allocations Succeeded 0x1405
Pool Allocations Succeeded SpecialPool 0x1405
Pool Allocations With NO TAG 0x0
Pool Allocations Failed 0x0
Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x0 for 00000000 bytes
Peak paged pool allocations 0x1 for 00000000 bytes
Current nonpaged pool allocations 0x3eb for 000325C4 bytes
Peak nonpaged pool allocations 0x41c for 00033BC4 bytes

Driver Verification List

Entry State NonPagedPool PagedPool Module

82aebdc0 Loaded 000325c4 00000000 tcpip.sys

Fault injection trace log

No fault injection traces found.

Verifier triage

Verifier triage is not active.
kd> !verifier 1

Verify Level bb … enabled options are:
special pool
special irql
all pool allocations checked on unload
Io subsystem checking enabled
Deadlock detection enabled
DMA checking enabled

Summary of All Verifier Statistics

RaiseIrqls 0x262
AcquireSpinLocks 0xc1869
Synch Executions 0x0
Trims 0x2000

Pool Allocations Attempted 0x1405
Pool Allocations Succeeded 0x1405
Pool Allocations Succeeded SpecialPool 0x1405
Pool Allocations With NO TAG 0x0
Pool Allocations Failed 0x0
Resource Allocations Failed Deliberately 0x0

Current paged pool allocations 0x0 for 00000000 bytes
Peak paged pool allocations 0x1 for 00000000 bytes
Current nonpaged pool allocations 0x3eb for 000325C4 bytes
Peak nonpaged pool allocations 0x41c for 00033BC4 bytes

Driver Verification List

Entry State NonPagedPool PagedPool Module

82aebdc0 Loaded 000325c4 00000000 tcpip.sys

Can someone please help with this?

ERAN


Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com