VMware Player の画面サイズを変えるとやたらBSoDになる件
理由は良く分からないんですが、やたら 英語の仮想環境がクラッシュするので調べてみた
12.01.08.0000
L000113AC:
mov eax,[L000195A4+edi*4] <- edi = 1
cmp byte ptr [eax+0000AA5Ch],01h <- eax = 0
jnz L000113C8
add eax,000005F8h
call SUB_L00011298
add ebx,eax
|
11.09.01.0000
L0001133E:
cmp ebx,[ebp-04h]
jge L00011380
mov eax,[L000195A4+ebx*4] <- ebx = 1
cmp byte ptr [eax+0000AA5Ch],01h <- eax =0
jnz L0001135F
add eax,000005F8h
call SUB_L00011298
add esi,eax
|
push 00000011h //SVGA_REG_CAPABILITIES
push esi
call SUB_L000114B2 //VmxReadUlong
push 0000001Fh //SVGA_REG_NUM_DISPLAYS
and eax,FF7FFFFFh // ~SVGA_CAP_SCREEN_OBJECT_2
push esi
mov [esi+0000AA54h],eax
call SUB_L000114B2 // VmxReadUlong
mov [L00014A08],eax <- 2
-------------------------------------------
VmxReadUlong:
mov edi,edi push ebp
mov ebp,esp
push esi
push [ebp+0Ch]
mov esi,[ebp+08h]
push [esi+000005E4h]
call [VIDEOPRT.SYS!VideoPortWritePortUlong]
push [esi+000005E8h]
call [VIDEOPRT.SYS!VideoPortReadPortUlong]
pop esi
pop ebp
retn 0008h
|
基本的にはどっちのドライバもディスプレイの数カウントしたら2が返ってくるのに実態が1しかないのがクラッシュの要因
モニタ3つにしてみた
そしたらこっちも3つに…。
どうやらHost 側にモニタ1つしかないのに2つと判定されてるのがクラッシュの原因のようだ。
手動で1つにしたところ、落ちなくなりましたとさ。
Comments