linux/include/asm-s390
Heiko Carstens b0c632db63 KVM: s390: arch backend for the kvm kernel module
This patch contains the port of Qumranet's kvm kernel module to IBM zSeries
 (aka s390x, mainframe) architecture. It uses the mainframe's virtualization
instruction SIE to run virtual machines with up to 64 virtual CPUs each.
This port is only usable on 64bit host kernels, and can only run 64bit guest
kernels. However, running 31bit applications in guest userspace is possible.

The following source files are introduced by this patch
arch/s390/kvm/kvm-s390.c    similar to arch/x86/kvm/x86.c, this implements all
                            arch callbacks for kvm. __vcpu_run calls back into
                            sie64a to enter the guest machine context
arch/s390/kvm/sie64a.S      assembler function sie64a, which enters guest
                            context via SIE, and switches world before and after                            that
include/asm-s390/kvm_host.h contains all vital data structures needed to run
                            virtual machines on the mainframe
include/asm-s390/kvm.h      defines kvm_regs and friends for user access to
                            guest register content
arch/s390/kvm/gaccess.h     functions similar to uaccess to access guest memory
arch/s390/kvm/kvm-s390.h    header file for kvm-s390 internals, extended by
                            later patches

Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
2008-04-27 12:00:42 +03:00
..
airq.h [S390] cio: Extend adapter interrupt interface. 2008-01-26 14:11:00 +01:00
appldata.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
atomic.h [S390] Change atomic_read/set to inline functions with barrier semantics. 2007-08-22 13:51:49 +02:00
auxvec.h
bitops.h generic: implement __fls on all 64-bit archs 2008-04-26 19:21:16 +02:00
bug.h Fix WARN_ON() on bitfield ops for all other archs 2007-08-01 20:45:38 -07:00
bugs.h [S390] check_bugs() should be inline. 2007-03-05 23:35:50 +01:00
byteorder.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
cache.h [S390] Get rid of ARCH_KMALLOC_MINALIGN. 2007-10-12 16:13:07 +02:00
cacheflush.h [S390] DEBUG_PAGEALLOC support for s390. 2008-02-05 16:50:54 +01:00
ccwdev.h [S390] cio: Introduce ccw_bus_type.shutdown. 2007-10-12 16:13:01 +02:00
ccwgroup.h [S390] cio: Add shutdown callback for ccwgroup. 2008-02-05 16:50:54 +01:00
checksum.h [S390] Fix TCP/UDP pseudo header checksum computation. 2007-03-26 20:43:46 +02:00
chpid.h [S390] cio: Channel-path configure function. 2007-04-27 16:01:39 +02:00
cio.h [S390] Fix a lot of sparse warnings. 2008-04-17 07:47:06 +02:00
cmb.h [S390] cio: Kerneldoc comments for cmf. 2007-10-12 16:12:59 +02:00
compat.h asm-*/compat.h: fix typo in comment 2008-02-03 16:32:51 +02:00
cpcmd.h [S390] cpcmd <-> __cpcmd calling issues 2006-12-04 15:40:30 +01:00
cpu.h [S390] Convert monitor calls to function calls. 2008-04-17 07:47:05 +02:00
cputime.h taskstats scaled time cleanup 2008-02-06 10:41:00 -08:00
current.h
dasd.h [S390] include/asm-s390/: Spelling fixes 2008-01-26 14:11:25 +01:00
debug.h [S390] Add debug_register_mode() function to debug feature API 2008-04-17 07:47:03 +02:00
delay.h
device.h Driver core: add dev_archdata to struct device 2006-12-01 14:52:01 -08:00
diag.h [S390] vmur: fix diag14 exceptions with addresses > 2GB. 2007-08-22 13:51:47 +02:00
div64.h [S390] __div64_32 for 31 bit. 2006-09-28 16:55:39 +02:00
dma.h [S390] empty function defines. 2006-09-20 15:58:51 +02:00
ebcdic.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
elf.h [S390] dynamic page tables. 2008-02-09 18:24:41 +01:00
emergency-restart.h
errno.h
etr.h [S390] ETR support. 2007-02-05 21:18:19 +01:00
extmem.h [S390] Remove code duplication from monreader / dcssblk. 2008-04-17 07:47:07 +02:00
fb.h fbdev: detect primary display device 2007-07-17 10:23:11 -07:00
fcntl.h
futex.h [S390] don't call handle_mm_fault() if in an atomic context. 2007-01-09 10:18:50 +01:00
hardirq.h [S390] Convert s390 to GENERIC_CLOCKEVENTS. 2008-04-17 07:47:05 +02:00
idals.h
io.h [S390] remove __io_virt and mmiowb. 2007-02-12 15:49:57 +01:00
ioctl.h
ioctls.h tty: s390 support for termios2. 2008-02-08 09:22:24 -08:00
ipcbuf.h
ipl.h [S390] Use diag308 subcodes 3 and 6 for reboot and dump when possible. 2008-01-26 14:11:24 +01:00
irq_regs.h [S390] irq change build fixes. 2006-10-06 16:38:35 +02:00
irq.h [PATCH] Make touch_nmi_watchdog imply touch_softlockup_watchdog on all archs 2006-09-29 09:18:05 -07:00
irqflags.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
Kbuild KVM: s390: arch backend for the kvm kernel module 2008-04-27 12:00:42 +03:00
kdebug.h x86: optimize page faults like all other achitectures and kill notifier cruft 2007-10-16 09:42:50 -07:00
kexec.h Unexport asm/page.h 2008-02-07 08:42:30 -08:00
kmap_types.h
kprobes.h Kprobes: indicate kretprobe support in Kconfig 2008-03-04 16:35:11 -08:00
kvm_host.h KVM: s390: arch backend for the kvm kernel module 2008-04-27 12:00:42 +03:00
kvm_para.h KVM: s390: arch backend for the kvm kernel module 2008-04-27 12:00:42 +03:00
kvm.h KVM: s390: arch backend for the kvm kernel module 2008-04-27 12:00:42 +03:00
linkage.h
local.h [S390] local_t cleanup : use asm-generic/local.h. 2007-02-21 10:55:55 +01:00
lowcore.h s390: KVM preparation: address of the 64bit extint parm in lowcore 2008-04-27 12:00:41 +03:00
mathemu.h
mman.h
mmu_context.h s390: KVM preparation: provide hook to enable pgstes in user pagetable 2008-04-27 12:00:40 +03:00
mmu.h s390: KVM preparation: provide hook to enable pgstes in user pagetable 2008-04-27 12:00:40 +03:00
module.h
monwriter.h [S390] Linux API for writing z/VM APPLDATA Monitor records. 2006-09-20 15:59:34 +02:00
msgbuf.h
mutex.h
namei.h
page.h [S390] 1K/2K page table pages. 2008-02-09 18:24:40 +01:00
param.h [S390] Kconfig: use common Kconfig files for s390. 2007-05-10 15:46:08 +02:00
pci.h
percpu.h s390: use generic percpu linux-2.6.git 2008-01-30 23:27:58 +01:00
pgalloc.h [S390] dynamic page tables. 2008-02-09 18:24:41 +01:00
pgtable.h s390: KVM preparation: host memory management changes for s390 kvm 2008-04-27 12:00:40 +03:00
poll.h Consolidate asm/poll.h 2007-05-11 08:29:34 -07:00
posix_types.h [PATCH] FD_ZERO build fix 2007-01-11 18:18:22 -08:00
processor.h [S390] kernel: show last breaking-event-address on oops 2008-04-17 07:47:07 +02:00
ptrace.h [S390] single-step cleanup 2008-01-26 14:11:27 +01:00
qdio.h [S390] include/asm-s390/: Spelling fixes 2008-01-26 14:11:25 +01:00
qeth.h
reset.h [S390] Convert memory detection into C code. 2007-02-05 21:18:37 +01:00
resource.h
rwsem.h [S390] Use new style spinlock initializer in __RWSEM_INITIALIZER. 2008-01-26 14:11:15 +01:00
s390_ext.h [S390] remove packed attribute from ext_int_info_t. 2007-10-12 16:13:07 +02:00
s390_rdev.h
scatterlist.h Add CONFIG_DEBUG_SG sg validation 2007-10-22 21:20:03 +02:00
sclp.h [S390] Get rid of additional_cpus kernel parameter. 2008-01-26 14:11:15 +01:00
sections.h [S390] nss: Free unused memory in kernel image. 2007-02-21 10:55:37 +01:00
segment.h
semaphore.h Generic semaphore implementation 2008-04-17 10:42:34 -04:00
sembuf.h
setup.h [S390] zfcpdump support. 2007-04-27 16:01:44 +02:00
sfp-machine.h [S390] Bogomips calculation for 64 bit. 2007-07-10 11:24:47 +02:00
sfp-util.h [S390] Bogomips calculation for 64 bit. 2007-07-10 11:24:47 +02:00
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h [PATCH] irq-flags: S390: Use the new IRQF_ constants 2006-07-02 13:58:48 -07:00
sigp.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
smp.h [S390] Vertical cpu management. 2008-04-17 07:47:01 +02:00
socket.h [NET]: Introducing socket mark socket option. 2008-01-31 19:27:19 -08:00
sockios.h [NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution 2007-04-25 22:24:04 -07:00
spinlock_types.h [S390] Remove owner_pc member from raw_spinlock_t. 2008-01-26 14:11:14 +01:00
spinlock.h [S390] do local_irq_restore while spinning in spin_lock_irqsave. 2008-01-26 14:11:31 +01:00
stat.h
statfs.h
string.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
suspend.h
sysinfo.h [S390] Add new fields for System z10 to /proc/sysinfo 2008-04-17 07:47:01 +02:00
system.h [S390] Export stfle. 2008-04-17 07:47:01 +02:00
tape390.h [S390] Add crypto support for 3592 tape devices 2007-02-05 21:18:26 +01:00
termbits.h tty: s390 support for termios2. 2008-02-08 09:22:24 -08:00
termios.h tty: s390 support for termios2. 2008-02-08 09:22:24 -08:00
thread_info.h [S390] preempt_count initialization. 2006-06-29 15:02:47 +02:00
timer.h [S390] Get rid of a lot of sparse warnings. 2007-02-05 21:16:47 +01:00
timex.h [S390] Fix a lot of sparse warnings. 2008-04-17 07:47:06 +02:00
tlb.h [S390] dynamic page tables. 2008-02-09 18:24:41 +01:00
tlbflush.h [S390] Fix a lot of sparse warnings. 2008-04-17 07:47:06 +02:00
todclk.h
topology.h [S390] Vertical cpu management. 2008-04-17 07:47:01 +02:00
types.h remove strict ansi check from __u64 in asm/types.h 2007-10-17 08:42:53 -07:00
uaccess.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
ucontext.h
unaligned.h
unistd.h [S390] Wire up new timerfd syscalls. 2008-02-09 18:24:37 +01:00
user.h Sanitize the type of struct user.u_ar0 2008-02-07 08:42:30 -08:00
vtoc.h
xor.h
zcrypt.h [S390] include/asm-s390/: Spelling fixes 2008-01-26 14:11:25 +01:00