qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@siemens.com>
To: Michael Tokarev <mjt@tls.msk.ru>
Cc: Avi Kivity <avi@redhat.com>, Gerd Hoffmann <kraxel@redhat.com>,
	KVM list <kvm@vger.kernel.org>, Gleb Natapov <gleb@redhat.com>,
	qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] TSC in qem[-kvm] 1.1+ and in-kernel irqchip
Date: Mon, 13 Aug 2012 15:07:14 +0200	[thread overview]
Message-ID: <5028FC02.4090205@siemens.com> (raw)
In-Reply-To: <50277631.2080808@msgid.tls.msk.ru>

On 2012-08-12 11:24, Michael Tokarev wrote:
> On 12.08.2012 12:10, Gleb Natapov wrote:
> []
>> Any chance to bisect it?
> 
> The bisecion leads to this commit:
> 
> commit 17ee47418e65b1593defb30edbab33ccd47fc1f8
> Merge: 13b0496 5d17c0d
> Author: Jan Kiszka <jan.kiszka@siemens.com>
> Date:   Tue Apr 10 16:26:23 2012 +0200
> 
>     Merge commit '5d17c0d2df4998598e6002b27b8e47e792899a0f' into queues/qemu-merge
> 
>     Conflicts:
>         hw/pc.c
> 
> diff --cc Makefile.target
> index 33a7255,1bd25a8..32c8e42
> --- a/Makefile.target
> +++ b/Makefile.target
> @@@ -245,13 -244,8 +245,13 @@@ obj-i386-y += pci-hotplug.o smbios.o wd
>   obj-i386-y += debugcon.o multiboot.o
>   obj-i386-y += pc_piix.o
>   obj-i386-y += pc_sysfw.o
> - obj-i386-$(CONFIG_KVM) += kvm/clock.o kvm/apic.o kvm/i8259.o kvm/ioapic.o
> + obj-i386-$(CONFIG_KVM) += kvm/clock.o kvm/apic.o kvm/i8259.o kvm/ioapic.o kvm/i8254.o
>   obj-i386-$(CONFIG_SPICE) += qxl.o qxl-logger.o qxl-render.o
>  +obj-i386-y += testdev.o
>  +obj-i386-y += acpi.o acpi_piix4.o
>  +
>  +obj-i386-y += i8254_common.o i8254.o
>  +obj-i386-$(CONFIG_KVM_DEVICE_ASSIGNMENT) += device-assignment.o
> 
>   # shared objects
>   obj-ppc-y = ppc.o ppc_booke.o
> diff --cc hw/pc.c
> index 74c19b9,bb9867b..feb6ef3
> --- a/hw/pc.c
> +++ b/hw/pc.c
> @@@ -1116,8 -1118,12 +1122,12 @@@ void pc_basic_device_init(ISABus *isa_b
> 
>       qemu_register_boot_set(pc_boot_set, *rtc_state);
> 
> -     pit = pit_init(isa_bus, 0x40, pit_isa_irq, pit_alt_irq);
> +     if (kvm_irqchip_in_kernel()) {
> +         pit = kvm_pit_init(isa_bus, 0x40);
> +     } else {
> +         pit = pit_init(isa_bus, 0x40, pit_isa_irq, pit_alt_irq);
> +     }
>  -    if (hpet) {
>  +    if (hpet && !(kvm_enabled() && kvm_irqchip_in_kernel())) {
>           /* connect PIT to output control line of the HPET */
>           qdev_connect_gpio_out(hpet, 0, qdev_get_gpio_in(&pit->qdev, 0));
>       }
> 
> 
> 
> Note this commit itself talks about pit and irqchip.
> But I don't know what does it mean.
> 
> Cc'ing Jan for help.  The short story: tsc timer calibration
> broke in 1.1+ with in-kernel irqchip (only) for several
> apps (seabios and grub are two examples), the time is ticking
> about 100 times faster.  In grub the timer is calibrated
> using pit.  The above commit is the result of bisection.

Did the versions you tested include the commit 0cdd3d1444 (kvm: i8254:
Fix conversion of in-kernel to userspace state)?

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

  reply	other threads:[~2012-08-13 13:07 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-09 18:27 [Qemu-devel] TSC in qem[-kvm] 1.1+ and in-kernel irqchip Michael Tokarev
2012-08-09 19:06 ` Marcelo Tosatti
     [not found]   ` <20120809204748.GA32346@amt.cnet>
2012-08-09 21:36     ` Michael Tokarev
2012-08-10  7:33 ` Gleb Natapov
2012-08-10  9:24   ` Michael Tokarev
2012-08-12  8:10     ` Gleb Natapov
2012-08-12  9:24       ` Michael Tokarev
2012-08-13 13:07         ` Jan Kiszka [this message]
2012-08-13 13:16           ` Michael Tokarev
2012-08-13 13:41             ` Jan Kiszka
2012-08-13 18:18             ` [Qemu-devel] [PATCH uq/master] kvm: i8254: Finish time conversion fix Jan Kiszka
2012-08-13 18:40               ` Michael Tokarev
2012-08-14  7:41                 ` Jan Kiszka

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=5028FC02.4090205@siemens.com \
    --to=jan.kiszka@siemens.com \
    --cc=avi@redhat.com \
    --cc=gleb@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=mjt@tls.msk.ru \
    --cc=qemu-devel@nongnu.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).