----- 原始邮件 ----- 发件人:penghao122@sina.com 收件人:"Kevin O'Connor" kevin@koconnor.net 主题:回复:Re: [SeaBIOS] about ZoneHigh occupying ram from last address of below 4G ram 日期:2015年04月15日 21点15分
----- 原始邮件 ----- 发件人:Kevin O'Connor kevin@koconnor.net 收件人:penghao122@sina.com 抄送人:seabios seabios@seabios.org 主题:Re: [SeaBIOS] about ZoneHigh occupying ram from last address of below 4G ram 日期:2015年04月15日 00点45分
On Tue, Apr 14, 2015 at 11:57:08PM +0800, penghao122@sina.com wrote:
I'm using seabios 1.7.5-0 for kvm ,and I find some problem when using windows 7 64bit bandvirtual machine.If I configure the windows 7 64bit vm memory to 8GB ,the vm can't boot up very often(some win7-64bit version easy to trigger) .I use trace-cmd tool to trace it ,the vm just scan from last ram of below 4G(0xc000_0000) to 4G address byte by byte.This is very time-consuming.From E820 table,the address range contain nothing(it is an address hole).
I query clue from seabios because I can't find any problems in kvm or qemu. seabios keep a range of ram from last address below 4G as zonehigh ram .I guess the windows os see a not aligned ram address space and scan from 0xc000_0000. so I try to change the ZoneHigh to low address space (I choose 128MB,grub use from 1MB address space).after I changed,I can boot win7-64bit vm normally.
So I want to know whether changing ZoneHigh to 128MB can be a general modification.
I haven't seen any other reports of issues like this with Win7. I suspect something else is going on. Please provide the full debug log (as described at: http://seabios.org/Debugging ) with an unmodified seabios from both a succesful boot event and a failed boot event. -Kevin
I just can' boot succesfully if I use unmodified seabios (vm using 8 GB memory).I will try again. The attachment is the output of seabios when booting failed.