Re: [kvm-devel] [RFC] KVM Source layout Proposal to accommodate new CPU architecture
On Tue, 2007-10-02 at 14:11 +1000, Rusty Russell wrote: On Tue, 2007-10-02 at 01:19 +, Hollis Blanchard wrote: On Sun, 30 Sep 2007 15:56:16 +0200, Avi Kivity wrote: Eventually I'd like to see the code in arch/*/kvm. That's probably not easily doable right now because modules cannot span directories, but once that's solved, we'll do that as this is most consistent with the rest of the kernel. What is the spanning directories issue? Can't I build arch/powerpc/kvm/kvm-powerpc.ko and drivers/kvm/kvm.ko and let modprobe sort out the dependency? Sure, but it creates a silly module. Isn't there precedent in other areas? What about cpufreq or ALSA? (I'm really asking; don't have time to investigate further right now.) I think guest code belongs in arch/*/kvm/, but host code can be done as subdirs under drivers/kvm/. Funny, I would say the opposite. The host code is where I'm mucking with deep architectural state like stealing the TLB out from under Linux. The guest state is all what would a processor like this do? -- Hollis Blanchard IBM Linux Technology Center - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Correct management of REP prefix
Laurent Vivier wrote: This patch corrects some errors appearing when we have an emulation failure on an operation using REP prefix. When x86_emulate_insn() fails, saving EIP and ECX is not enough as emulation should have modified other registers like RSI or RDI. Moreover, the emulation can fail on the writeback, and in this case we are not able to restore registers. At beginning of x86_emulate_insn(), we restore registers from vcpu as they were not modified by x86d_decode_insn() and we save EIP to be able to restore it in case of failure. Applied, thanks. -- Any sufficiently difficult bug is indistinguishable from a feature. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Correct management of REP prefix
Laurent Vivier wrote: Avi Kivity wrote: Laurent Vivier wrote: This patch corrects some errors appearing when we have an emulation failure on an operation using REP prefix. When x86_emulate_insn() fails, saving EIP and ECX is not enough as emulation should have modified other registers like RSI or RDI. Moreover, the emulation can fail on the writeback, and in this case we are not able to restore registers. This patch takes another approach: at the beginning of x86_emulate_insn() we restore state we have at end of x86_decode_insn(). To do that, we store EIP in a new field in decode_cache, decode_eip. This field store the EIP as it is at the end of x86_decode_insn(); and at beginning of x86_emulate_insn(), we restore all registers as they are in vcpu. We can do that, because the x86_decode_insn() doesn't modify registers (except EIP). How about doing it slightly differently: keep c-eip at its current meaning, and add c-eip_orig to revert to? That will make the patch smaller and reduce the changes of something being missed. I didn't do like that because I was afraid to miss some points to restore orig_eip. This could be done using something like emulate(ctxt) { decode_cache save = ctxt-decode_cache; r = __emulate(ctxt); if (r != success) ctxt-decode_cache = save; return r; } or in some similar way. -- Any sufficiently difficult bug is indistinguishable from a feature. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [RFC] KVM Source layout Proposal to accommodate new CPU architecture
On Tue, 2007-10-02 at 01:01 -0500, Hollis Blanchard wrote: On Tue, 2007-10-02 at 14:11 +1000, Rusty Russell wrote: On Tue, 2007-10-02 at 01:19 +, Hollis Blanchard wrote: On Sun, 30 Sep 2007 15:56:16 +0200, Avi Kivity wrote: Eventually I'd like to see the code in arch/*/kvm. That's probably not easily doable right now because modules cannot span directories, but once that's solved, we'll do that as this is most consistent with the rest of the kernel. What is the spanning directories issue? Can't I build arch/powerpc/kvm/kvm-powerpc.ko and drivers/kvm/kvm.ko and let modprobe sort out the dependency? Sure, but it creates a silly module. Isn't there precedent in other areas? What about cpufreq or ALSA? (I'm really asking; don't have time to investigate further right now.) Hmm, cpufreq does do something like this, so I guess it's a fair call. I think guest code belongs in arch/*/kvm/, but host code can be done as subdirs under drivers/kvm/. Funny, I would say the opposite. The host code is where I'm mucking with deep architectural state like stealing the TLB out from under Linux. The guest state is all what would a processor like this do? From my POV all platforms belong in arch/*/, and KVM just presents another platform. But the implementation of KVM is as much kvm-specific as arch-specific, so I can argue over that one. Whatever way we go, grouping both host and guest support in the same dir seems confusing (which is why lguest is moving to arch/i386/lguest/ for guest and drivers/lguest/i386/ for host). Cheers, Rusty. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] What happens on an INT80 instruction
On 10/2/07, Cam Macdonell [EMAIL PROTECTED] wrote: Anthony Liguori wrote: Cam Macdonell wrote: Anthony Liguori wrote: Cameron Macdonell wrote: Hi, I'm trying to understand guest virtualization at the lower levels. I have a somewhat basic question: How does KVM virtualize an int80 instruction from a guest? A pointer to an answer is just as good as an answer itself. The same thing happens as it does on normal hardware. The way VT/SVM works (at a high level), is that certain instructions and events check a special area called the VMCS/VMCB to determine whether the event should generate a vmexit which is really just a special type of trap. Thanks Anthony. Does an int80 from an application in the guest always cause a vmexit (in kvm's case at least)? No, an int80 would never generate a trap in KVM. The only way to make it generate a trap is for an int80 to trigger some other event that would generate a trap. This is what I meant by taking over the guest's IDT such that you could change the int80 handler to do a hypercall. I presume you're looking into doing a guest IDS right? Actually, I looking into doing a PhD dissertation :) I'm just trying to get a better working understanding of how kvm (and other VMMs) handle instructions like int80 that should trap into the OS, but of course in a VM need to trap into the guest OS (which is running at user-level) and not the host OS. Do traps by a guest app to the guest OS involve the VMM at all? Pardon my ignorance, what is IDS? IDS stands for Intrusion Detection System. Anthony thought that you want to monitor int80 to detect illegal usage of system calls. regards, Jun - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] What happens on an INT80 instruction
On 10/1/07, Anthony Liguori [EMAIL PROTECTED] wrote: Cameron Macdonell wrote: Hi, I'm trying to understand guest virtualization at the lower levels. I have a somewhat basic question: How does KVM virtualize an int80 instruction from a guest? A pointer to an answer is just as good as an answer itself. The same thing happens as it does on normal hardware. The way VT/SVM works (at a high level), is that certain instructions and events check a special area called the VMCS/VMCB to determine whether the event should generate a vmexit which is really just a special type of trap. There are no hooks for interrupts 32-255 so the hardware operates as it normally would. If you're interested in getting a trap for int80 within KVM, you'll have to trap sidt/lidt and virtualize the IDT. You'll need to setup a fake IDT and have the int80 handler do a hypercall. This is complicated if the guest is using a fast-syscall mechanism. It may be a little challenging finding a piece of guest memory to take over that has a valid virtual mapping. This is a bit vague to me. Why do you need a piece of guest memory here? Thanks, Jun - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] Backwards compat for 2.6.16?
Hi all, The lapic code uses ktime_t and hrtimers, which means we no longer build for kernels 2.6.15 and below. Is it worth trying to fake this infrastructure up, building without lapic, or abandoning 2.6.16? Thanks, Rusty. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] Script to help check compatibility against a range of kernels.
This makes it easier to check kvm-userspace compatibility layer. --- check-compat.sh | 27 +++ 1 files changed, 27 insertions(+), 0 deletions(-) create mode 100755 check-compat.sh diff --git a/check-compat.sh b/check-compat.sh new file mode 100755 index 000..c07be4d --- /dev/null +++ b/check-compat.sh @@ -0,0 +1,27 @@ +#! /bin/sh + +die() +{ +echo FAILED: +cat $LOGFILE +exit 1 +} + +if [ $# = 0 ]; then +echo Usage: ./check-compat.sh kerneldir... 2 +echo eg. './check-compat.sh ../linux-2.6.*' 2 +exit 1 +fi + +LOGFILE=`mktemp -t kvm-check-compat.XX` +trap rm -f $LOGFILE 0 + +for k in $@; do +[ -d $k ] || continue +make clean /dev/null 21 +echo -n Checking $k... +./configure --kerneldir=`pwd`/$k $LOGFILE 21 || die +make $LOGFILE 21 || die +echo ok. +done + -- 1.5.1.3 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] Backwards compat for 2.6.16?
Rusty Russell wrote: Hi all, The lapic code uses ktime_t and hrtimers, which means we no longer build for kernels 2.6.15 and below. Is it worth trying to fake this infrastructure up, building without lapic, or abandoning 2.6.16? I think we can stub the code away, and hack the feature reporting to hide the crippled functionality. -- error compiling committee.c: too many arguments to function - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] KVM TODO
Please can anyone give me some kvm-TODO. (preferably on x86_64 and i686) Thanks regards, Onkar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] KVM TODO
Onkar wrote: Please can anyone give me some kvm-TODO. (preferably on x86_64 and i686) there is page on this at kvm homepage: http://kvm.qumranet.com/kvmwiki/TODO check out this list, and if you need help in anything just ask :) Thanks regards, Onkar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [ANNOUNCE] kvm-45 release
Qemu-cvs as of yesterday has been merged into kvm. Everything I tested still works, but undoubtedly a few rough edges remain. The merge brings too many goodies to list; have fun exploring. I've also thrown in a network latency improvement when using the tap device (bridged networking); on may machine this reduces guest-host ping round trip latency from 940 microseconds to 78 microseconds. Less visible but also noteworthy is the removal of page-private use for guest pages, an important step towards swapping guest pages. As usual, if you have an issue please try with -no-kvm-irqchip and report. Changes from kvm-44: - don't use page-private for guest pages (Izik Eidus) - x86 emulator cleanups, simplifications, and fixes (Laurent Vivier, Qing He) - apic round robin delivery mode cleanup (Qing He) - merge qemu-cvs - fix compilation on older kernels (Rusty Russell, me) - reduce tap networking latency - fix FC6 x86_64 booting with -no-kvm - fix code dump on exception Notes: If you use the modules bundled with kvm-45, you can use any version of Linux from 2.6.9 upwards. If you use the modules bundled with Linux 2.6.20, you need to use kvm-12. If you use the modules bundled with Linux 2.6.21, you need to use kvm-17. Modules from Linux 2.6.22 and up will work with any kvm version from kvm-22. Some features may only be available in newer releases. For best performance, use Linux 2.6.23-rc2 or later as the host. http://kvm.qumranet.com - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Script to help check compatibility against a range of kernels.
Rusty Russell wrote: This makes it easier to check kvm-userspace compatibility layer. I actually started to write something like this, except it pulled older kernels from git. Thanks. --- check-compat.sh | 27 +++ 1 files changed, 27 insertions(+), 0 deletions(-) create mode 100755 check-compat.sh diff --git a/check-compat.sh b/check-compat.sh new file mode 100755 index 000..c07be4d --- /dev/null +++ b/check-compat.sh @@ -0,0 +1,27 @@ +#! /bin/sh + +die() +{ +echo FAILED: +cat $LOGFILE +exit 1 +} + +if [ $# = 0 ]; then +echo Usage: ./check-compat.sh kerneldir... 2 +echo eg. './check-compat.sh ../linux-2.6.*' 2 +exit 1 +fi + +LOGFILE=`mktemp -t kvm-check-compat.XX` +trap rm -f $LOGFILE 0 + +for k in $@; do +[ -d $k ] || continue +make clean /dev/null 21 +echo -n Checking $k... +./configure --kerneldir=`pwd`/$k $LOGFILE 21 || die +make $LOGFILE 21 || die +echo ok. +done + -- error compiling committee.c: too many arguments to function - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [ kvm-Bugs-1806241 ] KVM-45 colors bug
Bugs item #1806241, was opened at 2007-10-02 12:27 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806241group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Technologov (technologov) Assigned to: Nobody/Anonymous (nobody) Summary: KVM-45 colors bug Initial Comment: KVM-45 provides incorrect colors on the following resolutions: -Text Mode (80x25) -640x480x8-bit -640x480x24-bit -800x600x8-bit -800x600x24-bit Correct colors found on the following guest resolutions: -640x480x16-bit -800x600x16-bit Incorrect colors means that Red and Blue color-channels are swapped. The same happens with -no-kvm. Tested on AMD64, Fedora7, 64-bit host. Tested with Cirrus Logic video card. (but same happens with -std-vga) -Alexey Technologov. 2.oct.2007. -- You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806241group_id=180599 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] Don't route PIC interrupts through the local APIC if the local APIC config says so
Under certain conditions, PIC interrupts should not be passed through by the local APIC. This is usually when the guest uses the IOAPIC instead of the PIC. Currently qemu does not block PIC interrupts when the local APIC is configured to do so; this results in interrupts begin received twice and time running at double speed on Linux x86_64 guest. The attached patch, from Qing He and myself, fixes the problem. -- error compiling committee.c: too many arguments to function Index: vl.h === RCS file: /sources/qemu/qemu/vl.h,v retrieving revision 1.273 diff -u -u -r1.273 vl.h --- vl.h 30 Sep 2007 14:44:52 - 1.273 +++ vl.h 2 Oct 2007 10:28:55 - @@ -1138,6 +1138,7 @@ typedef struct IOAPICState IOAPICState; int apic_init(CPUState *env); +int apic_accept_pic_intr(CPUState *env); int apic_get_interrupt(CPUState *env); IOAPICState *ioapic_init(void); void ioapic_set_irq(void *opaque, int vector, int level); Index: hw/apic.c === RCS file: /sources/qemu/qemu/hw/apic.c,v retrieving revision 1.16 diff -u -u -r1.16 apic.c --- hw/apic.c 17 Sep 2007 08:09:46 - 1.16 +++ hw/apic.c 2 Oct 2007 10:28:55 - @@ -484,6 +484,25 @@ return intno; } +int apic_accept_pic_intr(CPUState *env) +{ +APICState *s = env-apic_state; +uint32_t lvt0; + +if (!s) +return -1; + +lvt0 = s-lvt[APIC_LVT_LINT0]; + +if (s-id == 0 +((s-apicbase MSR_IA32_APICBASE_ENABLE) == 0 || + ((lvt0 APIC_LVT_MASKED) == 0 + ((lvt0 8) 0x7) == APIC_DM_EXTINT))) +return 1; + +return 0; +} + static uint32_t apic_get_current_count(APICState *s) { int64_t d; @@ -790,6 +809,13 @@ { APICState *s = opaque; apic_init_ipi(s); + +/* + * LINT0 delivery mode is set to ExtInt at initialization time + * typically by BIOS, so PIC interrupt can be delivered to the + * processor when local APIC is enabled. + */ +s-lvt[APIC_LVT_LINT0] = 0x700; } static CPUReadMemoryFunc *apic_mem_read[3] = { @@ -821,6 +847,13 @@ s-apicbase = 0xfee0 | (s-id ? 0 : MSR_IA32_APICBASE_BSP) | MSR_IA32_APICBASE_ENABLE; +/* + * LINT0 delivery mode is set to ExtInt at initialization time + * typically by BIOS, so PIC interrupt can be delivered to the + * processor when local APIC is enabled. + */ +s-lvt[APIC_LVT_LINT0] = 0x700; + /* XXX: mapping more APICs at the same memory location */ if (apic_io_memory == 0) { /* NOTE: the APIC is directly connected to the CPU - it is not Index: hw/pc.c === RCS file: /sources/qemu/qemu/hw/pc.c,v retrieving revision 1.85 diff -u -u -r1.85 pc.c --- hw/pc.c 17 Sep 2007 08:09:47 - 1.85 +++ hw/pc.c 2 Oct 2007 10:28:55 - @@ -93,6 +93,9 @@ return intno; } /* read the irq from the PIC */ +if (!apic_accept_pic_intr(env)) +return -1; + intno = pic_read_irq(isa_pic); return intno; } @@ -100,10 +103,8 @@ static void pic_irq_request(void *opaque, int irq, int level) { CPUState *env = opaque; -if (level) +if (level apic_accept_pic_intr(env)) cpu_interrupt(env, CPU_INTERRUPT_HARD); -else -cpu_reset_interrupt(env, CPU_INTERRUPT_HARD); } /* PC cmos mappings */ - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] FreeBSD image hangs during boot
Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso Cheers, Aurelien -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [RFC] KVM Source layout Proposal to accommodate new CPU architecture
Rusty Russell wrote: Whatever way we go, grouping both host and guest support in the same dir seems confusing (which is why lguest is moving to arch/i386/lguest/ for guest and drivers/lguest/i386/ for host). That really is funny. Our s39host is just the other way round: arch/s390/sie for the host, and drivers/s390/sie for the guest. Maybe lguest is upside down cause it's from australia? But at least the argument of a clear separation between guest and host in the source tree seems to be common sense. Carsten - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Hi Aurélien, did you try kvm-45 ? Laurent Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso Cheers, Aurelien -- - [EMAIL PROTECTED] -- Software is hard - Donald Knuth signature.asc Description: OpenPGP digital signature - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Laurent Vivier a écrit : Hi Aurélien, did you try kvm-45 ? Yes the test is done with kvm-45. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Avi Kivity a écrit : Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. The RSDT checksum problem is not new, but it was harmless on previous versions (like kvm-37). Using -no-acpi, I am able to boot the machine with -no-kvm, but the guest still hang with -no-acpi and with -no-kvm-irqchip or lapic enabled. At least on AMD64, I haven't tested yet on an Intel machine. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Avi Kivity wrote: Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. I should have the same kind of problem with debian-31r0a-amd64-netinst.iso which hangs on: Loading module 'ide-disk' for 'Linux ATA DISK'... and -no-acpi resolves this too. Laurent -- - [EMAIL PROTECTED] -- Software is hard - Donald Knuth signature.asc Description: OpenPGP digital signature - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Aurelien Jarno wrote: Avi Kivity a écrit : Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. The RSDT checksum problem is not new, but it was harmless on previous versions (like kvm-37). Using -no-acpi, I am able to boot the machine with -no-kvm, but the guest still hang with -no-acpi and with -no-kvm-irqchip or lapic enabled. At least on AMD64, I haven't tested yet on an Intel machine. Hangs on AMD here as well; works on intel (with -no-acpi). -- error compiling committee.c: too many arguments to function - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] What happens on an INT80 instruction
On Mon, 2007-10-01 at 17:23 -0600, Cam Macdonell wrote: Actually, I looking into doing a PhD dissertation :) I'm just trying to get a better working understanding of how kvm (and other VMMs) handle instructions like int80 that should trap into the OS, but of course in a VM need to trap into the guest OS (which is running at user-level) and not the host OS. Do traps by a guest app to the guest OS involve the VMM at all? Hi Cam, The answer has to do with a few different variables: 1) The capabilities of the virtualization technology hw (e.g. VMX, SVM, etc) 2) The programming of those capabilities by the VMM The important thing to remember when using VM hardware is: they aren't *really* executing guest code in userspace (though that is a very nice way to think of them in many respects...I do this myself when its convenient). They are really executing in a special context (guest-mode) where the hardware can be programmed in various ways by the VMM. Intel VMX for instance, (and AMD-SVM is similar) allows the guest to have its own Interrupt-Descriptor-Table (IDT) independent of the hosts IDT. This governs how interrupts are handled when they are injected into the guest context, just like the host IDT governs how they are delivered to the VMM. One primary difference, however, is the host has some programmatic control over the behavior of the guest (within the constraints of the hardware capabilities, of course). For instance, the host can program the VMX hardware to cause a VMEXIT when certain instructions or events happen inside the guest. VMX has such a control for INTx instructions (see Section 20.6.3 in the Intel SDM Volume 3b), but (IIUC, and as Anthony mentioned) they are limited to the first 32 of the 256 vectors in x86 (i.e. the hardware exceptions) whereas the remaining vectors are not trappable. What this means is that if the vector is = 32, or if its 32 but the exit-control is not enabled the INTx instruction will be delivered right to the guests-IDT without leaving guest-context. Otherwise, it will VMEXIT back to the host. IIUC, KVM in particular only sets the control for a handful of the 32 vectors (#PF is one, I'm pretty sure ;). KVM doesn't care about INT80, and the VMX hardware doesn't support that exit-condition even if it did. What this means is that on KVM/VMX, an INT80 is delivered to whatever the guest set up in its own IDT for vector 80, and that's it. The host wouldn't even know, per se. However, I'm sure there might be some VMM/HW combo out there other than KVM that might trap INT80, so YMMV. I hope this helps to clarify. Good luck on that dissertation! -Greg signature.asc Description: This is a digitally signed message part - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Laurent Vivier a écrit : Avi Kivity wrote: Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. I should have the same kind of problem with debian-31r0a-amd64-netinst.iso which hangs on: Loading module 'ide-disk' for 'Linux ATA DISK'... and -no-acpi resolves this too. This is most probably the same problem on FreeBSD, as it has destroyed my disk image. I don't know yet if I can repair it or not. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] What happens on an INT80 instruction
Jun Koi wrote: On 10/1/07, Anthony Liguori [EMAIL PROTECTED] wrote: Cameron Macdonell wrote: Hi, I'm trying to understand guest virtualization at the lower levels. I have a somewhat basic question: How does KVM virtualize an int80 instruction from a guest? A pointer to an answer is just as good as an answer itself. The same thing happens as it does on normal hardware. The way VT/SVM works (at a high level), is that certain instructions and events check a special area called the VMCS/VMCB to determine whether the event should generate a vmexit which is really just a special type of trap. There are no hooks for interrupts 32-255 so the hardware operates as it normally would. If you're interested in getting a trap for int80 within KVM, you'll have to trap sidt/lidt and virtualize the IDT. You'll need to setup a fake IDT and have the int80 handler do a hypercall. This is complicated if the guest is using a fast-syscall mechanism. It may be a little challenging finding a piece of guest memory to take over that has a valid virtual mapping. This is a bit vague to me. Why do you need a piece of guest memory here? You don't just need guest memory, you need a valid guest virtual address too. The IDTR contains a guest VA. If you want to create your own IDT, then it has to be a valid VA in the guest's address space. Regards, Anthony Liguori Thanks, Jun - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [ kvm-Bugs-1806334 ] Fedora 7 (64-bit) Fails to Install
Bugs item #1806334, was opened at 2007-10-02 15:52 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806334group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Technologov (technologov) Assigned to: Nobody/Anonymous (nobody) Summary: Fedora 7 (64-bit) Fails to Install Initial Comment: On KVM-45, Fedora 7 (64-bit) Fails to Load the CD-ROM driver. The BIOS loads the CD-ROM, then the kernel is loaded, then the kernel loads it's own CD-ROM driver, which doesn't finds the CD-ROM. Actually, in the middle of init procedure CD-ROM becomes inaccessible. Platform: Fedora 7, 64-bit, AMD64. The same problem occur with -no-kvm. On KVM-44 it works. -Alexey Technologov. 02.oct.2007. -- You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806334group_id=180599 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [ kvm-Bugs-1806338 ] Fedora 7 - fonts corrupted
Bugs item #1806338, was opened at 2007-10-02 16:06 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806338group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Technologov (technologov) Assigned to: Nobody/Anonymous (nobody) Summary: Fedora 7 - fonts corrupted Initial Comment: Host: AMD64, Fedora7 64-bit, KVM-45. During install of Fedora 7 (32-bit) guest, on SDL, I see that fonts are corrupted and totally unreadable. This make the setup experience for blind. The same happens with -no-kvm. KVM-44 works fine. VNC works fine. Maybe this bug is related to: [ 1806241 ] KVM-45 colors bug https://sourceforge.net/tracker/index.php?func=detailaid=1806241group_id=180599atid=893831 -Alexey Technologov 02.Oct.2007. -- You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806338group_id=180599 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [ kvm-Bugs-1806377 ] Fedora 7 (64-bit) Fails to Install
Bugs item #1806377, was opened at 2007-10-02 16:45 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806377group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Technologov (technologov) Assigned to: Nobody/Anonymous (nobody) Summary: Fedora 7 (64-bit) Fails to Install Initial Comment: On KVM-45, Fedora 7 (64-bit) Fails to Load the CD-ROM driver. The BIOS loads the CD-ROM, then the kernel is loaded, then the kernel loads it's own CD-ROM driver, which doesn't finds the CD-ROM. Actually, in the middle of init procedure CD-ROM becomes inaccessible. Platform: Fedora 7, 64-bit, AMD64. The same problem occur with -no-kvm. On KVM-44 it works. -Alexey Technologov. 02.oct.2007. -- You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806377group_id=180599 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [ kvm-Bugs-1806380 ] SMP Error
Bugs item #1806380, was opened at 2007-10-02 16:52 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806380group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Technologov (technologov) Assigned to: Nobody/Anonymous (nobody) Summary: SMP Error Initial Comment: KVM-45 cannot boot any SMP guests. Host: AMD64, Fedora7, 64-bit, KVM-45. When I try to boot any SMP guest, I see black screen, and the console returns FLOPPY ERROR. I don't see any connection between SMP and floppy, but the fact remains that KVM-45 broke SMP totally. With -no-kvm there is no such error. -Alexey Technologov. -- You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806380group_id=180599 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [ kvm-Bugs-1806380 ] SMP Error
SourceForge.net a écrit : Bugs item #1806380, was opened at 2007-10-02 16:52 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detailatid=893831aid=1806380group_id=180599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Technologov (technologov) Assigned to: Nobody/Anonymous (nobody) Summary: SMP Error Initial Comment: KVM-45 cannot boot any SMP guests. Host: AMD64, Fedora7, 64-bit, KVM-45. When I try to boot any SMP guest, I see black screen, and the console returns FLOPPY ERROR. I don't see any connection between SMP and floppy, but the fact remains that KVM-45 broke SMP totally. I would not say totally, given that I am able to run both i386 and amd64 Debian unstable in guest SMP mode. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [ kvm-Bugs-1806380 ] SMP Error
I would not say totally, given that I am able to run both i386 and amd64 Debian unstable in guest SMP mode. What is your host OS ? CPU ? KVM ? -- -Alexey Eremenko Technologov - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [ kvm-Bugs-1806380 ] SMP Error
Alexey Eremenko a écrit : I would not say totally, given that I am able to run both i386 and amd64 Debian unstable in guest SMP mode. What is your host OS ? CPU ? KVM ? Host: Debian Etch amd64 CPU: Intel Core 2 KVM: 45 -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Aurelien Jarno wrote: Avi Kivity a écrit : Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. The RSDT checksum problem is not new, but it was harmless on previous versions (like kvm-37). Using -no-acpi, I am able to boot the machine with -no-kvm, but the guest still hang with -no-acpi and with -no-kvm-irqchip or lapic enabled. At least on AMD64, I haven't tested yet on an Intel machine. Looks like there is a compiler problem that's interfering here. A bios compiled on one machine will boot fine on Intel, but on other machines (unfortunately my work machines) will not. There is a separate issue with -no-acpi on AMD. Is there some version where -no-acpi worked on AMD? -- error compiling committee.c: too many arguments to function - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] Paravirtualization
On official web site said: In progress: * Paravirtualized networking * Paravirtualized block device Where can find sources of that work, if it is possible ? - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Allow for Cross compile of user tools
On Tue, 2007-10-02 at 07:59 +0200, Avi Kivity wrote: Jerone Young wrote: This is the first of many patches to begin to make kvm source a lot better for compiling for other architecture support (that is not x86 or x86-64). This patch makes it possible so that someone on an x86 machine can cross compile for an x86-64 machine and vice versa. So now you will have config-$(arch).mak for each architecture, with specific architecture rules. An example of this is for compiling x86-64 on an x86 machine is: make KERNELDIR=~/tmp/kvm ARCH=x86_64 This should be done via ./configure (I dislike ?= intensely). This is something that could be done via the ./configure script. What will need to add is ARCH=, CC=, LD= as variables as well. I can create a patch for this. This allows for someone with an x86 machine to compile for x86_64. Later patches that I will be submitting will be for ppc and will make a few more changes. What I would like though is comments on how everyone feels about this approach. We are need of something like this to start ading ppc related code. No problem for user/. I'd like to see this accepted by qemu-devel as well. Well qemu pretty much has this problem taken care of. In qemu you can just use the autoconf system. So for our purposes with PPC development we need to compile the binaries on an x86 machine (as the embedded boards are of course much slower, then our super x86 machines). So you just launch configure in qemu with the options: ./configure \ --cpu=powerpc \ --cross-prefix=powerpc-440-linux-gnu- This will compile qemu for the target CPU powerpc and will use cross compile tools with prefix powerpc-440-linux-gnu- that are in our PATH. So we have for example powerpc-440-linux-gnu-gcc which is used to compile the proper ppc binary. All in all these patches whouldn't be needed in qemu because it already has this problem taken care of. But the test case directory /user do not have this problem taken care of. It assumes that you will run on the machine that you are compiling on. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Avi Kivity a écrit : Aurelien Jarno wrote: Avi Kivity a écrit : Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. The RSDT checksum problem is not new, but it was harmless on previous versions (like kvm-37). Using -no-acpi, I am able to boot the machine with -no-kvm, but the guest still hang with -no-acpi and with -no-kvm-irqchip or lapic enabled. At least on AMD64, I haven't tested yet on an Intel machine. Looks like there is a compiler problem that's interfering here. A bios compiled on one machine will boot fine on Intel, but on other machines (unfortunately my work machines) will not. There is a separate issue with -no-acpi on AMD. Is there some version where -no-acpi worked on AMD? It was working correctly before, up to kvm version 37. I also confirm that using -no-acpi fixes the problem. However, I have seen strange data corruption, even on Intel. Basically, booting a recently installed FreeBSD leads to the following message from the bootloader: No kernel found. And the next time, I get from the *BIOS*: Boot from Hard Disk failed: not a bootable disk. Looking at the disk image, the partition table (and maybe more?) has disappeared. This is with a raw image disk. If I pass either -no-kvm or -no-kvm-irqchip, the problem disappear. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Aurelien Jarno a écrit : Avi Kivity a écrit : Aurelien Jarno wrote: Avi Kivity a écrit : Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. The RSDT checksum problem is not new, but it was harmless on previous versions (like kvm-37). Using -no-acpi, I am able to boot the machine with -no-kvm, but the guest still hang with -no-acpi and with -no-kvm-irqchip or lapic enabled. At least on AMD64, I haven't tested yet on an Intel machine. Looks like there is a compiler problem that's interfering here. A bios compiled on one machine will boot fine on Intel, but on other machines (unfortunately my work machines) will not. There is a separate issue with -no-acpi on AMD. Is there some version where -no-acpi worked on AMD? It was working correctly before, up to kvm version 37. I also confirm that using -no-acpi fixes the problem. However, I have seen strange data corruption, even on Intel. Basically, booting a recently installed FreeBSD leads to the following message from the bootloader: No kernel found. And the next time, I get from the *BIOS*: Boot from Hard Disk failed: not a bootable disk. Looking at the disk image, the partition table (and maybe more?) has disappeared. This is with a raw image disk. If I pass either -no-kvm or -no-kvm-irqchip, the problem disappear. I have just got the problem with -no-kvm-irqchip, though it seems to happen less often. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] FreeBSD image hangs during boot
Aurelien Jarno a écrit : Aurelien Jarno a écrit : Avi Kivity a écrit : Aurelien Jarno wrote: Avi Kivity a écrit : Aurelien Jarno wrote: Hi all, That's not something new, but I never seen the problem mentioned here. FreeBSD does not work on KVM, approximately since the lapic merge. However, that does not seem related to lapic, as using -no-kvm-irqchip does not help. With -no-kvm I get a page fault in kernel mode, while the normal QEMU (0.9.0 or CVS) does not have this problem. This can be easily reproduced with the latest installation CD: ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/6.2/6.2-RELEASE-i386-bootonly.iso It complains about the RSDT checksum. Running with -no-acpi works around the problem (it gets to some country selection screen). So it looks like the ACPI tables are messed up. The RSDT checksum problem is not new, but it was harmless on previous versions (like kvm-37). Using -no-acpi, I am able to boot the machine with -no-kvm, but the guest still hang with -no-acpi and with -no-kvm-irqchip or lapic enabled. At least on AMD64, I haven't tested yet on an Intel machine. Looks like there is a compiler problem that's interfering here. A bios compiled on one machine will boot fine on Intel, but on other machines (unfortunately my work machines) will not. There is a separate issue with -no-acpi on AMD. Is there some version where -no-acpi worked on AMD? It was working correctly before, up to kvm version 37. I also confirm that using -no-acpi fixes the problem. However, I have seen strange data corruption, even on Intel. Basically, booting a recently installed FreeBSD leads to the following message from the bootloader: No kernel found. And the next time, I get from the *BIOS*: Boot from Hard Disk failed: not a bootable disk. Looking at the disk image, the partition table (and maybe more?) has disappeared. This is with a raw image disk. If I pass either -no-kvm or -no-kvm-irqchip, the problem disappear. I have just got the problem with -no-kvm-irqchip, though it seems to happen less often. The data corruption seems to come from the userspace part, as I am not able to reproduce it with the kvm-45 module, and the kvm-44 userspace. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `-people.debian.org/~aurel32 | www.aurel32.net - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] [2/2] Split arch specific makefile code out
This patch makes things better for cross compiling. It also makes adding a new architecture to the current make system much easier. Signed-off-by: Jerone Young [EMAIL PROTECTED] diff --git a/user/Makefile b/user/Makefile index 26eb530..9567e8f 100644 --- a/user/Makefile +++ b/user/Makefile @@ -1,14 +1,19 @@ include config.mak +DESTDIR := + +#include architecure specific make rules +include config-$(ARCH).mak + # cc-option # Usage: OP_CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0) cc-option = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \ /dev/null 21; then echo $(1); else echo $(2); fi ;) -CFLAGS = -I $(KERNELDIR)/include $(autodepend-flags) -g -fomit-frame-pointer \ - -Wall -m$(bits) +CFLAGS += -I $(KERNELDIR)/include $(autodepend-flags) -g -fomit-frame-pointer \ + -Wall CFLAGS += $(call cc-option, -fno-stack-protector, ) CFLAGS += $(call cc-option, -fno-stack-protector-all, ) @@ -18,20 +23,6 @@ CXXFLAGS = $(autodepend-flags) autodepend-flags = -MMD -MF $(dir $*).$(notdir $*).d -DESTDIR = - -ifeq ($(shell uname -m), x86_64) -LIBDIR = /lib64 -cstart.o = test/cstart64.o -bits = 64 -ldarch = elf64-x86-64 -else -LIBDIR = /lib -cstart.o = test/cstart.o -bits = 32 -ldarch = elf32-i386 -endif - all: kvmctl libkvm.a flatfiles kvmctl: LDFLAGS += -pthread -lrt @@ -45,11 +36,7 @@ libkvm.a: kvmctl.o flatfiles-common = test/bootstrap test/vmexit.flat test/smp.flat -flatfiles-32 = - -flatfiles-64 = test/access.flat test/irq.flat test/sieve.flat test/simple.flat test/stringio.flat test/memtest1.flat - -flatfiles: $(flatfiles-common) $(flatfiles-$(bits)) +flatfiles: $(flatfiles-common) $(flatfiles) install: install -D kvmctl.h $(DESTDIR)/$(PREFIX)/include/kvmctl.h @@ -60,13 +47,13 @@ install: install -D libkvm.a $(DESTDIR)/$(PREFIX)/$(LIBDIR)/libkvm.a %.flat: %.o - gcc $(CFLAGS) -nostdlib -o $@ -Wl,-T,flat.lds $^ + $(CC) $(CFLAGS) -nostdlib -o $@ -Wl,-T,flat.lds $^ test/bootstrap: test/bootstrap.o - gcc -nostdlib -o $@ -Wl,-T,bootstrap.lds $^ + $(CC) -nostdlib -o $@ -Wl,-T,bootstrap.lds $^ %.o: %.S - gcc $(CFLAGS) -c -nostdlib -o $@ $^ + $(CC) $(CFLAGS) -c -nostdlib -o $@ $^ test/irq.flat: test/print.o diff --git a/user/config-x86.mak b/user/config-x86.mak new file mode 100644 index 000..d2d181b --- /dev/null +++ b/user/config-x86.mak @@ -0,0 +1,7 @@ +LIBDIR = /lib +cstart.o = test/cstart.o +bits = 32 +ldarch = elf32-i386 +CFLAGS += -m32 + +flatfiles= diff --git a/user/config-x86_64.mak b/user/config-x86_64.mak new file mode 100644 index 000..19ebc46 --- /dev/null +++ b/user/config-x86_64.mak @@ -0,0 +1,7 @@ +LIBDIR = /lib64 +cstart.o = test/cstart64.o +bits = 64 +ldarch = elf64-x86-64 +CFLAGS += -m64 + +flatfiles = test/access.flat test/irq.flat test/sieve.flat test/simple.flat test/stringio.flat test/memtest1.flat - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] [1/2] Update user configure script
This adds the ability to change CC, ARCH, LD variables with configure script in user directory. Signed-off-by: Jerone Young [EMAIL PROTECTED] diff --git a/user/configure b/user/configure index 0bdd3de..20b9367 100755 --- a/user/configure +++ b/user/configure @@ -2,13 +2,18 @@ prefix=/usr/local kerneldir=/lib/modules/$(uname -r)/build +cc=gcc +ld=ld +arch=`uname -m | sed -e s/i.86/x86/` usage() { cat -EOF Usage: $0 [options] Options include: - + --arch=ARCHarchitecture to compile for ($arch) + --cc=CC c compiler to use ($cc) + --ld=LD ld linker to use ($ld) --prefix=PREFIXwhere to install things ($prefix) --kerneldir=DIRkernel build directory for kvm.h ($kerneldir) EOF @@ -29,6 +34,15 @@ while [[ $1 = -* ]]; do --kerneldir) kerneldir=$arg ;; +--arch) + arch=$arg + ;; + --cc) + cc=$arg + ;; + --ld) + ld=$arg + ;; --help) usage ;; @@ -41,4 +55,7 @@ done cat EOF config.mak PREFIX=$prefix KERNELDIR=$(readlink -f $kerneldir) +ARCH=$arch +CC=$cc +LD=$ld EOF - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] Windows XP Pro 64 installation issues with kvm-45 on Intel host
Hello, Trying to install Windows XP Pro 64bits, the first phase goes quite well (except that it uses 100% of host's cpu), but crashes when trying to reboot with the following message: unhandled vm exit: 0x8021 rax 0095b9e5 rbx 0095b9c0 rcx 0095b9e5 rdx 0600 rsi f883f200 rdi f800011a6960 rsp rbp fadfeb886a10 r8 r9 0100 r10 0095b9e5 r11 0080 r12 r13 r14 r15 rip rflags 00023002 cs 1000 (0001/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) ds (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) es (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) ss (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) fs (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) gs (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) tr (30c0/2088 p 1 dpl 0 db 0 s 0 type b l 0 g 0 avl 0) ldt (/ p 1 dpl 0 db 0 s 0 type 2 l 0 g 0 avl 0) gdt 0/ idt 0/ cr0 6010 cr2 fadfead016a0 cr3 2f941000 cr4 0 cr8 0 efer 0 ./bin/install_windowsxp64.sh: line 12: 6486 Aborted sudo nice -n -5 qemu-system-x86_64 -smp 2 -m 768 -localtime -net nic -net user -hda $DISC -cdrom $CDROM -boot d -usb --usbdevice tablet It then hangs (no host cpu usage, no mouse movement in guest) after a while on second installation phase after a manual reboot. Trying from zero with -no-kvm-irqchip, it gives a windows blue screen (host cpu at 100%) when trying to reboot with the following message for if anyone understands those windows things: STOP: 0x001E (0xC096,0xF80001071924,0x,0xFADFEB5BD450) After manual reboot, installation also hangs at some point Host: debian lenny, kernel 2.6.21-6 Processor: Intel(R) Pentium(R) D CPU 3.00GHz KVM: 45 If you want further debug information, I'd be pleased to help. Thanks, François. This message was sent using IMP, the Internet Messaging Program. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] Reboot crashes with FC6
Hi, Rebooting a FC6 guest crashes with KVM-45, below is the output. exception 13 (0) rax rbx rcx rdx 0600 rsi rdi rsp rbp r8 r9 r10 r11 r12 r13 r14 r15 rip 0001 rflags 00033046 cs f000 (000f/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) ds (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) es (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) ss (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) fs (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) gs (/ p 1 dpl 3 db 0 s 1 type 3 l 0 g 0 avl 0) tr 0040 (80c0/2088 p 1 dpl 0 db 0 s 0 type b l 0 g 0 avl 0) ldt (/ p 1 dpl 0 db 0 s 0 type 2 l 0 g 0 avl 0) gdt 0/ idt 0/ cr0 6010 cr2 0 cr3 0 cr4 0 cr8 0 efer 0 code: 00 00 00 00 ea 5b e0 00 f0 30 39 2f 31 30 2f 30 37 00 fc fc -- fc fa b8 18 00 00 00 8e d8 8e c0 8e d0 8d 66 40 e8 00 00 00 00 5d 81 ed 15 00 00 00 b8 60 Is this the expected behaviour? Is there a flag that is needed for rebooting? I know that it can depend on the guest OS. Thanks, Cam - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Correct management of REP prefix
Hi Laurent, This patch looks much cleaner to me. I see you are saving the regs like this in the patch. memcpy(c-regs, ctxt-vcpu-regs, sizeof c-regs); But I don't see any place in the patch these regs getting restored after failure. Is it taken care of the code outside of the patch? Thanks Regards, Nitin Linux Open Source Technology Center, Intel Corporation The Mind is like a parachute; it works much better when it's open. -Original Message- From: Laurent Vivier [mailto:[EMAIL PROTECTED] Sent: Monday, October 01, 2007 2:01 AM To: kvm-devel@lists.sourceforge.net Cc: Kamble, Nitin A; [EMAIL PROTECTED]; Laurent Vivier Subject: [PATCH] Correct management of REP prefix This patch corrects some errors appearing when we have an emulation failure on an operation using REP prefix. When x86_emulate_insn() fails, saving EIP and ECX is not enough as emulation should have modified other registers like RSI or RDI. Moreover, the emulation can fail on the writeback, and in this case we are not able to restore registers. At beginning of x86_emulate_insn(), we restore registers from vcpu as they were not modified by x86d_decode_insn() and we save EIP to be able to restore it in case of failure. Signed-off-by: Laurent Vivier [EMAIL PROTECTED] --- drivers/kvm/x86_emulate.c | 35 +-- 1 files changed, 21 insertions(+), 14 deletions(-) diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c index 35069e3..887de7d 100644 --- a/drivers/kvm/x86_emulate.c +++ b/drivers/kvm/x86_emulate.c @@ -1146,10 +1146,18 @@ x86_emulate_insn(struct x86_emulate_ctxt *ctxt, struct x86_emulate_ops *ops) { unsigned long cr2 = ctxt-cr2; u64 msr_data; - unsigned long saved_rcx = 0, saved_eip = 0; + unsigned long saved_eip; struct decode_cache *c = ctxt-decode; int rc = 0; + /* Shadow copy of register state. Committed on successful emulation. +* NOTE: we can copy them from vcpu as x86_decode_insn() doesn't +* modify them. +*/ + + memcpy(c-regs, ctxt-vcpu-regs, sizeof c-regs); + saved_eip = c-eip; + if ((c-d ModRM) (c-modrm_mod != 3)) cr2 = c-modrm_ea; @@ -1354,7 +1362,11 @@ writeback: ctxt-vcpu-rip = c-eip; done: - return (rc == X86EMUL_UNHANDLEABLE) ? -1 : 0; + if (rc == X86EMUL_UNHANDLEABLE) { + c-eip = saved_eip; + return -1; + } + return 0; special_insn: if (c-twobyte) @@ -1396,8 +1408,10 @@ special_insn: register_address(ctxt-es_base, c-regs[VCPU_REGS_RDI]), c-rep_prefix, - c-regs[VCPU_REGS_RDX]) == 0) + c-regs[VCPU_REGS_RDX]) == 0) { + c-eip = saved_eip; return -1; + } return 0; case 0x6e: /* outsb */ case 0x6f: /* outsw/outsd */ @@ -1412,8 +1426,10 @@ special_insn: ctxt-ds_base, c-regs[VCPU_REGS_RSI]), c-rep_prefix, - c-regs[VCPU_REGS_RDX]) == 0) + c-regs[VCPU_REGS_RDX]) == 0) { + c-eip = saved_eip; return -1; + } return 0; case 0x70 ... 0x7f: /* jcc (short) */ { int rel = insn_fetch(s8, 1, c-eip); @@ -1441,8 +1457,6 @@ special_insn: ctxt-vcpu-rip = c-eip; goto done; } - saved_rcx = c-regs[VCPU_REGS_RCX]; - saved_eip = c-eip; c-regs[VCPU_REGS_RCX]--; c-eip = ctxt-vcpu-rip; } @@ -1459,10 +1473,6 @@ special_insn: c-regs[VCPU_REGS_RSI]), c-dst.val, c-dst.bytes, ctxt-vcpu)) != 0) { - if (c-rep_prefix) { - c-regs[VCPU_REGS_RCX] = saved_rcx; - c-eip = saved_eip; - } goto done; } register_address_increment(c-regs[VCPU_REGS_RSI], @@ -1491,10 +1501,6 @@ special_insn: if ((rc = ops-read_emulated(cr2, c-dst.val, c-dst.bytes, ctxt-vcpu)) != 0) { - if (c-rep_prefix) { - c-regs[VCPU_REGS_RCX] = saved_rcx; - c-eip = saved_eip; - } goto done; }
[kvm-devel] when to relize the Paravirtualized networking ?
Anyone know when to release include the following features Paravirtualized networking Paravirtualized block device KVM Tap network is slower than Xen. Can we optimize it? - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] remove duplicate code
This patch removes duplicate code at vl.c. Once the KVM-only part defines how much physicall memory it wants, the rest should be the same for everybody. Signed-off-by: Glauber de Oliveira Costa [EMAIL PROTECTED] --- qemu/vl.c | 23 +-- 1 files changed, 9 insertions(+), 14 deletions(-) diff --git a/qemu/vl.c b/qemu/vl.c index fe49d2c..4f8cf51 100644 --- a/qemu/vl.c +++ b/qemu/vl.c @@ -8246,7 +8246,7 @@ int main(int argc, char **argv) help(1); if (ram_size PHYS_RAM_MAX_SIZE) { fprintf(stderr, qemu: at most %d MB RAM can be simulated\n, -PHYS_RAM_MAX_SIZE / (1024 * 1024)); +(int)PHYS_RAM_MAX_SIZE / (1024 * 1024)); exit(1); } break; @@ -8657,20 +8657,15 @@ int main(int argc, char **argv) fprintf(stderr, Could not create KVM context\n); exit(1); } -} else { - phys_ram_base = qemu_vmalloc(phys_ram_size); - if (!phys_ram_base) { - fprintf(stderr, Could not allocate physical memory\n); - exit(1); - } -} -#else -phys_ram_base = qemu_vmalloc(phys_ram_size); -if (!phys_ram_base) { -fprintf(stderr, Could not allocate physical memory\n); -exit(1); -} +} else #endif +{ + phys_ram_base = qemu_vmalloc(phys_ram_size); + if (!phys_ram_base) { + fprintf(stderr, Could not allocate physical memory\n); + exit(1); + } +} /* we always create the cdrom drive, even if no disk is there */ bdrv_init(); -- 1.4.4.2 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] when to relize the Paravirtualized networking ?
vast yellow wrote: Anyone know when to release include the following features # Paravirtualized networking I have such a code in a separate git repository. It is not yet production ready. The next release is a rebase of Rusty code for virtio and some KVM/Qemu backend. It probably be ready in few weeks. # Paravirtualized block device The effort is not big since Rusty has paved most of the way. Some qemu block handling needs to be done. Again it can happen in 1-2 months. KVM Tap network is slower than Xen. Can we optimize it? Are you talking about PV driver or fully virtualized nic? Dor. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] remove duplicate code
On 10/2/07, Glauber de Oliveira Costa [EMAIL PROTECTED] wrote: @@ -8246,7 +8246,7 @@ int main(int argc, char **argv) help(1); if (ram_size PHYS_RAM_MAX_SIZE) { fprintf(stderr, qemu: at most %d MB RAM can be simulated\n, -PHYS_RAM_MAX_SIZE / (1024 * 1024)); +(int)PHYS_RAM_MAX_SIZE / (1024 * 1024)); exit(1); } break; Ok, this is the wrong version. The above diff is bogus. I'll resend a new one. -- Glauber de Oliveira Costa. Free as in Freedom http://glommer.net The less confident you are, the more serious you have to act. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] remove duplicate code
This patch removes duplicate code at vl.c. Once the KVM-only part defines how much physicall memory it wants, the rest should be the same for everybody. Signed-off-by: Glauber de Oliveira Costa [EMAIL PROTECTED] --- qemu/vl.c | 23 +-- 1 files changed, 9 insertions(+), 14 deletions(-) diff --git a/qemu/vl.c b/qemu/vl.c index fe49d2c..4f8cf51 100644 --- a/qemu/vl.c +++ b/qemu/vl.c @@ -8657,20 +8657,15 @@ int main(int argc, char **argv) fprintf(stderr, Could not create KVM context\n); exit(1); } -} else { - phys_ram_base = qemu_vmalloc(phys_ram_size); - if (!phys_ram_base) { - fprintf(stderr, Could not allocate physical memory\n); - exit(1); - } -} -#else -phys_ram_base = qemu_vmalloc(phys_ram_size); -if (!phys_ram_base) { -fprintf(stderr, Could not allocate physical memory\n); -exit(1); -} +} else #endif +{ + phys_ram_base = qemu_vmalloc(phys_ram_size); + if (!phys_ram_base) { + fprintf(stderr, Could not allocate physical memory\n); + exit(1); + } +} /* we always create the cdrom drive, even if no disk is there */ bdrv_init(); -- 1.4.4.2 - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel