]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
xen/events: use xen_vcpu_id mapping for EVTCHNOP_status
authorVitaly Kuznetsov <vkuznets@redhat.com>
Wed, 23 Nov 2016 12:38:45 +0000 (13:38 +0100)
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>
Fri, 3 Feb 2017 20:55:30 +0000 (15:55 -0500)
EVTCHNOP_status hypercall returns Xen's idea of vcpu id so we need to
compare it against xen_vcpu_id mapping, not the Linux cpu id.

Suggested-by: Radim Krcmar <rkrcmar@redhat.com>
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
OraBug: 25497392

(cherry picked from commit b36585a0a3c169612f3105139464a2da1d3ecc03)
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
drivers/xen/events/events_base.c

index 0aa021dc384585f7dd38eabd749b58c4586f716e..808a162ed0e57d011a5689ea85c2bed041e64cb2 100644 (file)
@@ -947,7 +947,7 @@ static int find_virq(unsigned int virq, unsigned int cpu)
                        continue;
                if (status.status != EVTCHNSTAT_virq)
                        continue;
-               if (status.u.virq == virq && status.vcpu == cpu) {
+               if (status.u.virq == virq && status.vcpu == xen_vcpu_nr(cpu)) {
                        rc = port;
                        break;
                }