All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@siemens.com>
To: Gleb Natapov <gleb@redhat.com>
Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>, kvm@vger.kernel.org
Subject: Re: [PATCH 05/15] Coalesce userspace/kernel irqchip interrupt	injection logic.
Date: Wed, 15 Apr 2009 12:51:00 +0200	[thread overview]
Message-ID: <49E5BC14.6070703@siemens.com> (raw)
In-Reply-To: <20090415103648.GD27675@redhat.com>

Gleb Natapov wrote:
> On Wed, Apr 15, 2009 at 12:22:34PM +0200, Jan Kiszka wrote:
>> Gleb Natapov wrote:
>>> On Wed, Apr 15, 2009 at 01:30:29PM +0400, Dmitry Eremin-Solenikov wrote:
>>>> 2009/4/14 Gleb Natapov <gleb@redhat.com>:
>>>>> On Tue, Apr 14, 2009 at 11:29:49PM +0400, Dmitry Eremin-Solenikov wrote:
>>>>>> 2009/4/14 Gleb Natapov <gleb@redhat.com>:
>>>>>>> On Tue, Apr 14, 2009 at 06:32:29PM +0400, Dmitry Eremin-Solenikov wrote:
>>>>>>>> 2009/4/14 Gleb Natapov <gleb@redhat.com>:
>>>>>>>>> On Tue, Apr 14, 2009 at 02:14:04PM +0000, Dmitry Eremin-Solenikov wrote:
>>>>>>>>>> Gleb Natapov wrote:
>>>>>>>>>>
>>>>>>>>>>> Start to use interrupt/exception queues like VMX does. This also fix the
>>>>>>>>>>> bug that if exit was caused by a guest internal exception access to IDT
>>>>>>>>>>> the exception was not reinjected.
>>>>>>>>>> This patch broke KVM for me: after it is applied (to the tip of avi's git tree),
>>>>>>>>>> linux inside KVM (version 84 from Debian) stops booting, moaning about lost
>>>>>>>>>> interrupts from ide. The KVM is executed inside qemu-system-x86_64,
>>>>>>>>>> version 0.10.2.
>>>>>>>>>>
>>>>>>>>> Please apply next patch in the series too. This one will not work
>>>>>>>>> without it. But better yet can you please test entire series.
>>>>>>>> After applying the next patch (or the whole serie), I get the following messages
>>>>>>>> during initramfs drivers probe:
>>>>>>>>
>>>>>>>> Clocksource tsc unstable (delta...)
>>>>>>>> no cont in shutdown!
>>>>>>>> floppy0: FDC access conflict!
>>>>>>>>
>>>>>>>> Then kernel boot stalls. I'll try gdbing into kernel but this may
>>>>>>>> require lots of efforts.
>>>>>>>> I don't quite understand how do these two patches influence FDC emulation, but
>>>>>>>> they do. Tell me if you need any additional info.
>>>>>>>>
>>>>>>> What guest is this? What kernel? Does the whole series works?
>>>>>> Guest: Debian lenny. Linux 2.6.26, Debian version (I can provide
>>>>>> config or bzImage + initrd).
>>>>> Yes please provide. Debian lenny (x86_64) is my default guest :) And I
>>>>> just booted it fine on AMD barcelona CPU.  What is you host cpu?
>>>>> "cat /proc/cpuinfo"
>>>> qemu-x86_64 version 0.10.2 running on i386
>>>> Due to problems with qemu-x86_64 I have to boot the 'host' kernel with 'noapic'.
>>>> qemu-64:~# cat /proc/cpuinfo
>>>> processor       : 0
>>>> vendor_id       : AuthenticAMD
>>>> cpu family      : 6
>>>> model           : 2
>>>> model name      : QEMU Virtual CPU version 0.10.2
>>>> stepping        : 3
>>>> cpu MHz         : 1828.754
>>>> cache size      : 512 KB
>>>> fpu             : yes
>>>> fpu_exception   : yes
>>>> cpuid level     : 2
>>>> wp              : yes
>>>> flags           : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca
>>>> cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx lm 3dnowext 3dnow
>>>> up pni svm
>>>> bogomips        : 3700.32
>>>> TLB size        : 1024 4K pages
>>>> clflush size    : 64
>>>> cache_alignment : 64
>>>> address sizes   : 40 bits physical, 48 bits virtual
>>>> power management:
>>>>
>>>>
>>> I need _host_ cpu info. Do the same on the host please.
>> That _is_ his host - qemu in emulation mode (ie. nested virtualization).
> Ah, now I noticed svm in cpu flags. Does qemu support svm in TCG?

Yes, and KVM seems to have been fine without the patch. But that may not
exclude remaining bugs in QEMU (as first-level hypervisor here).

On the other hand, it wouldn't be the first time QEMU, with its extreme
delays, triggers some nasty race in its guest...

> 
>> Maybe there is an issue with qemu's emulation of svm or, rather, with
>> the apic emulation. The fact that he has to boot the first-level guest
>> with noapic is fairly suspicious.
>>
>> Dmitry, what is your first level-guest distro/kernel, also Lenny? And
>> what is the top-level qemu command line? Let's focus on this first,
>> leaving KVM and this patch series aside for a while.
>>
> If KVM runs inside a guest that is definitely a good idea :)
> 
> --
> 			Gleb.

Jan

-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux

  reply	other threads:[~2009-04-15 10:51 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-13  9:55 [PATCH 00/15] interrupt injection rework Gleb Natapov
2009-04-13  9:55 ` [PATCH 01/15] Make kvm_cpu_(has|get)_interrupt() work for userspace irqchip too Gleb Natapov
2009-04-13  9:55 ` [PATCH 02/15] Consolidate userspace and kernel interrupt injection for VMX Gleb Natapov
2009-04-13  9:55 ` [PATCH 03/15] Cleanup vmx_intr_assist() Gleb Natapov
2009-04-13  9:55 ` [PATCH 04/15] Use kvm_arch_interrupt_allowed() instead of checking interrupt_window_open directly Gleb Natapov
2009-04-13  9:55 ` [PATCH 05/15] Coalesce userspace/kernel irqchip interrupt injection logic Gleb Natapov
2009-04-14 14:14   ` Dmitry Eremin-Solenikov
2009-04-14 14:24     ` Gleb Natapov
2009-04-14 14:32       ` Dmitry Eremin-Solenikov
2009-04-14 14:55         ` Gleb Natapov
2009-04-14 15:38           ` Gleb Natapov
2009-04-14 19:29           ` Dmitry Eremin-Solenikov
2009-04-14 19:41             ` Gleb Natapov
2009-04-15  6:11               ` Gleb Natapov
2009-04-15  9:30               ` Dmitry Eremin-Solenikov
2009-04-15  9:39                 ` Gleb Natapov
2009-04-15 10:22                   ` Jan Kiszka
2009-04-15 10:36                     ` Gleb Natapov
2009-04-15 10:51                       ` Jan Kiszka [this message]
2009-04-15 10:57                         ` Gleb Natapov
2009-04-15  9:44                 ` Gleb Natapov
2009-04-15 11:11                   ` Dmitry Eremin-Solenikov
2009-04-15 11:26                     ` Jan Kiszka
2009-04-15 11:53                       ` Dmitry Eremin-Solenikov
2009-04-15 11:58                         ` Dmitry Eremin-Solenikov
2009-04-15 12:01                         ` Gleb Natapov
2009-04-15 12:02                           ` Dmitry Eremin-Solenikov
2009-04-15 12:03                         ` Jan Kiszka
2009-04-15 12:39                           ` Dmitry Eremin-Solenikov
2009-04-15 12:48                             ` Jan Kiszka
2009-04-14 16:10       ` Avi Kivity
2009-04-14 16:18         ` Gleb Natapov
2009-04-17 12:39   ` Jan Kiszka
2009-04-17 12:50     ` Jan Kiszka
2009-04-17 14:13   ` Dmitry Eremin-Solenikov
2009-04-18  9:16     ` Jan Kiszka
2009-04-18 16:28       ` Gleb Natapov
2009-04-19 13:57         ` Gleb Natapov
2009-04-19 14:05           ` Jan Kiszka
2009-04-19 14:05             ` [Qemu-devel] " Jan Kiszka
2009-04-19 14:28             ` Gleb Natapov
2009-04-19 14:28               ` [Qemu-devel] " Gleb Natapov
2009-04-19 15:06             ` Jan Kiszka
2009-04-19 15:06               ` [Qemu-devel] " Jan Kiszka
2009-04-19 15:20               ` Gleb Natapov
2009-04-19 15:20                 ` [Qemu-devel] " Gleb Natapov
2009-04-18  9:05   ` Jan Kiszka
2009-04-18 16:20     ` Gleb Natapov
2009-04-19  8:52     ` Avi Kivity
2009-04-13  9:55 ` [PATCH 06/15] Use EVENTINJ to inject interrupts Gleb Natapov
2009-04-13  9:55 ` [PATCH 07/15] Remove exception_injected() callback Gleb Natapov
2009-04-13  9:55 ` [PATCH 08/15] Remove inject_pending_vectors() callback Gleb Natapov
2009-04-13  9:55 ` [PATCH 09/15] kvm_push_irq() no longer used Gleb Natapov
2009-04-13  9:55 ` [PATCH 10/15] sync_lapic_to_cr8() should always sync cr8 to V_TPR Gleb Natapov
2009-04-13  9:55 ` [PATCH 11/15] Do not report TPR write to userspace if new value bigger or equal to a previous one Gleb Natapov
2009-04-13  9:55 ` [PATCH 12/15] Get rid of arch.interrupt_window_open & arch.nmi_window_open Gleb Natapov
2009-04-13  9:55 ` [PATCH 13/15] Add NMI injection support to SVM Gleb Natapov
2009-04-17 11:59   ` Jan Kiszka
2009-04-17 15:12   ` Dmitry Eremin-Solenikov
2009-04-19 13:11     ` Gleb Natapov
2009-04-20 12:08       ` Dmitry Eremin-Solenikov
2009-04-20 15:50       ` Jan Kiszka
2009-04-21 14:07         ` Gleb Natapov
2009-04-17 19:13   ` Dmitry Eremin-Solenikov
2009-04-17 19:53     ` Jan Kiszka
2009-04-18  9:08       ` Jan Kiszka
2009-04-17 19:55   ` Jan Kiszka
2009-04-19  8:57     ` Avi Kivity
2009-04-19  9:12       ` Jan Kiszka
2009-04-19 13:17     ` Gleb Natapov
2009-04-19 13:21       ` Avi Kivity
2009-04-19 13:24         ` Gleb Natapov
2009-04-19 13:28           ` Avi Kivity
2009-04-19 13:40             ` Gleb Natapov
2009-04-19 13:43               ` Jan Kiszka
2009-04-19 13:49                 ` Avi Kivity
2009-04-19 13:51                   ` Gleb Natapov
2009-04-19 13:59                   ` Jan Kiszka
2009-04-19 13:27       ` Jan Kiszka
2009-04-19 13:32         ` Gleb Natapov
2009-04-19 13:40           ` Jan Kiszka
2009-04-19 13:40           ` Avi Kivity
2009-04-19 13:41             ` Gleb Natapov
2009-04-19 13:43               ` Avi Kivity
2009-04-19 13:44                 ` Gleb Natapov
2009-04-19 14:07                   ` Julian Stecklina
2009-04-19 14:13                     ` Gleb Natapov
2009-04-19 14:20                       ` Avi Kivity
2009-04-19 14:29                         ` Gleb Natapov
2009-04-19 14:57                           ` Avi Kivity
2009-04-19 16:36                             ` Gleb Natapov
2009-04-13  9:55 ` [PATCH 14/15] Move interrupt injection logic to x86.c Gleb Natapov
2009-04-14  7:22   ` Gleb Natapov
2009-04-13  9:55 ` [PATCH 15/15] Get rid of get_irq() callback Gleb Natapov
2009-04-13 11:51 ` [PATCH 00/15] interrupt injection rework Avi Kivity
2009-04-14  3:20   ` Sheng Yang
2009-04-14  5:20     ` Gleb Natapov
2009-04-14 15:33 ` Joerg Roedel
2009-04-14 15:37   ` Gleb Natapov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49E5BC14.6070703@siemens.com \
    --to=jan.kiszka@siemens.com \
    --cc=dbaryshkov@gmail.com \
    --cc=gleb@redhat.com \
    --cc=kvm@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.