Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (seongtaejeong at gmail.com)
홈페이지
첨부 파일
 

Windows - 최대 절전 모드 시 DRIVER_POWER_STATE_FAILURE 발생 (pacer.sys)

이상하군요, 어느 순간부터 최대 절전 모드로 들어가면 평소와는 달리 길게 시간을 끌더니만 그냥 꺼지는 현상이 발생합니다. 한 번은 모니터를 켜놓고 어떻게 되는지 확인했는데, 블루스크린이 뜨는 경우도 있었고 그것도 없이 그냥 종료해 버리는 경우도 있었습니다.

블루스크린으로 생성된 덤프 파일을 WinDbg로 확인해 보면 이런 내용이 나옵니다.

************* Preparing the environment for Debugger Extensions Gallery repositories **************
...[생략]...

For analysis of this file, run !analyze -v
nt!KeBugCheckEx:
fffff803`63014f10 48894c2408      mov     qword ptr [rsp+8],rcx ss:0018:fffff60f`e9fdf6f0=000000000000009f

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

DRIVER_POWER_STATE_FAILURE (9f)
A driver has failed to complete a power IRP within a specific time.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an IRP for too long a time
Arg2: ffff8389105ebab0, Physical Device Object of the stack
Arg3: fffff60fe9fdf738, nt!TRIAGE_9F_POWER on Win7 and higher, otherwise the Functional Device Object of the stack
Arg4: ffff83894b757550, The blocked IRP

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

...[생략]...

PROCESS_NAME:  System

STACK_TEXT:  
fffff60f`f9f1e420 fffff803`62e1e385     : ffffa680`42911180 00000000`00000000 ffff8389`105b3040 00000000`00000000 : nt!KiSwapContext+0x76
fffff60f`f9f1e560 fffff803`62e1f7a7     : 00000000`00000000 fffff803`00000000 00000000`00000001 00000000`00000000 : nt!KiSwapThread+0xaa5
fffff60f`f9f1e6b0 fffff803`62e7f366     : ffff8389`00000000 00000000`00000001 ffff8389`00000000 00000000`00000000 : nt!KiCommitThreadWait+0x137
fffff60f`f9f1e760 fffff803`67a8b441     : fffff60f`f9f1eb70 ffff8389`32aa31a0 fffff60f`f9f1ec70 00000000`00000001 : nt!KeWaitForSingleObject+0x256
fffff60f`f9f1eb00 fffff803`679c4e99     : ffff8389`00000000 ffff8389`32aa31a0 fffff60f`f9f1ec70 00000000`00000000 : ndis!ndisWaitForKernelObject+0x21
fffff60f`f9f1eb40 fffff803`67ac6101     : 00000000`00000000 00000000`00000000 fffff60f`f9f1ec70 00000000`00000001 : ndis!ndisAcquireMiniportPnPEventLock+0x28bb9
fffff60f`f9f1eb70 fffff803`67994eb7     : 00000000`00000000 00000000`00000000 00000000`00000000 ffff8389`330c7620 : ndis!ndisPnPNotifyAllTransports+0xb1
fffff60f`f9f1ecb0 fffff803`62e80aba     : ffff8389`330c7620 ffff8389`59ecb0b4 fffff60f`f9f1ef00 fffff60f`f9f1f248 : ndis!ndisFNetPnPEventInternal+0x187
fffff60f`f9f1ede0 fffff803`62e80a2d     : fffff803`67994d30 fffff60f`f9f1eed8 ffff8389`330c7620 00000000`00000000 : nt!KeExpandKernelStackAndCalloutInternal+0x7a
fffff60f`f9f1ee50 fffff803`67995601     : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KeExpandKernelStackAndCalloutEx+0x1d
fffff60f`f9f1ee90 fffff803`67995501     : 00000000`00000000 ffff8389`330c7620 fffff60f`f9f1f350 00000000`00000000 : ndis!NdisFNetPnPEvent+0x51
fffff60f`f9f1ef10 fffff803`67994e04     : 00000000`00000000 00000000`00000000 00000000`00000000 ffff8389`330c6410 : ndis!ndisFForwardNetPnPEventToFilter+0x55
fffff60f`f9f1f020 fffff803`62e80aba     : 00000000`00000001 ffff8389`59ecb0b4 fffff60f`f9f1f270 fffff60f`f9f1f648 : ndis!ndisFNetPnPEventInternal+0xd4
fffff60f`f9f1f150 fffff803`62e80a2d     : fffff803`67994d30 fffff60f`f9f1f248 ffff8389`330c6410 fffff803`66a912d3 : nt!KeExpandKernelStackAndCalloutInternal+0x7a
fffff60f`f9f1f1c0 fffff803`67995601     : 00000000`04b404dc fffff60f`f9f1f288 00000000`0000000d 00000000`00000000 : nt!KeExpandKernelStackAndCalloutEx+0x1d
fffff60f`f9f1f200 fffff803`69ab8eb4     : 00000000`00000004 ffff8389`330c6410 fffff60f`f9f1f350 fffff60f`f9f1f648 : ndis!NdisFNetPnPEvent+0x51
fffff60f`f9f1f280 fffff803`67a8e69b     : ffff8389`330c6410 ffff8389`326cadb0 00000000`00000001 fffff803`67a91446 : pacer!PcFilterPnPEvent+0x14
fffff60f`f9f1f2b0 fffff803`67995583     : ffff8389`330c6410 fffff60f`f9f1f3b9 ffff8389`330c6410 fffff60f`f9f1f7d0 : ndis!ndisFInvokeNetPnPEvent+0x77
fffff60f`f9f1f310 fffff803`67994e04     : 00000000`00000000 00000000`00000000 00000000`00000000 ffff8389`330c4240 : ndis!ndisFForwardNetPnPEventToFilter+0xd7
fffff60f`f9f1f420 fffff803`62e80aba     : ffff8389`330c4240 ffff8389`59ecb0b4 fffff60f`f9f1f670 fffff803`67a73048 : ndis!ndisFNetPnPEventInternal+0xd4
fffff60f`f9f1f550 fffff803`62e80a2d     : fffff803`67994d30 fffff60f`f9f1f648 ffff8389`330c4240 ffff8389`133f6938 : nt!KeExpandKernelStackAndCalloutInternal+0x7a
fffff60f`f9f1f5c0 fffff803`67995601     : 00000000`00000928 00000000`0000009c 00000000`00000000 00000000`00000000 : nt!KeExpandKernelStackAndCalloutEx+0x1d
fffff60f`f9f1f600 fffff803`67995501     : ffff8389`104b81cc ffff8389`330c4240 fffff60f`f9f1f7d0 fffff60f`f9f1f718 : ndis!NdisFNetPnPEvent+0x51
fffff60f`f9f1f680 fffff803`67994be6     : ffff8389`00000000 ffff8389`32aa31a0 ffff8389`32aa31a0 fffff60f`f9f1f920 : ndis!ndisFForwardNetPnPEventToFilter+0x55
fffff60f`f9f1f790 fffff803`67ac63ca     : ffff8389`32aa31a0 ffff8389`4b757668 ffff8389`32aa31a0 00000000`00000000 : ndis!ndisDevicePnPEventNotifyFiltersAndAllTransports+0xfa
fffff60f`f9f1f8c0 fffff803`67995d2d     : ffff8389`4b757550 ffff8389`105ebab0 ffff8389`4b757668 ffff8389`32aa31a0 : ndis!ndisQueryPower+0x18e
fffff60f`f9f1fa20 fffff803`62e0362a     : ffff8389`59ecb040 fffff60f`f9f1fb00 fffff803`6383a100 ffff8389`32aa3050 : ndis!ndisPowerDispatch+0x1cd
fffff60f`f9f1fa80 fffff803`62f4d247     : ffff8389`00000002 ffffffff`fa0a1f00 fffff803`62e033d0 00000000`00000000 : nt!PopIrpWorker+0x25a
fffff60f`f9f1fb30 fffff803`6301a084     : ffffa680`42d11180 ffff8389`59ecb040 fffff803`62f4d1f0 00000000`00000246 : nt!PspSystemThreadStartup+0x57
fffff60f`f9f1fb80 00000000`00000000     : fffff60f`f9f20000 fffff60f`f9f19000 00000000`00000000 00000000`00000000 : nt!KiStartSystemThread+0x34


SYMBOL_NAME:  pacer!PcFilterPnPEvent+14

MODULE_NAME: pacer

IMAGE_NAME:  pacer.sys

IMAGE_VERSION:  10.0.22621.3952

STACK_COMMAND:  .process /r /p 0xffff8389104ff040; .thread 0xffff838959ecb040 ; kb

BUCKET_ID_FUNC_OFFSET:  14

FAILURE_BUCKET_ID:  0x9F_3_POWER_DOWN_pacer!PcFilterPnPEvent

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

FAILURE_ID_HASH:  {bc1e8814-1104-9f6d-a9de-f6b5bc67aa27}

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

다른 덤프도 확인했으나 모두 같은 출력이 나왔습니다. 그러니까, 확실히 pacer.sys 드라이버 측에서 전원 관리에 문제가 발생하고 있는 것입니다.

그나저나, pacer.sys가 뭔지 검색해 보면 "QoS Packet Scheduler"라고 하는데요, 어쨌든 문제는 없게 만들어야 하니 제어판에서 "Network and Sharing Center"의 "Change adapter settings" 링크로 들어가 열람할 수 있는 "Network Connections"에 대해 "QoS Packet Scheduler" 관련 옵션을 모두 해제했습니다.

disable_qos_packet_scheduler_1.png

다행히, 이후로는 최대 절전 모드로 잘 진입합니다. ^^




저 문제가 발생하고 며칠 후 다시 현상을 재현하려고 QoS 옵션을 켰는데, 이제는 문제가 발생하지 않았고 혹시나 싶어 pacer.sys의 파일 버전을 확인했더니 (이전에는 10.0.22621.3952였는데) 10.0.22621.2506으로 바뀌었습니다. 낮아진 걸로 봐서는 업데이트로 인해 롤백이 된 것이 아닌가... 싶습니다. ^^




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







[최초 등록일: ]
[최종 수정일: 2/3/2025]

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)
12712정성태7/15/202116110개발 환경 구성: 579. Azure - 리눅스 호스팅의 Site Extension 제작 방법
12711정성태7/15/202116131개발 환경 구성: 578. Azure - Java Web App Service를 위한 Site Extension 제작 방법
12710정성태7/15/202118758개발 환경 구성: 577. MQTT - emqx.io 서비스 소개
12709정성태7/14/202114286Linux: 42. 실행 중인 docker 컨테이너에 대한 구동 시점의 docker run 명령어를 확인하는 방법
12708정성태7/14/202118504Linux: 41. 리눅스 환경에서 디스크 용량 부족 시 원인 분석 방법
12707정성태7/14/202185730오류 유형: 734. MySQL - Authentication method 'caching_sha2_password' not supported by any of the available plugins.
12706정성태7/14/202116912.NET Framework: 1076. C# - AsyncLocal 기능을 CallContext만으로 구현하는 방법 [2]파일 다운로드1
12705정성태7/13/202117297VS.NET IDE: 168. x64 DLL 프로젝트의 컨트롤이 Visual Studio의 Designer에서 보이지 않는 문제 - 두 번째 이야기
12704정성태7/12/202116090개발 환경 구성: 576. Azure VM의 서비스를 Azure Web App Service에서만 접근하도록 NSG 설정을 제한하는 방법
12703정성태7/11/202121469개발 환경 구성: 575. Azure VM에 (ICMP) ping을 허용하는 방법
12702정성태7/11/202117176오류 유형: 733. TaskScheduler에 등록된 wacs.exe의 Let's Encrypt 인증서 업데이트 문제
12701정성태7/9/202116726.NET Framework: 1075. C# - ThreadPool의 스레드는 반환 시 ThreadStatic과 AsyncLocal 값이 초기화 될까요?파일 다운로드1
12700정성태7/8/202117161.NET Framework: 1074. RuntimeType의 메모리 누수? [1]
12699정성태7/8/202115697VS.NET IDE: 167. Visual Studio 디버깅 중 GC Heap 상태를 보여주는 "Show Diagnostic Tools" 메뉴 사용법
12698정성태7/7/202119945오류 유형: 732. Windows 11 업데이트 시 3% 또는 0%에서 다운로드가 멈춘 경우
12697정성태7/7/202115013개발 환경 구성: 574. Windows 11 (Insider Preview) 설치하는 방법
12696정성태7/6/202115970VC++: 146. 운영체제의 스레드 문맥 교환(Context Switch)을 유사하게 구현하는 방법파일 다운로드2
12695정성태7/3/202116007VC++: 145. C 언어의 setjmp/longjmp 기능을 Thread Context를 이용해 유사하게 구현하는 방법파일 다운로드1
12694정성태7/2/202117939Java: 24. Azure - Spring Boot 앱을 Java SE(Embedded Web Server)로 호스팅 시 로그 파일 남기는 방법 [1]
12693정성태6/30/202114881오류 유형: 731. Azure Web App Site Extension - Failed to install web app extension [...]. {1}
12692정성태6/30/202115366디버깅 기술: 180. Azure - Web App의 비정상 종료 시 남겨지는 로그 확인
12691정성태6/30/202115618개발 환경 구성: 573. 테스트 용도이지만 테스트에 적합하지 않은 Azure D1 공유(shared) 요금제
12690정성태6/28/202116632Java: 23. Azure - 자바(Java)로 만드는 Web App Service - Tomcat 호스팅
12689정성태6/25/202118338오류 유형: 730. Windows Forms 디자이너 - The class Form1 can be designed, but is not the first class in the file. [1]
12688정성태6/24/202117654.NET Framework: 1073. C# - JSON 역/직렬화 시 리플렉션 손실을 없애는 JsonSrcGen [2]파일 다운로드1
12687정성태6/22/202114974오류 유형: 729. Invalid data: Invalid artifact, java se app service only supports .jar artifact
... 46  47  48  [49]  50  51  52  53  54  55  56  57  58  59  60  ...