다음을 통해 공유

AMonTDnt.sys 파일에 의한 PC Down현상 조치 방법 문의

익명
2012-07-16T02:52:16+00:00

안녕하세요

현재 FA 분야에서 사용중인 PC가

V3 업데이트 완료 시점에 PC가 다운 되는 현상이 다발하고 있습니다.

분야 특성상 PC 다운은 설비 다운으로 이어저 큰 손실을 가져 오고 있습니다.

약 3달의 주기로 서로 다른 PC에서 발생을 하고 있습니다.

Ahnlab 에 문의를 하였을때는 아래와 같은 답변이 왔고

하기와 같이 MS답변을 핑계로 CPU 문제로 넘겼습니다.

아래 답변에서 몇가지 문의 사항이 있습니다.

  1. CPU문제가 확실 한것입니까?

2.  MicroCode Update 방법 및 최신 MicroCode 인지 확인하는 방법은 어떻게 되는 지요?

      (WindowsXP-KB936357-v2-x86-KOR.exe 업데이트는 이미 실행해봄, 현재버전보다 하위 버전으로 업데이트 불가)

  1. MS 사 측에서는 CPU 문제라고 하셨는데 현재 i7-960을 사용 하고 있는데 문제가 되지 않는 CPU는 어떤것이 있는 지요?
  2. Filter 드라이버는 무엇인가요? 제거 방법은 어떻게 되나요?
  3. CPU를 바꾸면 완벽히 해결 되는 것인가요(PC가 100여대가 넘습니다. 무작정 바꿀수 없습니다.)

답변 부탁드리겠습니다.

PC 사양

OS : Microsoft Windows XP Pro Sp3

CPU : i7-960

MainBoard : [ASUS]P6T Deluxe V2 (IntelX58) Ibora

V3 : V3 8.0 (APC)

Ahnlab 답변 1

안녕하세요. AhnLab 솔루션지원팀 윤기엽입니다.

문의하신 BSOD 증상 관련하여 답변을 드립니다.

보내주신 덤프파일을 분석해본 결과 문제가 발생하는 원인은 Tcpip 드라이버의 내부 동기화 객체(Kernel SpinLock)가 알 수 없는 원인으로 동기화가 되지 않아서 발생한 문제이며,이는 CPU의 오류에 의해 발생된 것으로 추정하고 있습니다.

이전에도 동일한 문제로 접수된 건이 있었으며 이에 대한 MS 분석 내용을 전달해드립니다.

================================================================================

 [원인 분석]

 이미 해제된 메모리 영역을 다시 한 번 해제하려던 BugCheck이 발생하였습니다. 이 메모리 영역은 BlockedPortList 에 포함된 Entry로서 해제될 때 반드시 SpinLock을 얻어야 합니다. 하지만 TCPIP 드라이버의 Address Object Table의 SpinLock을 얻지 않은 채로 Cached된 BlockedPortList에 Access하여 문제가 발생하였습니다. CPU 정보로 보았을 때 여기서는 CPU의 상태를 체크해 보는 것이 좋을 것 같습니다. 왜냐하면 SpinLock을 얻으려고 할 때 오동작 되었을 가능성이 있습니다.

[조치 사항]

 1.문제가 발생한 컴퓨터가 불특정하게 1대씩 발생한다면, 해당 머신의 CPU Microcode를 최신 버전으로 업데이트하거나 교체한 후 모니터링 하세요.

 2.문제가 계속 발생한다면, Filter 드라이버가 있는 상태에서의 문제 발생 주기와 Filter 드라이버 제거 후 문제 발생 주기를 비교하여 어느 정도 문제 발생에 영향을 주는지 체크해 볼 필요가 있습니다.

 ================================================================================

결론을 말씀드리자면 CPU를 교체한 후 동일증상이 발생하는지 확인해 봐야 할 것 같습니다.

그럼, 금일도 좋은 하루 되시기를 바랍니다.

감사합니다.

추가적인 문의사항의 경우 ******@ahnlab.com 으로 메일 회신하여 주시기 바랍니다.

Ahnlab 답변2

안녕하세요. AhnLab 솔루션지원팀 윤기엽입니다.

문의하신 BSOD 관련하여 답변을 드립니다.

기존에 현재 케이스와 동일한 덤프가 접수되었었으며 콜스택 중간에 V3의 네트워크 모듈인 AMonTDnt.sys이

포함되어 있었기 때문에 V3문제로 인식되어 문제제기가 되었었습니다.

하지만 V3의 네트워크 모듈을 로드되지 않도록 세팅한 조건에서도 동일한 문제가 발생하였고, 콜스택 중간에 MS모듈 이외의

드라이버가 없는 것으로 볼 때, 다음의 두가지를 예상했습니다.

  1. MS 모듈인 Tcpip에서 적절한 처리를 하지 못하여 문제 발생
  2. 콜스택에선 보이지 않으나 어떤 모듈이 해당 메모리를 강제로 해제하여 문제 발생

그러나 위 2번의 경우라 해도 V3쪽과는 무관한 모듈이기에(테스트 당시 V3관련 모듈은 로드되지 않은 상태임) 해당 덤프를 Microsoft에 전달하여 아래와 같은 답변을 받았습니다.

================================================================================

[원인 분석]

이미 해제된 메모리 영역을 다시 한 번 해제하려던 BugCheck이 발생하였습니다. 이 메모리 영역은 BlockedPortList 에 포함된 Entry로서 해제될 때 반드시 SpinLock을 얻어야 합니다. 하지만 TCPIP 드라이버의 Address Object Table의 SpinLock을 얻지 않은 채로 Cached된 BlockedPortList에 Access하여 문제가 발생하였습니다. CPU 정보로 보았을 때 여기서는 CPU의 상태를 체크해 보는 것이 좋을 것 같습니다. 왜냐하면 SpinLock을 얻으려고 할 때 오동작 되었을 가능성이 있습니다.

[조치 사항]

1.문제가 발생한 컴퓨터가 불특정하게 1대씩 발생한다면, 해당 머신의 CPU Microcode를 최신 버전으로 업데이트하거나 교체한 후 모니터링 하세요.

2.문제가 계속 발생한다면, Filter 드라이버가 있는 상태에서의 문제 발생 주기와 Filter 드라이버 제거 후 문제 발생 주기를 비교하여 어느 정도 문제 발생에 영향을 주는지 체크해 볼 필요가 있습니다.

================================================================================

유선상으로 말씀드렸듯이 덤프분석 내용 중 IMAGE_NAME에 AMonTDnt.sys가 기록되었다고 해서 무조건 해당 드라이버의 문제라고 볼 수는 없으며 동일한 덤프내용을 MS와 AhnLab에서 여러번 분석해본 결과 V3 모듈과의 연관성이 밝혀지지 않았으므로 정확한 조치 사항을 전달해 드릴 수는 없습니다.

그럼, 금일도 좋은 하루 되시기를 바랍니다.

감사합니다.

추가적인 문의사항의 경우 ******@ahnlab.com 으로 메일 회신하여 주시기 바랍니다.

MEMORY.DMP 파일 분석 정보

5: kd> !analyze -v

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************

BAD_POOL_CALLER (c2)

The current thread is making a bad pool request. Typically this is at a bad IRQL level or double freeing the same allocation, etc.

Arguments:

Arg1: 00000007, Attempt to free pool which was already freed

Arg2: 00000cd4, (reserved)

Arg3: 02020013, Memory contents of the pool block

Arg4: 8939e7a8, Address of the block of pool being deallocated

Debugging Details:


POOL_ADDRESS: 8939e7a8 Nonpaged pool

FREED_POOL_TAG: TCPt

BUGCHECK_STR: 0xc2_7_TCPt

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: svchost.exe

LAST_CONTROL_TRANSFER: from 8054d583 to 804fbf43

STACK_TEXT:

b2e27b1c 8054d583 000000c2 00000007 00000cd4 nt!KeBugCheckEx+0x1b

b2e27b6c b2f1522b 8939e7a8 00000000 89816818 nt!ExFreePoolWithTag+0x2a3

b2e27b98 b2f0356f 00001389 00816818 89816818 tcpip!BlockTCPPorts+0x1b7

b2e27bb4 b2edf56d 898167a8 89816818 89643300 tcpip!TCPDispatchDeviceControl+0x10e

b2e27bec b2e9865c 89c05480 898167a8 00000000 tcpip!TCPDispatch+0x127

b2e27c08 b2e9dd83 89b70588 898167a8 898167a8 AMonTDnt!CFrmNtPassthruRequest+0x4c [U:\AhnLab\System\Common\Public\Monster_V3.0\Trunk\Src\AMonTDxx\anfdtdnt.c @ 141]

b2e27c1c b2e9e18d 89b70588 898167a8 89816818 AMonTDnt!CSpliterDispatchDeviceControl+0x33 [U:\AhnLab\System\Common\Public\Monster_V3.0\Trunk\Src\AMonTDxx\cdispatch.c @ 294]

b2e27c40 804f119f 89c05480 898167a8 806e9410 AMonTDnt!CSpliterDefaultDispatch+0x1ad [U:\AhnLab\System\Common\Public\Monster_V3.0\Trunk\Src\AMonTDxx\cdispatch.c @ 613]

b2e27c50 8058198e 89816818 89643300 898167a8 nt!IopfCallDriver+0x31

b2e27c64 8058281d 89c05480 898167a8 89643300 nt!IopSynchronousServiceTail+0x70

b2e27d00 8057b298 0000163c 00002c58 00000000 nt!IopXxxControlFile+0x5c5

b2e27d34 8054367c 0000163c 00002c58 00000000 nt!NtDeviceIoControlFile+0x2a

b2e27d34 7c93e514 0000163c 00002c58 00000000 nt!KiFastCallEntry+0xfc

WARNING: Frame IP not in any known module. Following frames may be wrong.

0230f548 00000000 00000000 00000000 00000000 0x7c93e514

STACK_COMMAND: kb

FOLLOWUP_IP:

AMonTDnt!CFrmNtPassthruRequest+4c [U:\AhnLab\System\Common\Public\Monster_V3.0\Trunk\Src\AMonTDxx\anfdtdnt.c @ 141]

b2e9865c 8945f4 mov dword ptr [ebp-0Ch],eax

SYMBOL_STACK_INDEX: 5

SYMBOL_NAME: AMonTDnt!CFrmNtPassthruRequest+4c

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: AMonTDnt

IMAGE_NAME: AMonTDnt.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4e0de6f8

FAILURE_BUCKET_ID: 0xc2_7_TCPt_AMonTDnt!CFrmNtPassthruRequest+4c

BUCKET_ID: 0xc2_7_TCPt_AMonTDnt!CFrmNtPassthruRequest+4c

Followup: MachineOwner

가정용 Windows | 이전 Windows 버전 | 앱

잠긴 질문. 이 질문은 Microsoft 지원 커뮤니티에서 마이그레이션되었습니다. 질문이 도움이 되었는지 여부에 대해 응답할 수는 있지만, 메모나 회신을 추가하거나 질문을 따를 수는 없습니다.

댓글 0개 설명 없음

질문 작성자가 수락한 답변

익명
2012-07-16T09:21:40+00:00

Windows XP 용 마이크로코드 업데이트 링크는 아래와 같습니다.

이 업데이트가 변경하는 시스템 파일 정보는 현재 시점을 기준으로 아래와 같습니다.

-

파일 이름 파일 버전 파일 크기 날짜 시간 플랫폼
Update.sys 5.1.2600.3218 364,160 2007-09-19 10:57 x86

필터 드라이버는 바이러스 백신, 백업 기능, 암호화 기능 등 요청된 작업을 필터링하는 기능 종류의 총칭입니다. 예를 들면, 바이러스 파일을 실행하려고 하면 백신이 이를 중간에서 가로채어 (Filtering), 바이러스가 실행되기 전에 막는 기능이 Filter Driver의 기능이라고 표현할 수 있습니다. 이 필터 드라이버는 설치된 프로그램에 따라 매우 다양하게 존재하므로, 정확한 파일 이름은 해당 소프트웨어 제조업체를 통해 제공 받으시기 바랍니다.

의심되는 필터 드라이버가 있다면 Autoruns 툴을 이용하여 비활성화 한 후, 증상 재현 여부를 확인해 볼 수 있습니다.

추가로, 저희 Answers 포럼에서는 덤프 분석을 진행하지 않습니다.

문제가 지속되는 경우 상세한 기술지원이 필요할 수 있으니 마이크로소프트 기술지원 1577-9700(ARS 3-1)으로 문의하시기 바랍니다.

* 라이선스 및 보증기간에 따라 지원 자격이 달라질 수 있습니다.

※ 응답이 문제 해결에 도움이 되었다면, 아래에 있는 답변으로 [표시] 버튼을 눌러 주시기 바랍니다. 이는 유사한 증상을 겪는 다른 사용자들에게 도움이 될 수 있습니다.

이 대답이 도움이 되었나요?

댓글 0개 설명 없음

0 추가 답변

정렬 기준: 가장 유용함