Date: Wed, 11 Apr 2007 13:07:15 -0400 From: Jung-uk Kim <jkim@FreeBSD.org> To: freebsd-emulation@FreeBSD.org Cc: Andriy Gapon <avg@icyb.net.ua>, freebsd-ports@FreeBSD.org, Juergen Lock <nox@jelal.kn-bremen.de> Subject: Re: kqemu+amd64: fpudna in kernel mode Message-ID: <200704111307.17455.jkim@FreeBSD.org> In-Reply-To: <461CFD4B.4020801@icyb.net.ua> References: <461CFD4B.4020801@icyb.net.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 11 April 2007 11:22 am, Andriy Gapon wrote: > I get swarms of messages "fpudna in kernel mode" in system log when > I run qemu with kqemu on FreeBSD 6.2 amd64 host with Windows XP > 32-bit guest. I noticed that someone reported this problem a while > ago: > http://lists.freebsd.org/pipermail/freebsd-emulation/2006-February/ >001800.html This happens because we do not allow FP instructions in kernel mode as the error message suggested. Executing FP instructions in kernel mode requires expensive save/restore cycles for FP states. > There is no harm done, but the messages are annoying and they might > be indicative of some bigger issue. > Note that I am running qemu like follows: > $ qemu-system-x86_64 ... -m 512 -net tap -net nic -localtime > > there is no -kernel-kqemu option and "info kqemu" in qemu monitor > says that it is enabled for user code. -kernel-kqemu option does not work for FreeBSD and it is very experimental feature for Linux x86-64. Since KQEMU is release under GPL recently, it can be fixed if someone's motivated enough, though. ;-) > As I understand "fpudna" means "FPU device not available" and the > message comes from here: > http://fxr.watson.org/fxr/source/amd64/amd64/trap.c > > on T_DNA ("device not avaialble") _kernel_ fault. You can ignore the complaints for now until we come up with better FP handling in kernel. > BTW, not complaining about the following, but I think I should > report it. When I use -kernel-kqemu option I get random crashes of > the guest XP (BSOD) with diagnostics like the following (they > vary): > > IRQL_NOT_GREATER_OR_EQUAL > PFN_LIST_CORRUPT > PAGE_FAULT_IN_NONPAGED_AREA > > Looks like all three are caused by some sort of memory corruption > or driver misbehavior according to the following: > http://aumha.org/a/stop.htm Windows guest is not supported by full virtualization mode, AFAIK. http://www.qemu.net/kqemu-doc.html BTW, it doesn't give you much performance gain as you may think: 'Best performances are achieved with Linux 2.4 kernels. Linux 2.6 works but the performance gains are small.' Even if we make it work with FreeBSD, I would expect similar results. Jung-uk Kim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200704111307.17455.jkim>