From: Jan Kiszka <jan.kiszka@siemens.com>
To: "Liu, Jinsong" <jinsong.liu@intel.com>
Cc: "Eduardo Habkost" <ehabkost@redhat.com>,
"Andreas Färber" <afaerber@suse.de>,
"Avi Kivity" <avi@redhat.com>,
"Marcelo Tosatti" <mtosatti@redhat.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
kvm <kvm@vger.kernel.org>
Subject: Re: [RFC PATCH] Expose tsc deadline timer feature to guest
Date: Tue, 03 Jul 2012 08:38:20 +0200 [thread overview]
Message-ID: <4FF2935C.5090605@siemens.com> (raw)
In-Reply-To: <DE8DF0795D48FD4CA783C40EC82923352822BF@SHSMSX101.ccr.corp.intel.com>
On 2012-07-02 13:08, Liu, Jinsong wrote:
> Eduardo, Jan, Andreas
>
> As we sync 3 months ago, I wait until qemu1.1 done, then re-write patch based on qemu1.1.
> Now it's time to re-write my patch based on qemu1.1.
>
> Attached is a RFC patch for exposing tsc deadline timer to guest.
> I have checked current qemu1.1 code, and read some emails regarding to cpuid exposing these days.
> However, I think I may ignore something (so many discussion :-), so if you think anything wrong, please point out to me.
>
> Thanks,
> Jinsong
>
> ====================
>>From 8b5b003f6f8834d2d5d71e18bb47b7f089bc4928 Mon Sep 17 00:00:00 2001
> From: Liu, Jinsong <jinsong.liu@intel.com>
> Date: Tue, 3 Jul 2012 02:35:10 +0800
> Subject: [PATCH] Expose tsc deadline timer feature to guest
>
> This patch exposes tsc deadline timer feature to guest if
> 1). in-kernel irqchip is used, and
> 2). kvm has emulated tsc deadline timer, and
> 3). user authorize the feature exposing via -cpu or +/- tsc-deadline
>
> Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
> ---
> target-i386/cpu.h | 1 +
> target-i386/kvm.c | 5 +++++
> 2 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/target-i386/cpu.h b/target-i386/cpu.h
> index 79cc640..d1a4a04 100644
> --- a/target-i386/cpu.h
> +++ b/target-i386/cpu.h
> @@ -400,6 +400,7 @@
> #define CPUID_EXT_X2APIC (1 << 21)
> #define CPUID_EXT_MOVBE (1 << 22)
> #define CPUID_EXT_POPCNT (1 << 23)
> +#define CPUID_EXT_TSC_DEADLINE_TIMER (1 << 24)
> #define CPUID_EXT_XSAVE (1 << 26)
> #define CPUID_EXT_OSXSAVE (1 << 27)
> #define CPUID_EXT_HYPERVISOR (1 << 31)
> diff --git a/target-i386/kvm.c b/target-i386/kvm.c
> index 0d0d8f6..52b577f 100644
> --- a/target-i386/kvm.c
> +++ b/target-i386/kvm.c
> @@ -361,8 +361,13 @@ int kvm_arch_init_vcpu(CPUX86State *env)
> env->cpuid_features &= kvm_arch_get_supported_cpuid(s, 1, 0, R_EDX);
>
> i = env->cpuid_ext_features & CPUID_EXT_HYPERVISOR;
> + j = env->cpuid_ext_features & CPUID_EXT_TSC_DEADLINE_TIMER;
> env->cpuid_ext_features &= kvm_arch_get_supported_cpuid(s, 1, 0, R_ECX);
> env->cpuid_ext_features |= i;
> + if (j && kvm_irqchip_in_kernel() &&
> + kvm_check_extension(s, KVM_CAP_TSC_DEADLINE_TIMER)) {
> + env->cpuid_ext_features |= CPUID_EXT_TSC_DEADLINE_TIMER;
> + }
>
> env->cpuid_ext2_features &= kvm_arch_get_supported_cpuid(s, 0x80000001,
> 0, R_EDX);
>
Fine with me.
Acked-by: Jan Kiszka <jan.kiszka@siemens.com>
Jan
--
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux
WARNING: multiple messages have this Message-ID (diff)
From: Jan Kiszka <jan.kiszka@siemens.com>
To: "Liu, Jinsong" <jinsong.liu@intel.com>
Cc: "Eduardo Habkost" <ehabkost@redhat.com>,
kvm <kvm@vger.kernel.org>,
"Marcelo Tosatti" <mtosatti@redhat.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
"Avi Kivity" <avi@redhat.com>,
"Andreas Färber" <afaerber@suse.de>
Subject: Re: [Qemu-devel] [RFC PATCH] Expose tsc deadline timer feature to guest
Date: Tue, 03 Jul 2012 08:38:20 +0200 [thread overview]
Message-ID: <4FF2935C.5090605@siemens.com> (raw)
In-Reply-To: <DE8DF0795D48FD4CA783C40EC82923352822BF@SHSMSX101.ccr.corp.intel.com>
On 2012-07-02 13:08, Liu, Jinsong wrote:
> Eduardo, Jan, Andreas
>
> As we sync 3 months ago, I wait until qemu1.1 done, then re-write patch based on qemu1.1.
> Now it's time to re-write my patch based on qemu1.1.
>
> Attached is a RFC patch for exposing tsc deadline timer to guest.
> I have checked current qemu1.1 code, and read some emails regarding to cpuid exposing these days.
> However, I think I may ignore something (so many discussion :-), so if you think anything wrong, please point out to me.
>
> Thanks,
> Jinsong
>
> ====================
>>From 8b5b003f6f8834d2d5d71e18bb47b7f089bc4928 Mon Sep 17 00:00:00 2001
> From: Liu, Jinsong <jinsong.liu@intel.com>
> Date: Tue, 3 Jul 2012 02:35:10 +0800
> Subject: [PATCH] Expose tsc deadline timer feature to guest
>
> This patch exposes tsc deadline timer feature to guest if
> 1). in-kernel irqchip is used, and
> 2). kvm has emulated tsc deadline timer, and
> 3). user authorize the feature exposing via -cpu or +/- tsc-deadline
>
> Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
> ---
> target-i386/cpu.h | 1 +
> target-i386/kvm.c | 5 +++++
> 2 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/target-i386/cpu.h b/target-i386/cpu.h
> index 79cc640..d1a4a04 100644
> --- a/target-i386/cpu.h
> +++ b/target-i386/cpu.h
> @@ -400,6 +400,7 @@
> #define CPUID_EXT_X2APIC (1 << 21)
> #define CPUID_EXT_MOVBE (1 << 22)
> #define CPUID_EXT_POPCNT (1 << 23)
> +#define CPUID_EXT_TSC_DEADLINE_TIMER (1 << 24)
> #define CPUID_EXT_XSAVE (1 << 26)
> #define CPUID_EXT_OSXSAVE (1 << 27)
> #define CPUID_EXT_HYPERVISOR (1 << 31)
> diff --git a/target-i386/kvm.c b/target-i386/kvm.c
> index 0d0d8f6..52b577f 100644
> --- a/target-i386/kvm.c
> +++ b/target-i386/kvm.c
> @@ -361,8 +361,13 @@ int kvm_arch_init_vcpu(CPUX86State *env)
> env->cpuid_features &= kvm_arch_get_supported_cpuid(s, 1, 0, R_EDX);
>
> i = env->cpuid_ext_features & CPUID_EXT_HYPERVISOR;
> + j = env->cpuid_ext_features & CPUID_EXT_TSC_DEADLINE_TIMER;
> env->cpuid_ext_features &= kvm_arch_get_supported_cpuid(s, 1, 0, R_ECX);
> env->cpuid_ext_features |= i;
> + if (j && kvm_irqchip_in_kernel() &&
> + kvm_check_extension(s, KVM_CAP_TSC_DEADLINE_TIMER)) {
> + env->cpuid_ext_features |= CPUID_EXT_TSC_DEADLINE_TIMER;
> + }
>
> env->cpuid_ext2_features &= kvm_arch_get_supported_cpuid(s, 0x80000001,
> 0, R_EDX);
>
Fine with me.
Acked-by: Jan Kiszka <jan.kiszka@siemens.com>
Jan
--
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2012-07-03 6:38 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-02 11:08 [RFC PATCH] Expose tsc deadline timer feature to guest Liu, Jinsong
2012-07-02 11:08 ` [Qemu-devel] " Liu, Jinsong
2012-07-02 11:56 ` Andreas Färber
2012-07-02 11:56 ` [Qemu-devel] " Andreas Färber
2012-07-02 17:54 ` Eduardo Habkost
2012-07-02 17:54 ` [Qemu-devel] " Eduardo Habkost
2012-07-03 6:38 ` Jan Kiszka [this message]
2012-07-03 6:38 ` Jan Kiszka
2012-07-03 20:36 ` Marcelo Tosatti
2012-07-03 20:36 ` [Qemu-devel] " Marcelo Tosatti
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=4FF2935C.5090605@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=afaerber@suse.de \
--cc=avi@redhat.com \
--cc=ehabkost@redhat.com \
--cc=jinsong.liu@intel.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
--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 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.