Re: [kvm-devel] trivial Makefile patch + problem report
> Subject: Re: [kvm-devel] trivial Makefile patch + problem report > > Actually ... this does not seem to be a kvm issue at all! > > I just rebooted my system to try again, and I started a qemu guest and > got the spew of rtc lost interrupt messages. But I also noticed: > > Could not initialize KVM, will disable KVM support > > and in fact I had forgotten to load the kvm module! > > So somehow qemu's tap networking is causing a problem it seems... I find it hard to believe, can you test qemu with user mode networking and see what happens? > > - > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDE V > ___ > kvm-devel mailing list > kvm-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/kvm-devel - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Add loglevels to all printk()s
Roland Dreier wrote: > Here's a trivial patch that adds log levels to all printks. This > avoids ugly things like > > Message from [EMAIL PROTECTED] at Wed Nov 29 14:01:01 2006 ... > roland-xeon-2 kernel: [81842.565619] msrs: 6 > > popping up in a console on my system when starting a guest. > Applied, thanks. Please add signed-off-by's in the future, even to trivial patches. -- error compiling committee.c: too many arguments to function - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] KVM: More i386 fixes
From: Ingo Molnar <[EMAIL PROTECTED]> Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> diff -X /home/avi/kvm/linux-2.6/Documentation/dontdiff --exclude=Makefile -ru /home/avi/kvm/linux-2.6/drivers/kvm/kvm.h /home/avi/kvm-release/kernel/kvm.h --- linux-2.6/drivers/kvm/kvm.h 2006-11-29 17:50:23.0 +0200 +++ linux-2.6/drivers/kvm/kvm.h 2006-11-29 17:59:51.0 +0200 @@ -299,7 +299,7 @@ void (*set_rflags)(struct kvm_vcpu *vcpu, unsigned long rflags); void (*invlpg)(struct kvm_vcpu *vcpu, gva_t addr); - void (*flush_tlb)(struct kvm_vcpu *vcpu); + void (*tlb_flush)(struct kvm_vcpu *vcpu); void (*inject_page_fault)(struct kvm_vcpu *vcpu, unsigned long addr, u32 err_code); diff -X /home/avi/kvm/linux-2.6/Documentation/dontdiff --exclude=Makefile -ru /home/avi/kvm/linux-2.6/drivers/kvm/kvm_main.c /home/avi/kvm-release/kernel/kvm_main.c --- linux-2.6/drivers/kvm/kvm_main.c2006-11-29 17:52:17.0 +0200 +++ linux-2.6/drivers/kvm/kvm_main.c2006-11-29 17:59:51.0 +0200 @@ -725,7 +725,7 @@ if (!vcpu) continue; - kvm_arch_ops->flush_tlb(vcpu); + kvm_arch_ops->tlb_flush(vcpu); vcpu_put(vcpu); } } diff -X /home/avi/kvm/linux-2.6/Documentation/dontdiff --exclude=Makefile -ru /home/avi/kvm/linux-2.6/drivers/kvm/mmu.c /home/avi/kvm-release/kernel/mmu.c --- linux-2.6/drivers/kvm/mmu.c 2006-11-29 17:50:22.0 +0200 +++ linux-2.6/drivers/kvm/mmu.c 2006-11-29 17:59:51.0 +0200 @@ -324,7 +324,7 @@ if (is_paging(vcpu)) root |= (vcpu->cr3 & (CR3_PCD_MASK | CR3_WPT_MASK)); kvm_arch_ops->set_cr3(vcpu, root); - kvm_arch_ops->flush_tlb(vcpu); + kvm_arch_ops->tlb_flush(vcpu); } static gpa_t nonpaging_gva_to_gpa(struct kvm_vcpu *vcpu, gva_t vaddr) @@ -408,7 +408,7 @@ release_pt_page_64(vcpu, page->page_hpa, 1); } ++kvm_stat.tlb_flush; - kvm_arch_ops->flush_tlb(vcpu); + kvm_arch_ops->tlb_flush(vcpu); } static void paging_new_cr3(struct kvm_vcpu *vcpu) @@ -516,7 +516,7 @@ table[index] = 0; release_pt_page_64(vcpu, page_addr, PT_PAGE_TABLE_LEVEL); - kvm_arch_ops->flush_tlb(vcpu); + kvm_arch_ops->tlb_flush(vcpu); return; } } diff -X /home/avi/kvm/linux-2.6/Documentation/dontdiff --exclude=Makefile -ru /home/avi/kvm/linux-2.6/drivers/kvm/svm.c /home/avi/kvm-release/kernel/svm.c --- linux-2.6/drivers/kvm/svm.c 2006-11-29 17:50:23.0 +0200 +++ linux-2.6/drivers/kvm/svm.c 2006-11-29 17:59:51.0 +0200 @@ -115,7 +115,7 @@ asm volatile (SVM_INVLPGA :: "a"(addr), "c"(asid)); } -static inline unsigned long read_cr2(void) +static inline unsigned long kvm_read_cr2(void) { unsigned long cr2; @@ -123,7 +123,7 @@ return cr2; } -static inline void write_cr2(unsigned long val) +static inline void kvm_write_cr2(unsigned long val) { asm volatile ("mov %0, %%cr2" :: "r" (val)); } @@ -1129,9 +1129,11 @@ static int svm_set_msr(struct kvm_vcpu *vcpu, unsigned ecx, u64 data) { switch (ecx) { +#ifdef __x86_64__ case MSR_EFER: set_efer(vcpu, data); break; +#endif case MSR_IA32_MC0_STATUS: printk(KERN_WARNING "%s: MSR_IA32_MC0_STATUS 0x%llx, nop\n" , __FUNCTION__, data); @@ -1367,7 +1369,7 @@ fs_selector = read_fs(); gs_selector = read_gs(); ldt_selector = read_ldt(); - vcpu->svm->host_cr2 = read_cr2(); + vcpu->svm->host_cr2 = kvm_read_cr2(); vcpu->svm->host_dr6 = read_dr6(); vcpu->svm->host_dr7 = read_dr7(); vcpu->svm->vmcb->save.cr2 = vcpu->cr2; @@ -1384,7 +1386,7 @@ "push %%r8; push %%r9; push %%r10; push %%r11;" "push %%r12; push %%r13; push %%r14; push %%r15;" #else - "push %%ebx; push %%rcx push %%edx;" + "push %%ebx; push %%ecx; push %%edx;" "push %%esi; push %%edi; push %%ebp;" #endif @@ -1462,9 +1464,9 @@ [rdx]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_RDX])), [rsi]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_RSI])), [rdi]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_RDI])), - [rbp]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_RBP])), + [rbp]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_RBP])) #ifdef __x86_64__ - [r8 ]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_R8 ])), + ,[r8 ]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_R8 ])), [r9 ]"i"(offsetof(struct kvm_vcpu, regs[VCPU_REGS_R9 ])), [r10]"i"(offsetof(struct
[kvm-devel] [PATCH] KVM: printk log levels
From: Roland Drier <[EMAIL PROTECTED]> Here's a trivial patch that adds log levels to all printks. This avoids ugly things like Message from [EMAIL PROTECTED] at Wed Nov 29 14:01:01 2006 ... roland-xeon-2 kernel: [81842.565619] msrs: 6 popping up in a console on my system when starting a guest. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> Index: linux-2.6/drivers/kvm/vmx.c === --- linux-2.6.orig/drivers/kvm/vmx.c +++ linux-2.6/drivers/kvm/vmx.c @@ -1153,7 +1153,7 @@ static int vmx_vcpu_setup(struct kvm_vcp vcpu->guest_msrs[j] = vcpu->host_msrs[j]; ++vcpu->nmsrs; } - printk("msrs: %d\n", vcpu->nmsrs); + printk(KERN_DEBUG "kvm: msrs: %d\n", vcpu->nmsrs); nr_good_msrs = vcpu->nmsrs - NR_BAD_MSRS; vmcs_writel(VM_ENTRY_MSR_LOAD_ADDR, Index: linux-2.6/drivers/kvm/svm.c === --- linux-2.6.orig/drivers/kvm/svm.c +++ linux-2.6/drivers/kvm/svm.c @@ -990,7 +990,7 @@ static int io_interception(struct kvm_vc addr_mask = io_adress(vcpu, _in, &kvm_run->io.address); if (!addr_mask) { - printk("%s: get io address failed\n", __FUNCTION__); + printk(KERN_DEBUG "%s: get io address failed\n", __FUNCTION__); return 1; } @@ -1030,7 +1030,7 @@ static int invalid_op_interception(struc static int task_switch_interception(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run) { - printk("%s: task swiche is unsupported\n", __FUNCTION__); + printk(KERN_DEBUG "%s: task swiche is unsupported\n", __FUNCTION__); kvm_run->exit_reason = KVM_EXIT_UNKNOWN; return 0; } - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] inter-VM communication?
On 11/30/06, Dor Laor <[EMAIL PROTECTED]> wrote: > > Hi, > > > > Do we have any inter-VM communication technique in KVM (something for > > example like event-channel in Xen) ? > > > > Thanks, > > Jun > > Currently there is full isolation of the guests. > Such mechanism would not be complicated to add since we anyway map > memory from user space & inject interrupt from there also. > Do you have any specific interest in inter VM channel? I want to exchange some data between a VM and hypervisor. One solution is to map some memory of that VM (from hypervisor), and read/write data thru that memory area. However, I need to a mechanism to notify the other partner when data is ready to read/write. Without any inter-VM communication mechanism, I dont see any clean way to achieve this. Any idea? Thanks, Jun - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] inter-VM communication?
Jun Koi wrote: > On 11/30/06, Dor Laor <[EMAIL PROTECTED]> wrote: > >>> Hi, >>> >>> Do we have any inter-VM communication technique in KVM (something for >>> example like event-channel in Xen) ? >>> >>> Thanks, >>> Jun >>> >> Currently there is full isolation of the guests. >> Such mechanism would not be complicated to add since we anyway map >> memory from user space & inject interrupt from there also. >> Do you have any specific interest in inter VM channel? >> > > I want to exchange some data between a VM and hypervisor. One solution > is to map some memory of that VM (from hypervisor), and read/write > data thru that memory area. However, I need to a mechanism to notify > the other partner when data is ready to read/write. > > Without any inter-VM communication mechanism, I dont see any clean way > to achieve this. Any idea? > Write a pci device for qemu to do what you want. The pci device can communicate through a unix domain socket, shared memory, or any other ipc mechanism with any other process on the host (including other virtual machines). Guest->host communication is performed by writing the device's mmio registers. Host->guest communications are done by raising a virtual interrupt. -- error compiling committee.c: too many arguments to function - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] inter-VM communication?
> Jun Koi wrote: > > On 11/30/06, Dor Laor <[EMAIL PROTECTED]> wrote: > > > >>> Hi, > >>> > >>> Do we have any inter-VM communication technique in KVM (something for > >>> example like event-channel in Xen) ? > >>> > >>> Thanks, > >>> Jun > >>> > >> Currently there is full isolation of the guests. > >> Such mechanism would not be complicated to add since we anyway map > >> memory from user space & inject interrupt from there also. > >> Do you have any specific interest in inter VM channel? > >> > > > > I want to exchange some data between a VM and hypervisor. One solution > > is to map some memory of that VM (from hypervisor), and read/write > > data thru that memory area. However, I need to a mechanism to notify > > the other partner when data is ready to read/write. > > > > Without any inter-VM communication mechanism, I dont see any clean way > > to achieve this. Any idea? > > > > Write a pci device for qemu to do what you want. The pci device can > communicate through a unix domain socket, shared memory, or any other > ipc mechanism with any other process on the host (including other > virtual machines). > > Guest->host communication is performed by writing the device's mmio > registers. Host->guest communications are done by raising a virtual > interrupt. If you would like a reference for writing such device, there was a thread in the Qemu mailing list about such interface: http://lists.gnu.org/archive/html/qemu-devel/2006-11/msg00149.html Such an interface is on the roadmap but quick patches would certainly help :) > > -- > error compiling committee.c: too many arguments to function - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] KVM: Fix mov to/from control register emulation, with r8-r15 as gpr
Use the standrd modrm decoder instead of special casing these instructions. This fixes mov %rX, %crY with X >= 8 or Y >= 8. The fix only applies to AMD SVM, as Intel vmx decodes the instruction for us. It cures the FC5 installer crashing when loading the xor module. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> Index: linux-2.6/drivers/kvm/x86_emulate.c === --- linux-2.6.orig/drivers/kvm/x86_emulate.c +++ linux-2.6/drivers/kvm/x86_emulate.c @@ -155,7 +155,8 @@ static u8 twobyte_table[256] = { /* 0x10 - 0x1F */ 0, 0, 0, 0, 0, 0, 0, 0, ImplicitOps | ModRM, 0, 0, 0, 0, 0, 0, 0, /* 0x20 - 0x2F */ - ImplicitOps, ModRM, ImplicitOps, ModRM, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + ModRM | ImplicitOps, ModRM, ModRM | ImplicitOps, ModRM, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, /* 0x30 - 0x3F */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x40 - 0x47 */ @@ -1295,17 +1296,14 @@ twobyte_special_insn: emulate_clts(ctxt->vcpu); break; case 0x20: /* mov cr, reg */ - b = insn_fetch(u8, 1, _eip); - if ((b & 0xc0) != 0xc0) + if (modrm_mod != 3) goto cannot_emulate; - _regs[b & 7] = realmode_get_cr(ctxt->vcpu, (b >> 3) & 7); + _regs[modrm_rm] = realmode_get_cr(ctxt->vcpu, modrm_reg); break; case 0x22: /* mov reg, cr */ - b = insn_fetch(u8, 1, _eip); - if ((b & 0xc0) != 0xc0) + if (modrm_mod != 3) goto cannot_emulate; - realmode_set_cr(ctxt->vcpu, (b >> 3) & 7, _regs[b & 7] & -1u, - &_eflags); + realmode_set_cr(ctxt->vcpu, modrm_reg, modrm_val, &_eflags); break; case 0xc7: /* Grp9 (cmpxchg8b) */ #if defined(__i386__) - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] KVM: Zero guest memory before use
This prevents an information leak from the host to the vmm and the guest. Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> diff -X /home/avi/kvm/linux-2.6/Documentation/dontdiff --exclude=Makefile -ru /home/avi/kvm/linux-2.6/drivers/kvm/kvm_main.c /home/avi/kvm-release/kernel/kvm_main.c --- linux-2.6/drivers/kvm/kvm_main.c2006-11-30 10:59:57.0 +0200 +++ linux-2.6/drivers/kvm/kvm_main.c2006-11-30 14:26:29.0 +0200 @@ -620,7 +620,8 @@ memset(new.phys_mem, 0, npages * sizeof(struct page *)); for (i = 0; i < npages; ++i) { - new.phys_mem[i] = alloc_page(GFP_HIGHUSER); + new.phys_mem[i] = alloc_page(GFP_HIGHUSER +| __GFP_ZERO); if (!new.phys_mem[i]) goto out_free; } - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] [PATCH] KVM: x86 emulator: handle smsw
This allows FreeBSD 6.2rc1 to boot. Also, don't pretend to support lmsw (mem). Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> Index: linux-2.6/drivers/kvm/x86_emulate.c === --- linux-2.6.orig/drivers/kvm/x86_emulate.c +++ linux-2.6/drivers/kvm/x86_emulate.c @@ -1166,7 +1166,15 @@ twobyte_insn: goto done; realmode_lidt(ctxt->vcpu, size, address); break; + case 4: /* smsw */ + if (modrm_mod != 3) + goto cannot_emulate; + *(u16 *)&_regs[modrm_rm] + = realmode_get_cr(ctxt->vcpu, 0); + break; case 6: /* lmsw */ + if (modrm_mod != 3) + goto cannot_emulate; realmode_lmsw(ctxt->vcpu, (u16)modrm_val, &_eflags); break; case 7: /* invlpg*/ - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH 1/38] KVM: Create kvm-intel.ko module
On Mon, Nov 27, 2006 at 01:36:06PM +0100, Ingo Molnar wrote: > > * Avi Kivity <[EMAIL PROTECTED]> wrote: > > > --- linux-2.6.orig/drivers/kvm/kvm.h > > +++ linux-2.6/drivers/kvm/kvm.h > > please move this from drivers/kvm/ to kernel/kvm/ [or even into a > toplevel kvm/ directory] - KVM is not a "driver", KVM enhances the core > Linux kernel with hypervisor functionality. Actually it's exactly a driver. It's a character driver that exposes the virtualization features of modern x86 hardware. Pretty similar to things like the msr or mtrr driver that expose cpu features as character drivers aswell. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] trivial Makefile patch + problem report
> I find it hard to believe, can you test qemu with user mode networking > and see what happens? If I remove "-net tap" from my qemu command line I don't get any of the rtc messages. - R. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH] Add loglevels to all printk()s
> Applied, thanks. Please add signed-off-by's in the future, even to > trivial patches. Will do. I wasn't aware you were tracking s-o-b lines, since I didn't see any in your revision log. - R. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH 1/38] KVM: Create kvm-intel.ko module
* Christoph Hellwig <[EMAIL PROTECTED]> wrote: > > please move this from drivers/kvm/ to kernel/kvm/ [or even into a > > toplevel kvm/ directory] - KVM is not a "driver", KVM enhances the > > core Linux kernel with hypervisor functionality. > > Actually it's exactly a driver. It's a character driver that exposes > the virtualization features of modern x86 hardware. [...] you are fundamentally wrong. In the end KVM is a fundamental and complex infrastructure that enables Linux to provide full hardware capabilities to another OS via the resources of this OS. This concept justifies a system call and a place in linux/kernel/. It's not fundamentally limited to x86 either. Full virtualization (and paravirtualization) makes sense on any platform. And there's no reason KVM be limited to full virtualization alone - both paravirtualization and accelerated guest drivers need a sane hypercall API. > [...] Pretty similar to things like the msr or mtrr driver that expose > cpu features as character drivers aswell. you can expose everything as character drivers and ioctls, but that doesnt make it the right solution. It might /start out/ as a driver, because that's an easy to hack model, but the moment something becomes important enough (and virtualization certainly is such a model) it demands a system call. Just like inotify started out as an ioctl hack, but then was (rightfully) moved to the system-call space. [ Which btw. was on your request ;-) ] Ingo - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
[kvm-devel] Startup problem under Fedora: emulation failed but !mmio_needed?
Just wondering if anyone's seen this before, or knows what it is: OS is recent Fedora with various updates, kernel is upstream 2.6.19-rc6-mm2. # /usr/local/kvm/bin/qemu-system-x86_64 -hda vdisk.img -cdrom diskboot.img -boot d -m 384 -nographic (qemu) set_vram_mapping: memory: e000 - e080 set_vram_mapping: return 0x2b746f1c3000 vga_update_vram: base 0x2b746f1c3000 ptr 0x2b746e9c1010 vga_update_vram: done exception 13 (0) Aborted Syslog says: Nov 30 12:48:59 halo kernel: msrs: 6 Nov 30 12:49:00 halo kernel: emulation failed but !mmio_needed? rip a45 f4 eb fd 89 - James -- James Morris <[EMAIL PROTECTED]> - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH 1/38] KVM: Create kvm-intel.ko module
On Thu, 30 Nov 2006 16:44:25 +0100 Ingo Molnar <[EMAIL PROTECTED]> wrote: > > [...] Pretty similar to things like the msr or mtrr driver that expose > > cpu features as character drivers aswell. > > you can expose everything as character drivers and ioctls, but that > doesnt make it the right solution. It might /start out/ as a driver, > because that's an easy to hack model, but the moment something becomes > important enough (and virtualization certainly is such a model) it > demands a system call. Actually fourteen syscalls and counting, and some of those have `mode' arguments. It's a fat, complex, presumably arch-specific, presumably frequently-changing API. So whatever we do will be unpleasant - that's unavoidable in this case, I suspect. (hmm, the interface isn't versioned at present - should it be?) Maybe, perhaps, one day it _should_ be a syscall API. But right now if we did that it would become a versioned syscall API with obsolete slots and various other warts. I get the feeling we'd be best off if we were to revisit this in a year or so. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH 1/38] KVM: Create kvm-intel.ko module
* Andrew Morton <[EMAIL PROTECTED]> wrote: > It's a fat, complex, presumably arch-specific, presumably > frequently-changing API. So whatever we do will be unpleasant - > that's unavoidable in this case, I suspect. > > (hmm, the interface isn't versioned at present - should it be?) > > Maybe, perhaps, one day it _should_ be a syscall API. But right now > if we did that it would become a versioned syscall API with obsolete > slots and various other warts. yeah, very much agreed. For example the paravirtualization/accelerator downcalls/upcalls in KVM dont exist yet, so there's little to standardize. Once we see it from lhype & KVM how these things look like we can design a sane kernel interface around it. But i'm against the notion that KVM is 'just' a device. It's not, and it /will/ grow into something fundamental. > I get the feeling we'd be best off if we were to revisit this in a > year or so. yeah. I'd suggest merging it as-is into v2.6.20. In a year we'll have some real APIs to think about. Ingo - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH 1/38] KVM: Create kvm-intel.ko module
On Thu, Nov 30, 2006 at 09:19:35PM +0100, Ingo Molnar wrote: > > I get the feeling we'd be best off if we were to revisit this in a > > year or so. > > yeah. I'd suggest merging it as-is into v2.6.20. In a year we'll have > some real APIs to think about. Agreed. And because of that I think keeping it in drivers/ for now makes a lot of sense - it's just a driver we can deprecate if/when things have evolved into a real infrastructure. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel
Re: [kvm-devel] [PATCH 1/38] KVM: Create kvm-intel.ko module
* Christoph Hellwig <[EMAIL PROTECTED]> wrote: > On Thu, Nov 30, 2006 at 09:19:35PM +0100, Ingo Molnar wrote: > > > I get the feeling we'd be best off if we were to revisit this in a > > > year or so. > > > > yeah. I'd suggest merging it as-is into v2.6.20. In a year we'll > > have some real APIs to think about. > > Agreed. And because of that I think keeping it in drivers/ for now > makes a lot of sense - it's just a driver we can deprecate if/when > things have evolved into a real infrastructure. yeah, with that understanding there's zero objections from me. Ingo - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel