linux/arch/s390
David Hildenbrand 96e0ed23dc KVM: s390: factor out and optimize floating irq VCPU kick
This patch factors out the search for a floating irq destination
VCPU as well as the kicking of the found VCPU. The search is optimized
in the following ways:

1. stopped VCPUs can't take any floating interrupts, so try to find an
   operating one. We have to take care of the special case where all
   VCPUs are stopped and we don't have any valid destination.

2. use online_vcpus, not KVM_MAX_VCPU. This speeds up the search
   especially if KVM_MAX_VCPU is increased one day. As these VCPU
   objects are initialized prior to increasing online_vcpus, we can be
   sure that they exist.

Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
Reviewed-by: Jens Freimann <jfrei@linux.vnet.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2015-05-08 15:51:16 +02:00
..
appldata s390: appldata: drop owner assignment from platform_drivers 2014-10-20 16:20:13 +02:00
boot s390: remove "64" suffix from a couple of files 2015-03-25 11:49:34 +01:00
configs s390: update default configuration 2015-01-22 12:16:09 +01:00
crypto s390/zcrypt: Introduce new SHA-512 based Pseudo Random Generator. 2015-04-23 16:56:21 +02:00
hypfs Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-04-26 17:22:07 -07:00
include KVM: s390: make exit_sie_sync more robust 2015-05-08 15:51:14 +02:00
kernel KVM: s390: make exit_sie_sync more robust 2015-05-08 15:51:14 +02:00
kvm KVM: s390: factor out and optimize floating irq VCPU kick 2015-05-08 15:51:16 +02:00
lib s390: remove "64" suffix from mem64.S and swsusp_asm64.S 2015-03-25 11:49:51 +01:00
mm s390/mm: change swap pte encoding and pgtable cleanup 2015-04-23 16:56:20 +02:00
net s390/bpf: Add s390x eBPF JIT compiler backend 2015-04-15 12:23:49 +02:00
oprofile s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
pci Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2015-04-20 10:15:33 -07:00
defconfig s390: update default configuration 2015-01-22 12:16:09 +01:00
Kbuild s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
Kconfig s390/bpf: add dependency to z196 features 2015-04-23 16:55:50 +02:00
Kconfig.debug Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS 2013-04-30 17:04:09 -07:00
Makefile s390: remove 31 bit support 2015-03-25 11:49:33 +01:00