Re: [Dosemu-devel] Is DOSEMU2 intended running on kernels like 3.2 ?
Brought to you by:
bartoldeman
From: <bo...@ge...> - 2015-12-22 12:38:41
|
Hello Andrew Thank you for your reply. I'm on 32-bit and my goal there is to stay with "vm86" for speed. So I don't try to use KVM, even it's installed on this machine. My intention was to check first, if that could be a bug or it was by intention. In this case, I will open an issue on github. Andreas On 2015-12-22 12:42, Andrew Bird wrote: > On Tue, 22 Dec 2015 11:34:26 +0100 > bo...@ge... wrote: > >> Hello >> >> I've compiled the DOSEMU2 devel branch (2.0pre4, 1893) on an Ubuntu >> 12.04 LTS (x86 / 32-bit / PAE). This fails due to the usage of >> "X86_EFLAGS_FIXED" in the file "src/emu-i386/kvm.c". >> >> I believe that the define of "X86_EFLAGS_FIXED" is missing in the >> kernel >> 3.2 of my Ubuntu version. There has been a rename of "X86_EFLAGS_BIT1" >> to "X86_EFLAGS_FIXED" some time ago: >> >> https://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.10.60 >> >> >> In the meantime, I added the following line to "kvm.c" and could >> compile >> successfully DOSEMU2: >> >> #define X86_EFLAGS_FIXED 0x00000002 >> >> But I believe, this is NOT the right thing... DOSEMU2 runs, but I use >> "vm86" and not "kvm". >> >> >> So, coming back to the subject of this message: >> >> Is DOSEMU2 supposed to work on older Linux Kernels ? If not, then this >> message can be sent to device null. >> >> Andreas >> >> > > Hi Andreas, > Firstly you should raise an issue at > https://github.com/stsp/dosemu2/issues as it'll get tracked properly > there and Stas / Bart won't miss it. Regarding use of vm86, I think on > 386 kernels it's still the default, so are you forcing it to try kvm? > There's a new dosemu.conf variable called $_cpu_vm since kvm support > got added. Here's the section from the default dosemu.conf. > > # Usage of cpu emulation: "off" (default on x86), > # "vm86" only (default on x86-64) or "full" (vm86 and DPMI, > experimental!). > # Use "vm86sim" or "fullsim" to use simulation instead of JIT code > generation. > > # $_cpu_emu = "off" > > # Select cpu virtualization mode. > # "vm86" - use v86 mode via vm86() syscall. Only available on x86-32. > # "kvm" - use KVM, hardware-assisted in-kernel virtual machine. > # "emulated" - use CPU emulator > # "auto" - select whatever works > > # $_cpu_vm = "auto" > > Remember that kvm support requires a certain processor type to work, > but in any case you should raise the issue because dosemu2 should > definitely compile on kernel 3.2 without changes. |