blob: 5b82527b7f863bb2884b2b886395426bddd5a43f [file] [log] [blame]
Heiko Carstensb0c632d2008-03-25 18:47:20 +01001/*
2 * kvm_s390.h - definition for kvm on s390
3 *
4 * Copyright IBM Corp. 2008
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License (version 2 only)
8 * as published by the Free Software Foundation.
9 *
10 * Author(s): Carsten Otte <cotte@de.ibm.com>
11 * Christian Borntraeger <borntraeger@de.ibm.com>
12 */
13
14#ifndef ARCH_S390_KVM_S390_H
15#define ARCH_S390_KVM_S390_H
Christian Borntraeger8f2abe62008-03-25 18:47:23 +010016
17#include <linux/kvm_host.h>
18
19typedef int (*intercept_handler_t)(struct kvm_vcpu *vcpu);
20
21int kvm_handle_sie_intercept(struct kvm_vcpu *vcpu);
22
Heiko Carstensb0c632d2008-03-25 18:47:20 +010023#define VM_EVENT(d_kvm, d_loglevel, d_string, d_args...)\
24do { \
25 debug_sprintf_event(d_kvm->arch.dbf, d_loglevel, d_string "\n", \
26 d_args); \
27} while (0)
28
29#define VCPU_EVENT(d_vcpu, d_loglevel, d_string, d_args...)\
30do { \
31 debug_sprintf_event(d_vcpu->kvm->arch.dbf, d_loglevel, \
32 "%02d[%016lx-%016lx]: " d_string "\n", d_vcpu->vcpu_id, \
33 d_vcpu->arch.sie_block->gpsw.mask, d_vcpu->arch.sie_block->gpsw.addr,\
34 d_args); \
35} while (0)
36#endif