From patchwork Wed Jan 9 18:53:45 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eduardo Habkost X-Patchwork-Id: 210826 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 51A532C00DB for ; Thu, 10 Jan 2013 06:25:41 +1100 (EST) Received: from localhost ([::1]:42352 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tt0m4-00055J-Ls for incoming@patchwork.ozlabs.org; Wed, 09 Jan 2013 13:53:16 -0500 Received: from eggs.gnu.org ([208.118.235.92]:50293) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tt0lK-0003Aj-QU for qemu-devel@nongnu.org; Wed, 09 Jan 2013 13:52:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Tt0lJ-0005fP-0Y for qemu-devel@nongnu.org; Wed, 09 Jan 2013 13:52:30 -0500 Received: from mx1.redhat.com ([209.132.183.28]:7201) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tt0lI-0005et-Mt for qemu-devel@nongnu.org; Wed, 09 Jan 2013 13:52:28 -0500 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r09IqRbP015986 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 9 Jan 2013 13:52:28 -0500 Received: from blackpad.lan.raisama.net (vpn1-7-24.gru2.redhat.com [10.97.7.24]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r09IqRaT020827; Wed, 9 Jan 2013 13:52:27 -0500 Received: by blackpad.lan.raisama.net (Postfix, from userid 500) id 51BC7203D43; Wed, 9 Jan 2013 16:54:04 -0200 (BRST) From: Eduardo Habkost To: qemu-devel@nongnu.org Date: Wed, 9 Jan 2013 16:53:45 -0200 Message-Id: <1357757632-1950-6-git-send-email-ehabkost@redhat.com> In-Reply-To: <1357757632-1950-1-git-send-email-ehabkost@redhat.com> References: <1357757632-1950-1-git-send-email-ehabkost@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 209.132.183.28 Cc: kvm@vger.kernel.org, Gleb Natapov , "Michael S. Tsirkin" , Marcelo Tosatti , Igor Mammedov , =?UTF-8?q?Andreas=20F=C3=A4rber?= Subject: [Qemu-devel] [RFC 05/12] target-i386: kvm: Set vcpu_id to APIC ID instead of CPU index X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org The CPU ID in KVM is supposed to be the APIC ID, so change the KVM_CREATE_VCPU call to match it. The current behavior didn't break anything yet because today the APIC ID is assumed to be equal to the CPU index, but this won't be true in the future. Signed-off-by: Eduardo Habkost --- Cc: kvm@vger.kernel.org Cc: Michael S. Tsirkin Cc: Gleb Natapov Cc: Marcelo Tosatti Changes v2: - Change only i386 code (kvm_arch_vcpu_id()) Changes v3: - Get CPUState as argument instead of CPUArchState --- target-i386/kvm.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/target-i386/kvm.c b/target-i386/kvm.c index 5f3f789..c440809 100644 --- a/target-i386/kvm.c +++ b/target-i386/kvm.c @@ -411,9 +411,10 @@ static void cpu_update_state(void *opaque, int running, RunState state) } } -unsigned long kvm_arch_vcpu_id(CPUState *cpu) +unsigned long kvm_arch_vcpu_id(CPUState *cs) { - return cpu->cpu_index; + X86CPU *cpu = X86_CPU(cs); + return cpu->env.cpuid_apic_id; } int kvm_arch_init_vcpu(CPUState *cs)