viridian: use hypercall_vpmask in hvcall_ipi()
authorPaul Durrant <pdurrant@amazon.com>
Fri, 4 Dec 2020 12:14:25 +0000 (13:14 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 4 Dec 2020 12:14:25 +0000 (13:14 +0100)
commit728acba1ba4ad6f9b69fd6929362a9750fe4dbe8
treeaad0768bc55575ac488c3d267b5147efe5ddc259
parent33c1a1c378e38d73d1b35b4bec6bdcd94bae41c2
viridian: use hypercall_vpmask in hvcall_ipi()

A subsequent patch will need to IPI a mask of virtual processors potentially
wider than 64 bits. A previous patch introduced per-cpu hypercall_vpmask
to allow hvcall_flush() to deal with such wide masks. This patch modifies
the implementation of hvcall_ipi() to make use of the same mask structures,
introducing a for_each_vp() macro to facilitate traversing a mask.

Signed-off-by: Paul Durrant <pdurrant@amazon.com>
Acked-by: Wei Liu <wl@xen.org>
xen/arch/x86/hvm/viridian/viridian.c