--- /dev/null
+From db27a7a37aa0b1f8b373f8b0fb72a2ccaafb85b7 Mon Sep 17 00:00:00 2001
+From: David Hildenbrand <dahi@linux.vnet.ibm.com>
+Date: Thu, 5 Nov 2015 09:03:50 +0100
+Subject: KVM: Provide function for VCPU lookup by id
+
+From: David Hildenbrand <dahi@linux.vnet.ibm.com>
+
+commit db27a7a37aa0b1f8b373f8b0fb72a2ccaafb85b7 upstream.
+
+Let's provide a function to lookup a VCPU by id.
+
+Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
+Reviewed-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
+Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
+Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
+[split patch from refactoring patch]
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ include/linux/kvm_host.h | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+--- a/include/linux/kvm_host.h
++++ b/include/linux/kvm_host.h
+@@ -442,6 +442,17 @@ static inline struct kvm_vcpu *kvm_get_v
+ (vcpup = kvm_get_vcpu(kvm, idx)) != NULL; \
+ idx++)
+
++static inline struct kvm_vcpu *kvm_get_vcpu_by_id(struct kvm *kvm, int id)
++{
++ struct kvm_vcpu *vcpu;
++ int i;
++
++ kvm_for_each_vcpu(i, vcpu, kvm)
++ if (vcpu->vcpu_id == id)
++ return vcpu;
++ return NULL;
++}
++
+ #define kvm_for_each_memslot(memslot, slots) \
+ for (memslot = &slots->memslots[0]; \
+ memslot < slots->memslots + KVM_MEM_SLOTS_NUM && memslot->npages;\
s390-kernel-fix-ptrace-peek-poke-for-floating-point-registers.patch
s390-pci-reshuffle-struct-used-to-write-debug-data.patch
kvm-s390-sca-must-not-cross-page-boundaries.patch
+kvm-provide-function-for-vcpu-lookup-by-id.patch
kvm-s390-fix-wrong-lookup-of-vcpus-by-array-index.patch
kvm-s390-avoid-memory-overwrites-on-emergency-signal-injection.patch
kvm-s390-enable-simd-only-when-no-vcpus-were-created.patch