|
@@ -17,12 +17,9 @@ static int ia64_set_msi_irq_affinity(struct irq_data *idata,
|
|
|
{
|
|
|
struct msi_msg msg;
|
|
|
u32 addr, data;
|
|
|
- int cpu = first_cpu(*cpu_mask);
|
|
|
+ int cpu = cpumask_first_and(cpu_mask, cpu_online_mask);
|
|
|
unsigned int irq = idata->irq;
|
|
|
|
|
|
- if (!cpu_online(cpu))
|
|
|
- return -1;
|
|
|
-
|
|
|
if (irq_prepare_move(irq, cpu))
|
|
|
return -1;
|
|
|
|
|
@@ -139,10 +136,7 @@ static int dmar_msi_set_affinity(struct irq_data *data,
|
|
|
unsigned int irq = data->irq;
|
|
|
struct irq_cfg *cfg = irq_cfg + irq;
|
|
|
struct msi_msg msg;
|
|
|
- int cpu = cpumask_first(mask);
|
|
|
-
|
|
|
- if (!cpu_online(cpu))
|
|
|
- return -1;
|
|
|
+ int cpu = cpumask_first_and(mask, cpu_online_mask);
|
|
|
|
|
|
if (irq_prepare_move(irq, cpu))
|
|
|
return -1;
|