x86/MSI: drop local cpumask_t variable from msi_compose_msg()
authorJan Beulich <jbeulich@suse.com>
Fri, 14 Oct 2011 12:34:15 +0000 (14:34 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 14 Oct 2011 12:34:15 +0000 (14:34 +0200)
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>
xen/arch/x86/msi.c

index f75ab3211d0ef8fdfdad074ea22a95127e8ced04..9c390533535e77143a0b6d9dfe4b43b5054c700e 100644 (file)
@@ -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 =