解决Atheros蓝牙导致Windows 7 64位蓝屏

刚安装了Windows7 64位系统,让人痛苦的是新系统以大概每天一次的概率随机发生蓝屏。终于我决定自己找到问题根源。系统在发生问题的时候,会产生.dmp文件。余下的任务就是分析.dmp文件

1. 安装WinDbg 64位

2. 选择网速比较快的时候

3. 用WinDbg打开.dmp文件

输入命令

.sympath SRV*c:\symbols*http://msdl.microsoft.com/download/symbols

含义是下载调试符号文件到本地c:\symbols目录

0: kd> .reload /f nt
SYMSRV:  ntkrnlmp.pdb from http://msdl.microsoft.com/download/symbols: 2676649 bytes - copied         
DBGHELP: nt - public symbols  
         c:\symbols\ntkrnlmp.pdb\F69D000687EC491E87FC0425D4D378AC2\ntkrnlmp.pdb

开始分析问题

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

DRIVER_POWER_STATE_FAILURE (9f)
A driver is causing an inconsistent power state.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an Irp for too long a time
Arg2: fffffa8008c81060, Physical Device Object of the stack
Arg3: fffff80005ce93d8, Functional Device Object of the stack
Arg4: fffffa8004747bd0, The blocked IRP

Debugging Details:
------------------


DRVPOWERSTATE_SUBCODE:  3

IMAGE_NAME:  usbhub.sys

DEBUG_FLR_IMAGE_TIMESTAMP:  52954dd0

MODULE_NAME: usbhub

FAULTING_MODULE: fffff88005f3f000 usbhub

CUSTOMER_CRASH_COUNT:  1

DEFAULT_BUCKET_ID:  VISTA_DRIVER_FAULT

BUGCHECK_STR:  0x9F

PROCESS_NAME:  System

CURRENT_IRQL:  2

STACK_TEXT:  
fffff800`05ce9388 fffff800`044f58d2 : 00000000`0000009f 00000000`00000003 fffffa80`08c81060 fffff800`05ce93d8 : nt!KeBugCheckEx
fffff800`05ce9390 fffff800`0449085c : fffff800`05ce9520 fffff800`05ce9520 00000000`00000000 00000000`00000001 : nt! ?? ::FNODOBFM::`string'+0x33af0
fffff800`05ce9430 fffff800`044906f6 : fffffa80`0a24c168 fffffa80`0a24c168 00000000`00000000 00000000`00000000 : nt!KiProcessTimerDpcTable+0x6c
fffff800`05ce94a0 fffff800`044905de : 00000024`67b9bdc5 fffff800`05ce9b18 00000000`000f4b37 fffff800`04603968 : nt!KiProcessExpiredTimerList+0xc6
fffff800`05ce9af0 fffff800`044903c7 : 0000000c`6974cac8 0000000c`000f4b37 0000000c`6974cab0 00000000`00000037 : nt!KiTimerExpiration+0x1be
fffff800`05ce9b90 fffff800`0447d8ca : fffff800`04600e80 fffff800`0460ecc0 00000000`00000001 fffff880`00000000 : nt!KiRetireDpcList+0x277
fffff800`05ce9c40 00000000`00000000 : fffff800`05cea000 fffff800`05ce4000 fffff800`05ce9c00 00000000`00000000 : nt!KiIdleLoop+0x5a


STACK_COMMAND:  kb

FOLLOWUP_NAME:  MachineOwner

FAILURE_BUCKET_ID:  X64_0x9F_3_btfilter_IMAGE_usbhub.sys

BUCKET_ID:  X64_0x9F_3_btfilter_IMAGE_usbhub.sys

Followup: MachineOwner
---------
开始分析IRP
0: kd> !irp fffffa8004747bd0
Irp is active with 12 stacks 10 is current (= 0xfffffa8004747f28)
 No Mdl: No System Buffer: 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
 [  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    

			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    

			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    

			Args: 00000000 00000000 00000000 00000000
 [ 16, 0]   0  0 fffffa8008c81060 00000000 fffff88008c384a0-fffffa8008c1d1a0    
	       \Driver\usbhub	btfilter
			Args: 00000000 00000000 00000000 00000002
>[ 16, 2]   0 e1 fffffa8008c1d050 00000000 fffff880085503d0-00000000 Success Error Cancel pending
	       \Driver\BtFilter	bthport!DevicePowerUpComplete
			Args: 00041100 00000001 00000001 00000002
 [ 16, 2]   0 e1 fffffa8008d4eac0 00000000 fffff80004471710-fffffa80043e0af0 Success Error Cancel pending
	       \Driver\BTHUSB	nt!IopUnloadSafeCompletion
			Args: 00041100 00000001 00000001 00000002
 [  0, 0]   0  0 00000000 00000000 00000000-fffffa8009ebf3b0    

			Args: 00000000 00000000 00000000 00000000
看看btfilter.sys什么来头
0: kd> lmvm btfilter
start             end                 module name
fffff880`08c30000 fffff880`08c77000   btfilter T (no symbols)           
    Loaded symbol image file: btfilter.sys
    Image path: \SystemRoot\system32\DRIVERS\btfilter.sys
    Image name: btfilter.sys
    Timestamp:        Tue Nov 23 10:43:21 2010 (4CEB2A49)
    CheckSum:         00047EE6
    ImageSize:        00047000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4
0: kd> 
start             end                 module name
fffff880`08c30000 fffff880`08c77000   btfilter T (no symbols)           
    Loaded symbol image file: btfilter.sys
    Image path: \SystemRoot\system32\DRIVERS\btfilter.sys
    Image name: btfilter.sys
    Timestamp:        Tue Nov 23 10:43:21 2010 (4CEB2A49)
    CheckSum:         00047EE6
    ImageSize:        00047000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4

可以看出问题的是btfiler.sys驱动,而这个驱动正是Atheros蓝牙驱动。我找遍了整个网络,只有HP发布补丁解决了这个问题

http://h10025.www1.hp.com/ewfrf/wc/softwareDownloadIndex?cc=us&lc=en&softwareitem=ob-101174-1


你可能感兴趣的:(解决Atheros蓝牙导致Windows 7 64位蓝屏)