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

비밀번호

댓글 작성자
 




... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13337정성태5/5/202312839Linux: 59. dockerfile - docker exec로 container에 접속 시 자동으로 실행되는 코드 적용
13336정성태5/4/202312364.NET Framework: 2111. C# - 바이너리 출력 디렉터리와 연관된 csproj 설정
13335정성태4/30/202313263.NET Framework: 2110. C# - FFmpeg.AutoGen 라이브러리를 이용한 기본 프로젝트 구성 - Windows Forms파일 다운로드1
13334정성태4/29/202312274Windows: 250. Win32 C/C++ - Modal 메시지 루프 내에서 SetWindowsHookEx를 이용한 Thread 메시지 처리 방법
13333정성태4/28/202310804Windows: 249. Win32 C/C++ - 대화창 템플릿을 런타임에 코딩해서 사용파일 다운로드1
13332정성태4/27/202311096Windows: 248. Win32 C/C++ - 대화창을 위한 메시지 루프 사용자 정의파일 다운로드1
13331정성태4/27/202310712오류 유형: 856. dockerfile - 구 버전의 .NET Core 이미지 사용 시 apt update 오류
13330정성태4/26/202311286Windows: 247. Win32 C/C++ - CS_GLOBALCLASS 설명
13329정성태4/24/202311464Windows: 246. Win32 C/C++ - 직접 띄운 대화창 템플릿을 위한 Modal 메시지 루프 생성파일 다운로드1
13328정성태4/19/202311291VS.NET IDE: 184. Visual Studio - Fine Code Coverage에서 동작하지 않는 Fake/Shim 테스트
13327정성태4/19/202311499VS.NET IDE: 183. C# - .NET Core/5+ 환경에서 Fakes를 이용한 단위 테스트 방법
13326정성태4/18/202314072.NET Framework: 2109. C# - 닷넷 응용 프로그램에서 SQLite 사용 (System.Data.SQLite) [1]파일 다운로드1
13325정성태4/18/202312221스크립트: 48. 파이썬 - PostgreSQL의 with 문을 사용한 경우 연결 개체 누수
13324정성태4/17/202312472.NET Framework: 2108. C# - Octave의 "save -binary ..."로 생성한 바이너리 파일 분석파일 다운로드1
13323정성태4/16/202312111개발 환경 구성: 677. Octave에서 Excel read/write를 위한 io 패키지 설치
13322정성태4/15/202313655VS.NET IDE: 182. Visual Studio - 32비트로만 빌드된 ActiveX와 작업해야 한다면?
13321정성태4/14/202311557개발 환경 구성: 676. WSL/Linux Octave - Python 스크립트 연동
13320정성태4/13/202311337개발 환경 구성: 675. Windows Octave 8.1.0 - Python 스크립트 연동
13319정성태4/12/202312306개발 환경 구성: 674. WSL 2 환경에서 GNU Octave 설치
13318정성태4/11/202311988개발 환경 구성: 673. JetBrains IDE에서 "Squash Commits..." 메뉴가 비활성화된 경우
13317정성태4/11/202312180오류 유형: 855. WSL 2 Ubuntu 20.04 - error: cannot communicate with server: Post http://localhost/v2/snaps/...
13316정성태4/10/202310662오류 유형: 854. docker-compose 시 "json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)" 오류 발생
13315정성태4/10/202311592Windows: 245. Win32 - 시간 만료를 갖는 컨텍스트 메뉴와 윈도우 메시지의 영역별 정의파일 다운로드1
13314정성태4/9/202312452개발 환경 구성: 672. DosBox를 이용한 Turbo C, Windows 3.1 설치 [1]
13313정성태4/9/202311875개발 환경 구성: 671. Hyper-V VM에 Turbo C 2.0 설치 [2]
13312정성태4/8/202311630Windows: 244. Win32 - 시간 만료를 갖는 MessageBox 대화창 구현 (개선된 버전)파일 다운로드1
... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...