Now i want to synchronize DPC & ISR.In kmdf serial driver
"WdfInterruptSynchronize" function is used for synchronization.Since it
requires HW informations, i cannot use this function in my driver.My driver
is working in dispatch_level.
Is there anyother function for synchronizing bus interrupts.....
Can anyone please help me to solve this problem.
Regards
Shivaprasad
Just use the usual spinlock.
--
Maxim S. Shatskih
Windows DDK MVP
ma...@storagecraft.com
http://www.storagecraft.com
With that driver code if i try to write any data to sdiouart,PC is crashed
and bluesceen appeared.Read alone is working fine.
Here is the dumplog.....
This is crashing becouse of some spinlocks inside kmdf framework. Can
anybody please tell me waht are all the spin locks are used in kmdf serial
driver and why it is used???
---------------------------------------------------------------------------------
Use !analyze -v to get detailed debugging information.
BugCheck 1000008E, {80000003, 804e3b14, a971cb3c, 0}
Probably caused by : wdf01000.sys ( wdf01000!FxCallbackSpinLock::Unlock+d )
Followup: MachineOwner
---------
kd> !analyze -v
*******************************************************************************
*
*
* Bugcheck Analysis
*
*
*
*******************************************************************************
KERNEL_MODE_EXCEPTION_NOT_HANDLED_M (1000008e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Some common problems are exception code 0x80000003. This means a hard
coded breakpoint or assertion was hit, but this system was booted
/NODEBUG. This is not supposed to happen as developers should never have
hardcoded breakpoints in retail code, but ...
If this happens, make sure a debugger gets connected, and the
system is booted /DEBUG. This will let us see why this breakpoint is
happening.
Arguments:
Arg1: 80000003, The exception code that was not handled
Arg2: 804e3b14, The address that the exception occurred at
Arg3: a971cb3c, Trap Frame
Arg4: 00000000
Debugging Details:
------------------
EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - One or more arguments
are invalid
FAULTING_IP:
nt!DbgBreakPoint+0
804e3b14 cc int 3
TRAP_FRAME: a971cb3c -- (.trap 0xffffffffa971cb3c)
ErrCode = 00000000
eax=00000000 ebx=00000000 ecx=000049e0 edx=00000000 esi=85bbe6f8 edi=85cd77d8
eip=804e3b15 esp=a971cbb0 ebp=a971cbb8 iopl=0 nv up ei pl nz na po nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000202
nt!DbgBreakPoint+0x1:
804e3b15 c3 ret
Resetting default scope
CUSTOMER_CRASH_COUNT: 1
DEFAULT_BUCKET_ID: DRIVER_FAULT
BUGCHECK_STR: 0x8E
PROCESS_NAME: Terminal.exe
LAST_CONTROL_TRANSFER: from a96563d9 to 804e3b15
STACK_TEXT:
a971cbac a96563d9 85cd78bc a971cbcc a965dea4 nt!DbgBreakPoint+0x1
a971cbb8 a965dea4 85cd7800 85caa7a0 85cd7800
wdf01000!FxCallbackSpinLock::Unlock+0xd
a971cbcc a9660afe 7a328820 7a355858 00000001
wdf01000!FxIoQueueIoRead::Invoke+0x38
a971cbf4 a966313c 7a355858 85caa7a0 85cd77d8
wdf01000!FxIoQueue::DispatchRequestToDriver+0x2bb
a971cc10 a96641c6 85cd7700 00000000 85bcdd38
wdf01000!FxIoQueue::DispatchEvents+0x3be
a971cc30 a9665f14 85caa7a0 85b805b8 861054f8
wdf01000!FxIoQueue::QueueRequest+0x1ec
a971cc54 a96553ab 85d0a338 a971cc84 804e3d77 wdf01000!FxPkgIo::Dispatch+0x27d
a971cc60 804e3d77 85c0e718 85d0a338 806ee2d0 wdf01000!FxDevice::Dispatch+0x7f
a971cc70 8056a9ab 85d0a3f0 0012f9cc 85d0a338 nt!IopfCallDriver+0x31
a971cc84 8057a510 85c0e718 85d0a338 8610c028 nt!IopSynchronousServiceTail+0x60
a971cd38 804df06b 00000058 00000000 00000000 nt!NtWriteFile+0x602
a971cd38 7c90eb94 00000058 00000000 00000000 nt!KiFastCallEntry+0xf8
WARNING: Frame IP not in any known module. Following frames may be wrong.
0012f820 00000000 00000000 00000000 00000000 0x7c90eb94
STACK_COMMAND: kb
FOLLOWUP_IP:
wdf01000!FxCallbackSpinLock::Unlock+d
a96563d9 8b460c mov eax,dword ptr [esi+0Ch]
SYMBOL_STACK_INDEX: 1
SYMBOL_NAME: wdf01000!FxCallbackSpinLock::Unlock+d
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: wdf01000
IMAGE_NAME: wdf01000.sys
DEBUG_FLR_IMAGE_TIMESTAMP: 49431528
FAILURE_BUCKET_ID: 0x8E_wdf01000!FxCallbackSpinLock::Unlock+d
BUCKET_ID: 0x8E_wdf01000!FxCallbackSpinLock::Unlock+d
Followup: MachineOwner
------------------------------------------------------------------
d
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:F8FE09D6-E44F-496F...@microsoft.com...
I followed following procedure before giving wdfkd.wdflogdump the command.
1.Symbol path:
C:\WINDOWS\Symbols;C:\WinDDK\6001.18002\src\kmdf\sdiouart\objchk_wxp_x86\i386\wdfserial.pdb;SRV*c:\Symbols*http://msdl.microsoft.com/download/symbols;C:\WinDDK\7000.0.winmain_win7beta.081212-1400\src\kernel\sdiouart\objchk_wxp_x86\i386
2.Source file path: C:\WinDDK\6001.18002\src\kmdf\sdiouart
3.Image Path:C:\WinDDK\6001.18002\src\kmdf\sdiouart\objchk_wxp_x86\i386
Opend crash dump file in WinDbg
4.!load C:\Program Files\Debugging Tools for Windows (x86)\winext\wdfkd.dll
5.!C:\WinDDK\6001.18002\bin\x86\wdfkd.wdftmffile
C:\WinDDK\6001.18002\tools\tracing\i386\wdf01007.tmf
After giving these i have checked loaded modules & symbols,
kd> lm
start end module name
804d7000 806eb780 nt (pdb symbols)
c:\Symbols\ntoskrnl.pdb\8592B6763F34476B9BB560395A383F962\ntoskrnl.pdb
806ec000 8070c380 hal (pdb symbols)
c:\Symbols\halaacpi.pdb\861E03E9E71D469BB4E544F22FD14C821\halaacpi.pdb
a9631000 a96a0000 wdf01000 # (pdb symbols)
c:\Symbols\Wdf01000.pdb\703206214369438793052FDDD0B44D6D1\Wdf01000.pdb
a96a0000 a96ba300 sdio2com T (no symbols)
a96bb000 a96dd000 RDPWD (pdb symbols)
c:\Symbols\RDPWD.pdb\2371F6731A0B48839290F22CF2F6081B1\RDPWD.pdb
a97a5000 a97e5380 HTTP (pdb symbols)
c:\Symbols\http.pdb\98F1C36330524B0EA4D1FC9ED5BBEFEA1\http.pdb
a99a6000 a99b4000 WDFLDR # (pdb symbols)
c:\Symbols\wdfldr.pdb\B43266A98DE44B8DAD1BE25B960B4B711\wdfldr.pdb
a9c96000 a9ce8180 srv (pdb symbols)
c:\Symbols\srv.pdb\8A30C8312B30482F8819CA767AC92F792\srv.pdb
a9dd9000 a9e05400 mrxdav (pdb symbols)
c:\Symbols\mrxdav.pdb\39E18188AC3942C7B4CA8F4ABC3B15BF1\mrxdav.pdb
6.!C:\WinDDK\6001.18002\bin\x86\wdfkd.wdflogdump sdio2com
Trace searchpath is:
Trace format prefix is: %7!u!: %!FUNC! -
TMF file used for formatting IFR log is:
C:\WinDDK\6001.18002\tools\tracing\i386\wdf01007.tmf
hint: Are symbols available for this driver?
hint: Did you exclude the .sys extension in the drivername parameter?
Could not find sdio2com in wdfldr client list
Why im getting like this ???
!lmi sdio2com
say?
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:E30954B4-4114-40F8...@microsoft.com...
!lmi sdio2com
say?
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:E30954B4-4114-40F8...@microsoft.com...
I have included sdio2com.pdb file path in the symbol path.
d
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:6E5C19C0-8F7A-4576...@microsoft.com...
"Doron Holan [MSFT]" wrote:
!lmi sdio2com is giving following .....
------------------------------------------------------------------
!lmi sdio2com
Loaded Module Info: [sdio2com]
Module: sdio2com
Base Address: a9654000
Image Name: sdio2com.sys
Machine Type: 332 (I386)
Time Stamp: 4a02f8c3 Thu May 07 20:35:39 2009
Size: 1a500
CheckSum: 296bb
Characteristics: 102
Debug Data Dirs: Type Size VA Pointer
CODEVIEW 60, 11bc8, 11bc8 RSDS - GUID:
{CD1ACA49-0FEB-4788-8A6B-3A68F48AB4E7}
Age: 1, Pdb:
c:\winddk\6001.18002\src\kmdf\sdiouart\objchk_wxp_x86\i386\sdio2com.pdb
Image Type: FILE - Image read successfully from debugger.
sdio2com.sys
Symbol Type: PDB - Symbols loaded successfully from image header.
c:\winddk\6001.18002\src\kmdf\sdiouart\objchk_wxp_x86\i386\sdio2com.pdb
Compiler: Resource - front end [0.0 bld 0] - back end [8.0 bld 50727]
Load Report: private symbols & lines, not source indexed
c:\winddk\6001.18002\src\kmdf\sdiouart\objchk_wxp_x86\i386\sdio2com.pdb
------------------------------------------------------------------------------
If i give !wdfkd.wdflogdump sdio2com command itz showing following...
kd>!wdfkd.wdflogdump sdio2com
Trace searchpath is:
Trace format prefix is: %7!u!: %!FUNC! -
hint: Are symbols available for this driver?
hint: Did you exclude the .sys extension in the drivername parameter?
Could not find sdio2com in wdfldr client list
how can i dumplog..
d
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:65FE87B7-3F32-455A...@microsoft.com...
ImageName Version WdfGlobals FxGlobals ImageAddress ImageSize
<missing name> v0.0(0000) 0x0 0x0 0x0 0x00000000
----------------------------------
Total: 1 library loaded
kd> !lmi wdf01000
Loaded Module Info: [wdf01000]
Module: wdf01000
Base Address: a95d8000
Image Name: wdf01000.sys
Machine Type: 332 (I386)
Time Stamp: 47919015 Sat Jan 19 11:22:21 2008
Size: 7c000
CheckSum: 831d4
Characteristics: 102
Debug Data Dirs: Type Size VA Pointer
CODEVIEW 25, 6daa0, 6cea0 RSDS - GUID:
{0E5C347D-FB5A-4B1D-B160-6D336048C5D1}
Age: 1, Pdb: Wdf01000.pdb
Image Type: FILE - Image read successfully from debugger.
wdf01000.sys
Symbol Type: PDB - Symbols loaded successfully from symbol server.
c:\Symbols\Wdf01000.pdb\0E5C347DFB5A4B1DB1606D336048C5D11\Wdf01000.pdb
Load Report: public symbols , not source indexed
c:\Symbols\Wdf01000.pdb\0E5C347DFB5A4B1DB1606D336048C5D11\Wdf01000.pdb
kd> !lmi wdfldr
Loaded Module Info: [wdfldr]
Module: WDFLDR
Base Address: a99d2000
Image Name: WDFLDR.SYS
Machine Type: 332 (I386)
Time Stamp: 4943150a Sat Dec 13 07:21:06 2008
Size: e000
CheckSum: 183c3
Characteristics: 102
Debug Data Dirs: Type Size VA Pointer
CODEVIEW 23, 7208, 5a08 RSDS - GUID:
{B43266A9-8DE4-4B8D-AD1B-E25B960B4B71}
Age: 1, Pdb: wdfldr.pdb
Image Type: FILE - Image read successfully from debugger.
WDFLDR.SYS
Symbol Type: PDB - Symbols loaded successfully from symbol server.
c:\Symbols\wdfldr.pdb\B43266A98DE44B8DAD1BE25B960B4B711\wdfldr.pdb
Load Report: public symbols , not source indexed
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:C15347DB-474B-4824...@microsoft.com...
Will that be a problem.???
show all of the symbols for each binary?
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"shivaprasad" <shiva...@discussions.microsoft.com> wrote in message
news:A8EAFFE5-E71F-47A1...@microsoft.com...