Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 2개 있습니다.)

Windows Phone 연결 상태에서 DRIVER POWER STATE FAILURE 블루 스크린 뜨는 현상

언제부턴가, BSOD가 가끔씩 뜨기 시작했습니다. 윈도우 7 설치 이후로 거의 본 적이 없어서 의외였는데요. 몇 번의 BSOD를 겪으면서 한가지 공통점을 발견하기 시작했습니다. 즉, 윈도우 폰이 연결된 상태에서만 그랬던 것입니다.

BSOD 화면의 "DRIVER POWER STATE FAILURE"라는 오류 메시지를 보면서, 윈도우 폰이 충전되는 중에 노트북의 전원이 불안정해져서 그런가 보다 싶었습니다.

음... 하지만, 이렇게 이해해 주는 것도 한두번이지... 자꾸만 시스템이 비정상 종료되다 보니 슬슬 ^^; 참을성이 바닥을 보이게 됩니다.

마침내, 오늘 다시 그런 현상을 경험해서 이번에는 단서를 좀 찾아봐야지 하는 생각이 들었는데요.

보통, 윈도우 7에서 BSOD로 인해 강제 재부팅이 되고 나면 다음과 같은 식의 오류 보고 창이 뜹니다.

wp7_driver_power_state_failure_bsod_1.png

Problem signature:
  Problem Event Name:   BlueScreen
  OS Version:   6.1.7601.2.1.0.256.4
  Locale ID:    1042

Additional information about the problem:
  BCCode:   9f
  BCP1: 0000000000000003
  BCP2: FFFFFA800ED5C060
  BCP3: FFFFF80004619518
  BCP4: FFFFFA800D1DC010
  OS Version:   6_1_7601
  Service Pack: 1_0
  Product:  256_1

Files that help describe the problem:
  C:\Windows\Minidump\051512-51558-01.dmp
  C:\Users\SeongTae Jeong\AppData\Local\Temp\WER-178808-0.sysdata.xml

Read our privacy statement online:
  http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-US\erofflps.txt

그리고, 그 화면에서는 위에서와 같이 미니 덤프 파일(051512-51558-01.dmp) 경로를 확인할 수 있는데요.

우선, _NT_SYMBOL_PATH를 맞춰주고 windbg를 실행한 후 "File" / "Open Crash Dump..." 메뉴를 선택하여 해당 미니 덤프 파일을 열었습니다.

Microsoft (R) Windows Debugger Version 6.12.0002.633 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Windows\Minidump\051512-51558-01.dmp]
Mini Kernel Dump File: Only registers and stack trace are available

DbsSplayTreeRangeMap::Add: ignoring zero-sized range at ?fffff8a0`06d66952?
DbsSplayTreeRangeMap::Add: ignoring zero-sized range at ?fffff8a0`002428b2?
DbsSplayTreeRangeMap::Add: ignoring zero-sized range at ?fffff800`04619500?
Symbol search path is: SRV*...[생략]...
Executable search path is: 
Windows 7 Kernel Version 7601 (Service Pack 1) MP (8 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 7601.17790.amd64fre.win7sp1_gdr.120305-1505
Machine Name:
Kernel base = 0xfffff800`02e12000 PsLoadedModuleList = 0xfffff800`03056650
Debug session time: Tue May 15 09:42:20.820 2012 (UTC + 9:00)
System Uptime: 0 days 22:56:36.819
Loading Kernel Symbols
.

Press ctrl-c (cdb, kd, ntsd) or ctrl-break (windbg) to abort symbol loads that take too long.
Run !sym noisy before .reload to track down problems loading symbols.

..............................................................
................................................................
............................................
Loading User Symbols
Loading unloaded module list
..........................
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 9F, {3, fffffa800ed5c060, fffff80004619518, fffffa800d1dc010}

Probably caused by : usbhub.sys

Followup: MachineOwner
---------

친절하게도 ^^ "analyze" 명령을 사용해 보라고 권하고 있는데, ^^ 이대로 해주니 오류 원인이 한번에 밝혀졌습니다.

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: fffffa800ed5c060, Physical Device Object of the stack
Arg3: fffff80004619518, Functional Device Object of the stack
Arg4: fffffa800d1dc010, The blocked IRP

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


DRVPOWERSTATE_SUBCODE:  3

IMAGE_NAME:  usbhub.sys

DEBUG_FLR_IMAGE_TIMESTAMP:  4d8c0c15

MODULE_NAME: usbhub

FAULTING_MODULE: fffff88008d44000 usbhub

CUSTOMER_CRASH_COUNT:  1

DEFAULT_BUCKET_ID:  VISTA_DRIVER_FAULT

BUGCHECK_STR:  0x9F

PROCESS_NAME:  System

CURRENT_IRQL:  2

STACK_TEXT:  
fffff800`046194c8 fffff800`02efc092 : 00000000`0000009f 00000000`00000003 fffffa80`0ed5c060 fffff800`04619518 : nt!KeBugCheckEx
fffff800`046194d0 fffff800`02e9995c : fffff800`04619600 fffff800`04619600 00000000`00000000 00000000`00000001 : nt! ?? ::FNODOBFM::`string'+0x34040
fffff800`04619570 fffff800`02e997f6 : fffffa80`0c3a7658 fffffa80`0c3a7658 00000000`00000000 00000000`00000000 : nt!KiProcessTimerDpcTable+0x6c
fffff800`046195e0 fffff800`02e996de : 000000c0`4f8a729d fffff800`04619c58 00000000`0050ca29 fffff800`030067a8 : nt!KiProcessExpiredTimerList+0xc6
fffff800`04619c30 fffff800`02e994c7 : 00000020`78b4efc2 00000020`0050ca29 00000020`78b4effa 00000000`00000029 : nt!KiTimerExpiration+0x1be
fffff800`04619cd0 fffff800`02e8698a : fffff800`03003e80 fffff800`03011cc0 00000000`00000002 fffff880`00000000 : nt!KiRetireDpcList+0x277
fffff800`04619d80 00000000`00000000 : fffff800`0461a000 fffff800`04614000 fffff800`04619d40 00000000`00000000 : nt!KiIdleLoop+0x5a


STACK_COMMAND:  kb

FOLLOWUP_NAME:  MachineOwner

FAILURE_BUCKET_ID:  X64_0x9F_3_AiCharger_IMAGE_usbhub.sys

BUCKET_ID:  X64_0x9F_3_AiCharger_IMAGE_usbhub.sys

Followup: MachineOwner
---------

아하... 힌트가 나왔습니다. "X64_0x9F_3_AiCharger_IMAGE_usbhub.sys" 파일명에서 예전에 썼던 글이 생각납니다.

노트북과 PC에서 iPad를 충전시킴 ^^
; https://www.sysnet.pe.kr/0/0/370

델 노트북에서 USB 포트를 이용하여 아이패드를 충전하기 위해 설치했던 프로그램이 바로 "AiCharger"였던 것입니다. 프로그램을 제거해야 하나 생각하다가, 해당 프로그램이 .sys 파일뿐만 아니라 레지스트리의 시작 프로그램으로 등록되어 있던 것이 기억나서 그냥 그것만 해제를 했습니다. (왜냐하면, 나중에 아이패드 충전할 일이 있으면 또 설치하기가 귀찮으므로.)

레지스트리 경로: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\AutorunsDisabled
이름: ASUS Ai Charger
값: C:\Program Files (x86)\ASUS\ASUS Ai Charger\AiChargerAP.exe

일단, 이렇게 해서 며칠 사용해야 결론이 나겠지만... 현재까지는 BSOD 화면이 뜨지 않고 있습니다. ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 5/21/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  [57]  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
12515정성태1/28/202118789웹: 41. Microsoft Edge - localhost에 대해 http 접근 시 무조건 https로 바뀌는 문제 [3]
12514정성태1/28/202118970.NET Framework: 1021. C# - 일렉트론 닷넷(Electron.NET) 소개 [1]파일 다운로드1
12513정성태1/28/202116092오류 유형: 698. electronize - User Profile 디렉터리에 공백 문자가 있는 경우 빌드가 실패하는 문제 [1]
12512정성태1/28/202116513오류 유형: 697. The program can't start because VCRUNTIME140.dll is missing from your computer. Try reinstalling the program to fix this problem.
12511정성태1/27/202116236Windows: 187. Windows - 도스 시절의 8.3 경로를 알아내는 방법
12510정성태1/27/202117087.NET Framework: 1020. .NET Core Kestrel 호스팅 - Razor 지원 추가 [1]파일 다운로드1
12509정성태1/27/202116931개발 환경 구성: 524. Jupyter Notebook에서 C#(F#, PowerShell) 언어 사용을 위한 환경 구성 [3]
12508정성태1/27/202116210개발 환경 구성: 523. Jupyter Notebook - Slide 플레이 버튼이 없는 경우
12507정성태1/26/202116746VS.NET IDE: 157. Visual Studio - Syntax Visualizer 메뉴가 없는 경우
12506정성태1/25/202119870.NET Framework: 1019. Microsoft.Tye 기본 사용법 소개 [1]
12505정성태1/23/202116551.NET Framework: 1018. .NET Core Kestrel 호스팅 - Web API 추가 [1]파일 다운로드1
12504정성태1/23/202118536.NET Framework: 1017. .NET 5에서의 네트워크 라이브러리 개선 (2) - HTTP/2, HTTP/3 관련 [1]
12503정성태1/21/202116939오류 유형: 696. C# - HttpClient: Requesting HTTP version 2.0 with version policy RequestVersionExact while HTTP/2 is not enabled.
12502정성태1/21/202117508.NET Framework: 1016. .NET Core HttpClient의 HTTP/2 지원파일 다운로드1
12501정성태1/21/202116451.NET Framework: 1015. .NET 5부터 HTTP/1.1, 2.0 선택을 위한 HttpVersionPolicy 동작 방식파일 다운로드1
12500정성태1/21/202117287.NET Framework: 1014. ASP.NET Core(Kestrel)의 HTTP/2 지원 여부파일 다운로드1
12499정성태1/20/202118655.NET Framework: 1013. .NET Core Kestrel 호스팅 - 포트 변경, non-localhost 접속 지원 및 https 등의 설정 변경 [1]파일 다운로드1
12498정성태1/20/202117065.NET Framework: 1012. .NET Core Kestrel 호스팅 - 비주얼 스튜디오의 Kestrel/IIS Express 프로파일 설정
12497정성태1/20/202119651.NET Framework: 1011. C# - OWIN Web API 예제 프로젝트 [1]파일 다운로드2
12496정성태1/19/202116994.NET Framework: 1010. .NET Core 콘솔 프로젝트에서 Kestrel 호스팅 방법 [1]
12495정성태1/19/202119345웹: 40. IIS의 HTTP/2 지원 여부 - h2, h2c [1]
12494정성태1/19/202118602개발 환경 구성: 522. WSL 2 인스턴스와 호스트 측의 Hyper-V에 운영 중인 VM과 네트워크 연결을 하는 방법 [2]
12493정성태1/18/202116683.NET Framework: 1009. .NET 5에서의 네트워크 라이브러리 개선 (1) - HTTP 관련 [1]파일 다운로드1
12492정성태1/17/202115640오류 유형: 695. ASP.NET 0x80131620 Failed to bind to address
12491정성태1/16/202117649.NET Framework: 1008. 배열을 반환하는 C# COM 개체의 메서드를 C++에서 사용 시 메모리 누수 현상 [1]파일 다운로드1
12490정성태1/15/202116781.NET Framework: 1007. C# - foreach에서 열거 변수의 타입을 var로 쓰면 object로 추론하는 문제 [1]파일 다운로드1
... 46  47  48  49  50  51  52  53  54  55  56  [57]  58  59  60  ...