aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/msi.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2011-10-14 14:34:15 +0200
committerJan Beulich <jbeulich@suse.com>2011-10-14 14:34:15 +0200
commit885aa947cfa919231537d45af918a151b7934949 (patch)
tree685f7c378fd17d74ccda9588d60993a2eb284ab8 /xen/arch/x86/msi.c
parent631a12d1547d9f3e4b2e6e3308d51b47d50728df (diff)
downloadxen-885aa947cfa919231537d45af918a151b7934949.tar.gz
xen-885aa947cfa919231537d45af918a151b7934949.tar.bz2
xen-885aa947cfa919231537d45af918a151b7934949.zip
x86/MSI: drop local cpumask_t variable from msi_compose_msg()
The function gets called only during initialization/resume (when no other CPUs are running) or with the IRQ descriptor lock held, so there's no way for the CPU mask to change under its feet. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/arch/x86/msi.c')
-rw-r--r--xen/arch/x86/msi.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index f75ab3211d..9c39053353 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -123,18 +123,16 @@ static void msix_put_fixmap(struct pci_dev *dev, int idx)
void msi_compose_msg(struct irq_desc *desc, struct msi_msg *msg)
{
unsigned dest;
- cpumask_t domain;
struct irq_cfg *cfg = desc->chip_data;
int vector = cfg->vector;
- domain = cfg->cpu_mask;
- if ( cpus_empty( domain ) ) {
+ if ( cpus_empty(cfg->cpu_mask) ) {
dprintk(XENLOG_ERR,"%s, compose msi message error!!\n", __func__);
- return;
+ return;
}
if ( vector ) {
- dest = cpu_mask_to_apicid(&domain);
+ dest = cpu_mask_to_apicid(&cfg->cpu_mask);
msg->address_hi = MSI_ADDR_BASE_HI;
msg->address_lo =