[kvm-devel] [PATCH] Moving tpr-patch routine to x86 arch.
From: Zhang Xiantao [EMAIL PROTECTED] Date: Sat, 5 Jan 2008 20:20:14 +0800 Subject: [PATCH] kvm: qemu: Moving tpr-patch routine to qemu-kvm-x86.c Since tpr patching routine only needed in x86 side, moving it qemu-kvm-arch. Signed-off-by: Zhang Xiantao [EMAIL PROTECTED] --- qemu/Makefile.target |4 ++-- qemu/qemu-kvm-x86.c |8 qemu/qemu-kvm.c | 11 --- qemu/qemu-kvm.h |2 ++ 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/qemu/Makefile.target b/qemu/Makefile.target index 289cd18..88213eb 100644 --- a/qemu/Makefile.target +++ b/qemu/Makefile.target @@ -299,7 +299,7 @@ OBJS+= libqemu.a # cpu emulator library LIBOBJS=exec.o kqemu.o qemu-kvm.o translate-op.o translate-all.o cpu-exec.o\ -translate.o op.o host-utils.o qemu-kvm-helper.o kvm-tpr-opt.o +translate.o op.o host-utils.o qemu-kvm-helper.o ifdef CONFIG_SOFTFLOAT LIBOBJS+=fpu/softfloat.o else @@ -309,7 +309,7 @@ CPPFLAGS+=-I$(SRC_PATH)/fpu ifeq ($(TARGET_ARCH), i386) LIBOBJS+=helper.o helper2.o -LIBOBJS+=qemu-kvm-x86.o +LIBOBJS+=qemu-kvm-x86.o kvm-tpr-opt.o endif ifeq ($(TARGET_ARCH), x86_64) diff --git a/qemu/qemu-kvm-x86.c b/qemu/qemu-kvm-x86.c index d86fec3..c79ca36 100644 --- a/qemu/qemu-kvm-x86.c +++ b/qemu/qemu-kvm-x86.c @@ -625,4 +625,12 @@ void kvm_arch_update_regs_for_sipi(CPUState *env) env-eip = 0; kvm_arch_load_regs(env); } + +int handle_tpr_access(void *opaque, int vcpu, +uint64_t rip, int is_write) +{ +kvm_tpr_access_report(cpu_single_env, rip, is_write); +return 0; +} + #endif diff --git a/qemu/qemu-kvm.c b/qemu/qemu-kvm.c index 9aee903..8e1ba7a 100644 --- a/qemu/qemu-kvm.c +++ b/qemu/qemu-kvm.c @@ -327,7 +327,9 @@ static int kvm_main_loop_cpu(CPUState *env) env-ready_for_interrupt_injection = 1; cpu_single_env = env; +#ifdef TARGET_I386 kvm_tpr_opt_setup(env); +#endif while (1) { while (!has_work(env)) kvm_main_loop_wait(env, 10); @@ -512,13 +514,6 @@ static int kvm_shutdown(void *opaque, int vcpu) return 1; } -static int handle_tpr_access(void *opaque, int vcpu, -uint64_t rip, int is_write) -{ -kvm_tpr_access_report(cpu_single_env, rip, is_write); -return 0; -} - static struct kvm_callbacks qemu_kvm_ops = { .debug = kvm_debug, .inb = kvm_inb, @@ -535,7 +530,9 @@ static struct kvm_callbacks qemu_kvm_ops = { .try_push_interrupts = try_push_interrupts, .post_kvm_run = post_kvm_run, .pre_kvm_run = pre_kvm_run, +#ifdef TARGET_I386 .tpr_access = handle_tpr_access, +#endif }; int kvm_qemu_init() diff --git a/qemu/qemu-kvm.h b/qemu/qemu-kvm.h index ca3132a..e4aeb3a 100644 --- a/qemu/qemu-kvm.h +++ b/qemu/qemu-kvm.h @@ -45,6 +45,8 @@ extern int kvm_irqchip; void kvm_tpr_opt_setup(CPUState *env); void kvm_tpr_access_report(CPUState *env, uint64_t rip, int is_write); +int handle_tpr_access(void *opaque, int vcpu, +uint64_t rip, int is_write); #define ALIGN(x, y) (((x)+(y)-1) ~((y)-1)) #define BITMAP_SIZE(m) (ALIGN(((m)TARGET_PAGE_BITS), HOST_LONG_BITS) / 8) -- 1.5.2 0001-kvm-qemu-Moving-tpr-patch-routine-to-qemu-kvm-x86.patch Description: 0001-kvm-qemu-Moving-tpr-patch-routine-to-qemu-kvm-x86.patch - 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-59 missing resolution 1280x800
Hi, the change-log for kvm-59 listed wide-screen-support. I found resolution like 1680x1050, but the resolution 1280x800 for my 12-sub-notebook is missing. It would be nice, if you add this resolution. Greeting, Benjamin Drung - 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] agenda de cursos atualizada: janeiro / fevereiro 2008.
Olá,Feliz 2008 para você! Estou enviando nossa agenda de cursos atualizada. Atenciosamente, Walquiria Biazetto CÉREBRO & COMUNICAÇÃO - DESENVOLVIMENTO PESSOAL Curitiba - 3029-8015 / 3029-8026 / 9229-0157 ORATÓRIA – Como Falar em Público com SegurançaCurso prático. Ensina a falar com segurança em palestras, reuniões, aulas e apresentações. Cause uma boa impressão com sua postura, voz e expressões. Projete-se no seu ambiente profissional e acadêmico. Nosso diferencial: técnicas de neurolingüística para ter autoconfiança na hora de falar em público. Conteúdo completo e mais diferencias: www.cerebroecomunicacao.com.br CURSO EM CD versão 2008 para final de Janeiro. Faça sua reserva. Opções de turmas: Noite: 14 a 17 de janeiro de 2008, 2ª. à 5ª.feira, 19 às 22 h. Carga horária: 12h. Sábados: 12, 19 e 26 de janeiro de 2008. Carga horária: 12h. Manhã (8h15 às12h) ou tarde (13h30 às 17h30) conforme o maior número de reservas. 12 vagas/turma. MEMORIZAÇÃO Curso prático. Ensina a memorizar textos, assuntos de trabalho, aulas, exames, vestibulares, concursos públicos e idiomas. Destaque-se nos estudos e no trabalho. Nosso diferencial: técnicas de neurolingüística para vencer dificuldades de memorização. Conteúdo completo e mais diferenciais: www.cerebroecomunicacao.com.br CONSULTE TAMBÉM CURSO EM CD. Opções de turmas: Noite: 21 a 24 de janeiro de 2008, 2ª. à 5ª.feira,19 às 22h. Carga horária: 12h. Sábados: 12, 19 e 26 de janeiro de 2008. Carga horária: 12h. Manhã (8h15 às12h) ou tarde (13h30 às 17h30) conforme o maior número de reservas. 12 vagas/turma. PROGRAMAÇÃO NEUROLINGÜÍSTICA - CONTROLE MENTAL Curso prático de autoconhecimento. Ensina a programar a mente para ganhar autoconfiança, vencer medos, hábitos indesejados, ser mais positivo e atingir objetivos pessoais. Ensina a usar técnicas de autocontrole para reorganizar a vida em todas as áreas. Conteúdo completo e diferencias: www.cerebroecomunicacao.com.br CONSULTE TAMBÉM CURSO EM CD. Opções de turmas: Noite: 28 a 31 de janeiro de 2008, 2ª. à 5ª.feira, 19 às 22 h. Carga horária: 12h. Sábados: 12, 19 e 26 de janeiro de 2008. Carga horária: 12h. Manhã (8h15 às12h) ou tarde (13h30 às 17h30) conforme o maior número de reservas. 12 vagas/turma. LEITURA DINÂMICA COM TÉCNICAS DE ESTUDOCurso prático. Ensina a ler de modo concentrado, encontrar a essência do texto, saber interpretar, assimilar, eliminar vícios de leitura e a ler mais rápido. Nosso diferencial: técnicas de neurolingüística parater motivação na hora de ler e estudar. Conteúdo completo e mais diferenciais: www.cerebroecomunicacao.com.br Opções de turmas: Noite: 11 a 14 defevereiro de 2008, 2ª. à 5ª.feira, 19 às 22 h. Carga horária: 12h. Sábados: 12, 19 e 26 de janeiro de 2008. Manhã (8h15 às12h) ou tarde (13h30 às 17h30) conforme o maior número de reservas. 12 vagas por turma. LIDERANÇA MOTIVACIONALCurso prático. Ensina a desenvolver a habilidade de liderança, obter o máximo de si e a motivar as pessoas para conseguir o melhor delas; ensina a ser criativo e a gerar mudanças. Nosso diferencial: técnicas de neurolingüística e meditação para tranqüilizar a mente e aumentar a motivação. Conteúdo completo e mais diferencias: www.cerebroecomunicacao.com.br Opções de turmas: Noite: 18 a 21 de fevereiro de 2008, 2ª à 5ª feira, 19 às 22h. Carga horária: 12h. Sábados: 16 a 23 de fevereiro; 1º de março de 2008. Carga horária: 12h. Manhã(8h15 às 12h) ou tarde (13h30 às 1730), conforme o maior número de reservas. 12 vagas/turma. ENEAGRAMA – Melhore seu desempenho pessoal e profissionalEnsina a descobrir como o inconsciente dirige as ações, hábitos e pensamentos definindo o nosso tipo de personalidade e como despertar todo o potencial interior para o trabalho, relacionamentos, inteligência e afeto. Nosso diferencial: técnicas de neurolingüística e inteligência emocional para aumentar a motivação pessoal. Conteúdo completo e mais diferencias: www.cerebroecomunicacao.com.br Opções de turmas: Noite:25 a 28 de fevereiro de 2008, 2ª à 5ª feira, 19 às 22h. Carga horária: 12h. Sábados: 16 a 23 de fevereiro; 1º de março de 2008. Carga horária: 12h. Manhã(8h15 às 12h) ou tarde (13h30 às 1730), conforme o maior número de reservas. 12 vagas/turma. FORMAS DE PAGAMENTO À VISTA: R$ 155,00/pessoa/curso; pagamento feito no dia de início do curso. Incluído no valor: apostila, certificado e coffee-break.EM PARCELAS 2 x R$ 78,00 (R$ 156,00).3 x R$ 55,00 (R$ 165,00).PROMOÇÃO Você + 1 amigo = R$ 145,00/por pessoa.Você + 2 amigos = R$ 135,00/por pessoa.Garanta sua vaga agora! Retorne este e-mail informando seu nome, curso, turma e telefones (fixo e celular). Em breve faremos contato para a confirmação final. Informações: (41) 3029-8015 / 3029-8026/ 9229-0157Horário de atendimento: 9h às 12h / 13h30 às 17h30. CONSULTE SOBRE CURSOS QUE PODEM SER REALIZADOS NA SUA EMPRESA: Liderança Motivacional Encantar o Cliente - Qualidade no Atendimento. Equipes Vencedoras Habilidades em
Re: [kvm-devel] [PATCH] KVM: emulator: Only allow VMCALL/VMMCALL trapped by #UD
Dong, Eddie wrote: Anthony Liguori wrote: Yang, Sheng wrote: From 9743b5299bae1779c2b893cbeb86122bcccb9b2d Mon Sep 17 00:00:00 2001 From: Sheng Yang [EMAIL PROTECTED] Date: Wed, 2 Jan 2008 14:49:22 +0800 Subject: [PATCH] KVM: emulator: Only allow VMCALL/VMMCALL trapped by #UD When executing a test program called crashme, we found the KVM guest cannot survived more than ten seconds, then encounterd kernel panic. The basic concept of crashme is graduating random assembly code and trying to execute them in a fork process. After some fix on emulator valid judgment, we found it's hard to get the current emulator handle the invalid instructions correctly, for the #UD trap for hypercall patching caused troubles. The problem is, if the opcode itself was OK, but combination of opcode and modrm_reg was invalid, and one operand of the opcode was memory(SrcMem or DstMem), emulator would fetched the memory operand first rather than judged the validity, and may encounter error there. Nice catch! Regards, Anthony Liguori Anthony: Actually I am wondering if the binary used for VMMCALL could be assumed will never be used by Intel processor or vice versa. BTW, what is the nenefit to remove hypercall page, which provide more clean approach IMO? thx,eddie The benefit is that one can migrate a running guest from Intel to Amd and vise versa without any effort of the guest/host knowing that. Can you offer other binary code for vmmcall that you're sure it won't be used in the future? Regards, 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 - 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] Using a TomTom GO 720 (any USB device) with a win2k guest
I'm having trouble getting kvm/qemu (I honestly don't know where one starts and the other ends) to pass USB devices through to a win2k guest. I'm running Ubuntu Gutsy, and have tried with both the Feisty kernel I usually run (long story, SLUB is causing me other issues) and the stock Gutsy kernels (2.6.20-16-generic and 2.6.22-14-generic respectively). I used module-assistant to build the kvm modules for each. I then made sure the usb proc fs was mounted. On 2.6.22-14-generic I have kvm and kvm-intel loaded and start with: $ sudo kvm -no-acpi -usb -usbdevice host:1390:0001 -m 750 -cdrom /dev/cdrom win2k.img I get the following message repeated in the syslog: Jan 5 16:36:16 Aeon kernel: [ 4872.44] usb 5-1: usbfs: USBDEVFS_CONTROL failed cmd kvm rqt 128 rq 6 len 64 ret -110 Windows boots to the desktop and I am able to see the TomTom via the qemu monitor: (qemu) info usb Device 0.0, Speed 480 Mb/s, Product TomTom GO 720 From within win2k, the device manager shows 1 USB Device without a driver. When I try to reinstall the driver I get an error that the installation failed, and the USBDEVFS_CONTROL messages reappear in the syslog. Can anyone shed some light on what the problem might be? Does anyone have any kind of a usb device working on a win2k guest? Thanks! -- Darren Hart - 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] kvm/qemu: Fix ia64 build broken.
On Jan 01, 2007, Zhang, Xiantao wrote: Thank you for reporting this issue. I will fix it later. libqemu.a(kvm-tpr-opt.o): In function `enable_vapic': /house/cmarenas/kvm-58/qemu/kvm-tpr-opt.c:221: undefined reference to `kvm_enable_vapic' i still get this on i686 using kvm-59. (log at http://frugalware.org/~vmiklos/logs/kvm-59-1-i686.log) is this a known issue? ps: please cc me, i'm not on the list. thanks, - VMiklos pgpnDlVETqNA5.pgp Description: PGP 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] [PATCH] kvm/qemu: Fix ia64 build broken.
On Sun, Jan 06, 2008 at 02:06:00AM +0100, Miklos Vajna wrote: On Jan 01, 2007, Zhang, Xiantao wrote: Thank you for reporting this issue. I will fix it later. libqemu.a(kvm-tpr-opt.o): In function `enable_vapic': /house/cmarenas/kvm-58/qemu/kvm-tpr-opt.c:221: undefined reference to `kvm_enable_vapic' i still get this on i686 using kvm-59. (log at http://frugalware.org/~vmiklos/logs/kvm-59-1-i686.log) there has to be something wrong with your build system as from the log it seems you are using -I /include which most likely doesn't exist is this a known issue? only for ia64 Carlo - 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] KVM: emulator: Only allow VMCALL/VMMCALL trapped by #UD
Dong, Eddie wrote: Anthony: Actually I am wondering if the binary used for VMMCALL could be assumed will never be used by Intel processor or vice versa. BTW, what is the nenefit to remove hypercall page, which provide more clean approach IMO? A hypercall page doesn't help the situation with respect to migration between an AMD and Intel system. It was bad enough that Intel and AMD couldn't just agree on a common instruction in the first place. It would just be mean if you reused the other guys VMCALL instruction for something else. You guys can't be that mean, right ;-) Regards, Anthony Liguori thx,eddie - 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