Re: [PATCH 15/15] KVM: Fix racy in kvm_free_assigned_irq

2009-01-01 Thread Marcelo Tosatti
On Wed, Dec 31, 2008 at 01:43:54PM +0800, Sheng Yang wrote:
> On Wednesday 31 December 2008 00:45:51 Marcelo Tosatti wrote:
> > On Tue, Dec 30, 2008 at 10:14:09AM +0800, Sheng Yang wrote:
> > > > There is one remaining issue: kvm_assigned_dev_interrupt_work_handler
> > > > can re-enable the interrupt for KVM_ASSIGNED_DEV_GUEST_MSI case.
> > > > Perhaps you need a new flag to indicate shutdown (so the host IRQ won't
> > > > be reenabled).
> > >
> > > Is it already covered by disable_irq_no_sync() before cancel_work_sync()?
> > > I've noted this in my comment: the irq may be disabled nested(once for
> > > MSI and twice for INTx), but I think it's fine for we're going to free
> > > it.
> >
> > The problem is that the irq can be re-enabled in
> > kvm_assigned_dev_interrupt_work_handler:
> >
> >
> > context 1   |context 2
> >
> > disable_irq_nosync
> > kvm_assigned_dev_interrupt_work_handler
> > enable_irq
> > cancel_work_sync
> >
> > free_irq
> >
> 
> Um... My understanding is a little different...
> 
> Before context1 execute disable_irq_nosync(), in irq handler, 
> disable_irq_nosync() would also been executed. So only one enable_irq() is 
> not 
> really enable irq here, which can cover the window at all. That's what I 
> means 
> nested disable irq...

You're right. There have been two disable_irq calls.

OK, looks good to me.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Mouse motion lags

2009-01-01 Thread Volodymyr Buell
On Thu, Jan 1, 2009 at 11:44 PM, Todd Deshane  wrote:
> On Thu, Jan 1, 2009 at 12:05 PM, Volodymyr Buell  wrote:
>> Hi everybody,
>>
>> I switched to KVM some time ago from vmware and VB. Everything works
>> great but there are noticeable lags in mouse motion in comparison with
>> other VMs.
>> Is this a known issue? Are there any optimizations for that?
>>
>> KVM: 79
>> Distr: Ubuntu Intrepid & Jaunty
>> Command line: QEMU_AUDIO_DRV=sdl; kvm -net nic -net user -soundhw
>> es1370 -m 750 -smp 2 win.qcow
>>
>
> Try adding -usb -usbdevice tablet
>
> Hope that helps.

Unfortunately it brings yet more laggy result. It looks like mouse
filtering in first person action games but again with the delay I
mentioned before it's nearly unusable...

-- 
Thanks,
Volodymyr
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: KVM-82 failed to compile

2009-01-01 Thread Simon Gao
Simon Gao wrote:
> I am seeing following error while compiling kvm-82:
>
> In file included from /tmp/kvm-82/kernel/x86/svm.c:56:
> /tmp/kvm-82/kernel/include/linux/kvm_host.h:171: error: field
> ‘mmu_notifier’ has incomplete type
> make[4]: *** [/tmp/kvm-82/kernel/x86/svm.o] Error 1
> make[3]: *** [/tmp/kvm-82/kernel/x86] Error 2
> make[2]: *** [_module_/tmp/kvm-82/kernel] Error 2
> make[2]: Leaving directory `/usr/src/linux-2.6.27-gentoo-r7'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/tmp/kvm-82/kernel'
> make: *** [kernel] Error 2
>
> This error occurred to both  linux-2.6.26-gentoo-r4 and
> linux-2.6.27-gentoo-r7.
>
> Anyone else has such problem?
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>   
Actually this compiling problem only occurred to linux-2.6.27-gentoo-r7. 
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Mouse motion lags

2009-01-01 Thread Todd Deshane
On Thu, Jan 1, 2009 at 12:05 PM, Volodymyr Buell  wrote:
> Hi everybody,
>
> I switched to KVM some time ago from vmware and VB. Everything works
> great but there are noticeable lags in mouse motion in comparison with
> other VMs.
> Is this a known issue? Are there any optimizations for that?
>
> KVM: 79
> Distr: Ubuntu Intrepid & Jaunty
> Command line: QEMU_AUDIO_DRV=sdl; kvm -net nic -net user -soundhw
> es1370 -m 750 -smp 2 win.qcow
>

Try adding -usb -usbdevice tablet

Hope that helps.

Cheers,
Todd

-- 
Todd Deshane
http://todddeshane.net
http://runningxen.com
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


KVM-82 failed to compile

2009-01-01 Thread Simon Gao
I am seeing following error while compiling kvm-82:

In file included from /tmp/kvm-82/kernel/x86/svm.c:56:
/tmp/kvm-82/kernel/include/linux/kvm_host.h:171: error: field
‘mmu_notifier’ has incomplete type
make[4]: *** [/tmp/kvm-82/kernel/x86/svm.o] Error 1
make[3]: *** [/tmp/kvm-82/kernel/x86] Error 2
make[2]: *** [_module_/tmp/kvm-82/kernel] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.27-gentoo-r7'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/tmp/kvm-82/kernel'
make: *** [kernel] Error 2

This error occurred to both  linux-2.6.26-gentoo-r4 and
linux-2.6.27-gentoo-r7.

Anyone else has such problem?


--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Mouse motion lags

2009-01-01 Thread Volodymyr Buell
Hi everybody,

I switched to KVM some time ago from vmware and VB. Everything works
great but there are noticeable lags in mouse motion in comparison with
other VMs.
Is this a known issue? Are there any optimizations for that?

KVM: 79
Distr: Ubuntu Intrepid & Jaunty
Command line: QEMU_AUDIO_DRV=sdl; kvm -net nic -net user -soundhw
es1370 -m 750 -smp 2 win.qcow

Thanks,
Volodymyr
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] bios: Remove duplicate call to qemu_cfg_port_probe()

2009-01-01 Thread Sebastian Herbszt

qemu_cfg_port_probe is called twice in rombios32.c. Remove the second call.

- Sebastian

--- kvm-82-21-g733dc5f/bios/rombios32.c.orig 2009-01-01 17:44:44.0 +0100
+++ kvm-82-21-g733dc5f/bios/rombios32.c 2009-01-01 17:44:48.0 +0100
@@ -2201,10 +2201,6 @@ void rombios32_init(uint32_t *s3_resume_

init_smp_msrs();

-#ifdef BX_QEMU
-qemu_cfg_port = qemu_cfg_port_probe();
-#endif
-
ram_probe();

cpu_probe();

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 'virtio DMA to IO ram' error

2009-01-01 Thread Avi Kivity

Passera, Pablo R wrote:

Hi everybody,

I am trying to implement a new virtio device. I have implemented the 
new device in Qemu and I also have the correspondent virtio driver in the 
guest. But when I get data in the device and I try to put that into the 
virtqueue using virtqueue_pop, the qemu instance crash showing the error 
'virtio DMA to IO ram'. This is in the virtio_map_gpa function in virtio.c. 
Does anyone knows what this means?

Here is the code from virtio_map_gpa
.
.
static void *virtio_map_gpa(target_phys_addr_t addr, size_t size)
{
ram_addr_t off;
target_phys_addr_t addr1;

off = cpu_get_physical_page_desc(addr);
if ((off & ~TARGET_PAGE_MASK) != IO_MEM_RAM) {
fprintf(stderr, "virtio DMA to IO ram 1\n");
exit(1);
}
  


In means the virtio buffers point to memory that is not RAM, but is some 
memory-mapped I/O range or pehaps unmapped.  I suggest printing the 
physical addresses both in the guest and in qemu; something is likely 
garbled.




--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: lsi_scsi: error: Bad Status move errors with kvm-79

2009-01-01 Thread Anssi Kolehmainen
On Mon, Dec 08, 2008 at 10:27:00AM -0600, Ryan Harper wrote:
> > > * Anssi Kolehmainen  [2008-12-04 08:51]:
> > > > I have kvm environment with linux-2.6.28-rc7 x86_64 (Xeon), kvm-79 host
> > > > and bunch of Win2K3 guests. Sometimes I get 'lsi_scsi: error: Bad Status
> > > > move' from kvm (qemu) and in Windows event log "The device,
> > > > \Device\Scsi\sym_hi1, did not respond within the timeout period." These
> > > > errors come somewhat at random, usually with 10-30 second intervals when
> > > > there is enough disk usage in the guest (seems that installing Bea
> > > > Weblogic or Oracle database is pretty nice for causing these errors).
> 
> Using kvm-userspace.git (kvm-80 is equivalent w.r.t scsi level) I
> installed win2k3 sp2 with scsi as the main device, qcow2 backed file.
> Downloaded, unzipped and installed the Weblogic server.  All with no
> issues at all.  I'll give it a run against raw devices, that seems to be
> what you were using.  Any more details on how to reliably reproduce the
> issue will help me track down the bug.

Tried kvm-82 (2.6.28-rc7 kernel, kvm-82 modules) today and the same
bug still exists. I thought everything was working somewhat fine but
then Windows decided to shoot with shotgun at its own system files and I
got to spend the day recovering and then rebuilding the vm :)

I'll setup another computer and see whether I can reproduce that on another
system.

-- 
Anssi Kolehmainen
anssi.kolehmai...@iki.fi
040-5085390
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: kvm-82 messages

2009-01-01 Thread FinnTux
>> What's your qemu command line?  Host cpu type?
/usr/local/bin/qemu-system-x86_64 -name wks
2:vista -m 2048 -smp 1 -soundhw ac97 -vga cirrus -cpu qemu64 -k sv -localtime -d
rive file=/home/smr/kvm/vista.img,if=ide,cache=writethrough,boot=on -net nic,mac
addr=AC:DE:48:28:03:00,model=e1000 -net tap,ifname=br0.3.0 -pidfile /var/run/kvm
ctl/vista.pid -monitor unix:/var/run/kvmctl/vista.mon,server,nowait

CPU is Core 2 Duo E6400

> and, Vista x86 or x64?
x86
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[ANNOUNCE] kvm-driver-disc 2008-12-29 releases

2009-01-01 Thread Avi Kivity
Updated Windows virtio drivers for kvm guests can be downloaded from the 
sourceforge page.  There is support for Windows 2000, Windows XP, and 
Windows 2008.


https://sourceforge.net/project/showfiles.php?group_id=180599

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: xen-in-kvm doesn't work with kvm-81.

2009-01-01 Thread Avi Kivity

Yiyi Hu wrote:

Host info:
h...@hs ~ $ uname -a
Linux Hs 2.6.27-gentoo-r6 #1 SMP Mon Dec 15 11:43:12 CST 2008 x86_64
AMD Athlon(tm) X2 Dual Core Processor BE-2350 AuthenticAMD GNU/Linux

KVM is version 81. Installed from portage.

The guest is 64bit debian lenny, Within guest, we install the xen system.
The xen-in-kvm won't boot fine after upgraded to kvm-81.
  


Can you find the last version of kvm that worked? that will speed up 
isolating the problem.


--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: kvm-82 messages

2009-01-01 Thread Avi Kivity

Avi Kivity wrote:

FinnTux wrote:

2008/12/31 Avi Kivity :
 

What happens to vista? which variant?  Is it a regression?


Vista ultimate. Install goes fine but first boot hangs after BIOS
messages in black screen and CPU usage is at 100%.
  


What's your qemu command line?  Host cpu type?



and, Vista x86 or x64?

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: kvm-82 messages

2009-01-01 Thread Avi Kivity

FinnTux wrote:

2008/12/31 Avi Kivity :
  

What happens to vista? which variant?  Is it a regression?


Vista ultimate. Install goes fine but first boot hangs after BIOS
messages in black screen and CPU usage is at 100%.
  


What's your qemu command line?  Host cpu type?

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[GIT PULL] KVM updates for 2.6.29-rc

2009-01-01 Thread Avi Kivity
Linus, please pull from

  git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm.git kvm-updates/2.6.29

for the 2.6.29 cycle KVM updates.  These include improved NMI support,
emulator improvements, better integration with kdump and emergency reboot,
MTRR support, MSI for assigned devices, some MMU performance optimizations,
arch updates, and random fixes.

Amit Shah (4):
  KVM: x86: Fix typo in function name
  KVM: SVM: Set the 'g' bit of the cs selector for cross-vendor migration
  KVM: SVM: Set the 'busy' flag of the TR selector
  KVM: x86 emulator: Fix handling of VMMCALL instruction

Avi Kivity (13):
  KVM: VMX: Conditionally request interrupt window after injecting irq
  KVM: x86 emulator: reduce duplication in one operand emulation thunks
  KVM: x86 emulator: consolidate emulation of two operand instructions
  KVM: x86 emulator: Extract 'pop' sequence into a function
  KVM: x86 emulator: allow pop from mmio
  KVM: x86 emulator: switch 'pop reg' instruction to emulate_pop()
  KVM: x86 emulator: fix ret emulation
  KVM: x86 emulator: fix popf emulation
  KVM: Remove extraneous semicolon after do/while
  KVM: Advertise the bug in memory region destruction as fixed
  KVM: Consolidate userspace memory capability reporting into common code
  KVM: MMU: Don't treat a global pte as such if cr4.pge is cleared
  KVM: Add locking to virtual i8259 interrupt controller

Christian Borntraeger (4):
  KVM: s390: Fix refcounting and allow module unload
  KVM: s390: Fix memory leak of vcpu->run
  anon_inodes: use fops->owner for module refcount
  KVM: set owner of cpu and vm file operations

Eduardo Habkost (13):
  KVM: VMX: move vmx.h to include/asm
  KVM: SVM: move svm.h to include/asm
  KVM: VMX: move ASM_VMX_* definitions from asm/kvm_host.h to asm/vmx.h
  KVM: VMX: move cpu_has_kvm_support() to an inline on asm/virtext.h
  x86: asm/virtext.h: add cpu_vmxoff() inline function
  KVM: VMX: extract kvm_cpu_vmxoff() from hardware_disable()
  x86: cpu_emergency_vmxoff() function
  KVM: SVM: move has_svm() code to asm/virtext.h
  KVM: SVM: move svm_hardware_disable() code to asm/virtext.h
  x86: cpu_emergency_svm_disable() function
  kdump: forcibly disable VMX and SVM on machine_crash_shutdown()
  x86: disable VMX on all CPUs on reboot
  x86: KVM guest: kvm_get_tsc_khz: return khz, not lpj

Glauber Costa (2):
  x86: KVM guest: sign kvmclock as paravirt
  KVM: Really remove a slot when a user ask us so

Gleb Natapov (1):
  KVM: call kvm_arch_vcpu_reset() instead of the kvm_x86_ops callback

Guillaume Thouvenin (9):
  KVM: x86 emulator: consolidate push reg
  KVM: x86 emulator: Add decode entries for 0x04 and 0x05 opcodes (add acc, 
imm)
  KVM: allow emulator to adjust rip for emulated pio instructions
  KVM: VMX: Handle mmio emulation when guest state is invalid
  KVM: x86 emulator: Extend the opcode descriptor
  KVM: x86 emulator: add Src2 decode set
  KVM: x86 emulator: add a new "implied 1" Src decode type
  KVM: x86 emulator: add the assembler code for three operands
  KVM: x86 emulator: add the emulation of shld and shrd instructions

Hannes Eder (2):
  KVM: fix sparse warning
  KVM: VMX: fix sparse warning

Hollis Blanchard (25):
  KVM: ppc: Move 440-specific TLB code into 44x_tlb.c
  KVM: ppc: Rename "struct tlbe" to "struct kvmppc_44x_tlbe"
  KVM: ppc: combine booke_guest.c and booke_host.c
  KVM: ppc: Refactor powerpc.c to relocate 440-specific code
  ppc: Create disassemble.h to extract instruction fields
  KVM: ppc: refactor instruction emulation into generic and core-specific 
pieces
  KVM: ppc: Move the last bits of 44x code out of booke.c
  KVM: ppc: create struct kvm_vcpu_44x and introduce container_of() accessor
  KVM: ppc: adjust vcpu types to support 64-bit cores
  KVM: ppc: fix set regs to take care of msr change
  KVM: ppc: optimize kvm stat handling
  KVM: ppc: optimize find first bit
  KVM: ppc: optimize irq delivery path
  KVM: ppc: improve trap emulation
  KVM: ensure that memslot userspace addresses are page-aligned
  KVM: ppc: fix Kconfig constraints
  KVM: ppc: use MMUCR accessor to obtain TID
  KVM: ppc: use prefetchable mappings for guest memory
  KVM: ppc: fix userspace mapping invalidation on context switch
  KVM: ppc: support large host pages
  powerpc/44x: declare tlb_44x_index for use in C code
  KVM: ppc: directly insert shadow mappings into the hardware TLB
  KVM: ppc: save and restore guest mappings on context switch
  KVM: ppc: Implement in-kernel exit timing statistics
  KVM: ppc: mostly cosmetic updates to the exit timing accounting code

Izik Eidus (1):
  KVM: MMU: Fix aliased gfns treated as unaliased

Jan Kiszka (17):
  KVM: VMX: include all IRQ window exits in statistics
  KVM: