From patchwork Wed May 4 19:43:44 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 754692 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p44Jie4w026513 for ; Wed, 4 May 2011 19:44:40 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755568Ab1EDToS (ORCPT ); Wed, 4 May 2011 15:44:18 -0400 Received: from fmmailgate02.web.de ([217.72.192.227]:51094 "EHLO fmmailgate02.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755448Ab1EDToQ (ORCPT ); Wed, 4 May 2011 15:44:16 -0400 Received: from smtp04.web.de ( [172.20.0.225]) by fmmailgate02.web.de (Postfix) with ESMTP id CCBED19EB29FE; Wed, 4 May 2011 21:44:14 +0200 (CEST) Received: from [88.64.22.120] (helo=localhost.localdomain) by smtp04.web.de with asmtp (TLSv1:AES256-SHA:256) (WEB.DE 4.110 #2) id 1QHhza-0006mo-01; Wed, 04 May 2011 21:44:14 +0200 From: Jan Kiszka To: Avi Kivity , Marcelo Tosatti Cc: kvm@vger.kernel.org Subject: [PATCH 10/19] qemu-kvm: Drop remaining libkvm fragments Date: Wed, 4 May 2011 21:43:44 +0200 Message-Id: <35399d1981792d596feccad302cda050be92987b.1304538230.git.jan.kiszka@web.de> X-Mailer: git-send-email 1.7.1 In-Reply-To: References: In-Reply-To: References: X-Sender: jan.kiszka@web.de X-Provags-ID: V01U2FsdGVkX1+WQxozGQQ+81DhLCEo0oZSpY1tQhwnAWKf9PQx OhmespSqVWXL5TxnNDOOSK2Q5vmESJq/wDtdIwuiJB/9CC0DVa vVEAgRXAQ= Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Wed, 04 May 2011 19:44:40 +0000 (UTC) From: Jan Kiszka The bits under kvm/ are kept for now, not sure if they still serve any purpose. Same for anything in target-ia64. That arch is now definitely broken, but I bet it was already. Signed-off-by: Jan Kiszka --- qemu-kvm-x86.c | 3 +- qemu-kvm.c | 6 --- qemu-kvm.h | 11 ----- target-i386/libkvm.h | 28 -------------- target-ppc/libkvm.c | 102 -------------------------------------------------- target-ppc/libkvm.h | 36 ----------------- 6 files changed, 1 insertions(+), 185 deletions(-) delete mode 100644 target-i386/libkvm.h delete mode 100644 target-ppc/libkvm.c delete mode 100644 target-ppc/libkvm.h diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c index f7cd30d..5207e29 100644 --- a/qemu-kvm-x86.c +++ b/qemu-kvm-x86.c @@ -15,7 +15,6 @@ #include #include "qemu-kvm.h" -#include "libkvm.h" #include #include #include @@ -28,7 +27,7 @@ extern unsigned int kvm_shadow_memory; -int kvm_set_tss_addr(kvm_context_t kvm, unsigned long addr) +static int kvm_set_tss_addr(kvm_context_t kvm, unsigned long addr) { int r; diff --git a/qemu-kvm.c b/qemu-kvm.c index d65ff67..816e877 100644 --- a/qemu-kvm.c +++ b/qemu-kvm.c @@ -22,7 +22,6 @@ #include "qemu-thread.h" #include "qemu-kvm.h" -#include "libkvm.h" #include #include @@ -84,9 +83,6 @@ static QLIST_HEAD(, ioperm_data) ioperm_head; #define ALIGN(x, y) (((x)+(y)-1) & ~((y)-1)) -int kvm_abi = EXPECTED_KVM_API_VERSION; -int kvm_page_size; - static int handle_unhandled(uint64_t reason) { fprintf(stderr, "kvm: unhandled exit %" PRIx64 "\n", reason); @@ -162,8 +158,6 @@ int kvm_init(void) fprintf(stderr, "kvm userspace version too old\n"); goto out_close; } - kvm_abi = r; - kvm_page_size = getpagesize(); kvm_state = qemu_mallocz(sizeof(*kvm_state)); kvm_context = &kvm_state->kvm_context; diff --git a/qemu-kvm.h b/qemu-kvm.h index 654ea2e..4daadc7 100644 --- a/qemu-kvm.h +++ b/qemu-kvm.h @@ -43,9 +43,6 @@ #define MAX_VCPUS 16 #endif -/* kvm abi verison variable */ -extern int kvm_abi; - /** * \brief The KVM context * @@ -457,14 +454,6 @@ int kvm_enable_vapic(CPUState *env, uint64_t vapic); #endif -#if defined(__s390__) -int kvm_s390_initial_reset(kvm_context_t kvm, int slot); -int kvm_s390_interrupt(kvm_context_t kvm, int slot, - struct kvm_s390_interrupt *kvmint); -int kvm_s390_set_initial_psw(kvm_context_t kvm, int slot, psw_t psw); -int kvm_s390_store_status(kvm_context_t kvm, int slot, unsigned long addr); -#endif - #ifdef KVM_CAP_DEVICE_ASSIGNMENT /*! * \brief Notifies host kernel about a PCI device to be assigned to a guest diff --git a/target-i386/libkvm.h b/target-i386/libkvm.h deleted file mode 100644 index d85b6a1..0000000 --- a/target-i386/libkvm.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * This header is for functions & variables that will ONLY be - * used inside libkvm for x86. - * THESE ARE NOT EXPOSED TO THE USER AND ARE ONLY FOR USE - * WITHIN LIBKVM. - * - * derived from libkvm.c - * - * Copyright (C) 2006 Qumranet, Inc. - * - * Authors: - * Avi Kivity - * Yaniv Kamay - * - * This work is licensed under the GNU LGPL license, version 2. - */ - -#ifndef KVM_X86_H -#define KVM_X86_H - -#define PAGE_SIZE 4096ul -#define PAGE_MASK (~(PAGE_SIZE - 1)) - -int kvm_set_tss_addr(kvm_context_t kvm, unsigned long addr); - -#define smp_wmb() asm volatile("" ::: "memory") - -#endif diff --git a/target-ppc/libkvm.c b/target-ppc/libkvm.c deleted file mode 100644 index da93026..0000000 --- a/target-ppc/libkvm.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * This file contains the powerpc specific implementation for the - * architecture dependent functions defined in kvm-common.h and - * libkvm.h - * - * Copyright (C) 2006 Qumranet, Inc. - * - * Authors: - * Avi Kivity - * Yaniv Kamay - * - * Copyright IBM Corp. 2007,2008 - * Authors: - * Jerone Young - * Christian Ehrhardt - * - * This work is licensed under the GNU LGPL license, version 2. - */ - -#include "libkvm-all.h" -#include "libkvm.h" -#include -#include -#include - -int handle_dcr(kvm_vcpu_context_t vcpu) -{ - int ret = 0; - struct kvm_run *run = vcpu->run; - kvm_context_t kvm = vcpu->kvm; - - if (run->dcr.is_write) - ret = kvm->callbacks->powerpc_dcr_write(vcpu, - run->dcr.dcrn, - run->dcr.data); - else - ret = kvm->callbacks->powerpc_dcr_read(vcpu, - run->dcr.dcrn, - &(run->dcr.data)); - - return ret; -} - -void kvm_show_code(kvm_vcpu_context_t vcpu) -{ - fprintf(stderr, "%s: Operation not supported\n", __FUNCTION__); -} - -void kvm_show_regs(kvm_vcpu_context_t vcpu) -{ - struct kvm_regs regs; - int i; - - if (kvm_get_regs(vcpu, ®s)) - return; - - fprintf(stderr,"guest vcpu #%d\n", vcpu); - fprintf(stderr,"pc: %016"PRIx64" msr: %016"PRIx64"\n", - regs.pc, regs.msr); - fprintf(stderr,"lr: %016"PRIx64" ctr: %016"PRIx64"\n", - regs.lr, regs.ctr); - fprintf(stderr,"srr0: %016"PRIx64" srr1: %016"PRIx64"\n", - regs.srr0, regs.srr1); - for (i=0; i<32; i+=4) - { - fprintf(stderr, "gpr%02d: %016"PRIx64" %016"PRIx64" %016"PRIx64 - " %016"PRIx64"\n", i, - regs.gpr[i], - regs.gpr[i+1], - regs.gpr[i+2], - regs.gpr[i+3]); - } - - fflush(stdout); -} - -int kvm_arch_create(kvm_context_t kvm, unsigned long phys_mem_bytes, - void **vm_mem) -{ - int r; - - r = kvm_init_coalesced_mmio(kvm); - if (r < 0) - return r; - - return 0; -} - -int kvm_arch_run(kvm_vcpu_context_t vcpu) -{ - int ret = 0; - - switch (vcpu->run->exit_reason){ - case KVM_EXIT_DCR: - ret = handle_dcr(vcpu); - break; - default: - ret = 1; - break; - } - return ret; -} diff --git a/target-ppc/libkvm.h b/target-ppc/libkvm.h deleted file mode 100644 index 80b6b06..0000000 --- a/target-ppc/libkvm.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * This header is for functions & variables that will ONLY be - * used inside libkvm for powerpc. - * THESE ARE NOT EXPOSED TO THE USER AND ARE ONLY FOR USE - * WITHIN LIBKVM. - * - * Copyright (C) 2006 Qumranet, Inc. - * - * Authors: - * Avi Kivity - * Yaniv Kamay - * - * Copyright 2007 IBM Corporation. - * Added by: Jerone Young - * - * This work is licensed under the GNU LGPL license, version 2. - */ - -#ifndef KVM_POWERPC_H -#define KVM_POWERPC_H - -#include "libkvm-all.h" - -extern int kvm_page_size; - -#define PAGE_SIZE kvm_page_size -#define PAGE_MASK (~(PAGE_SIZE - 1)) - -static inline void eieio(void) -{ - asm volatile("eieio" : : : "memory"); -} - -#define smp_wmb() eieio() - -#endif