diff options
Diffstat (limited to 'kernel/irq/manage.c')
| -rw-r--r-- | kernel/irq/manage.c | 8 | 
1 files changed, 4 insertions, 4 deletions
| diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 7405e384e5ed..f23ffd30385b 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -486,7 +486,8 @@ int irq_force_affinity(unsigned int irq, const struct cpumask *cpumask)  }  EXPORT_SYMBOL_GPL(irq_force_affinity); -int irq_set_affinity_hint(unsigned int irq, const struct cpumask *m) +int __irq_apply_affinity_hint(unsigned int irq, const struct cpumask *m, +			      bool setaffinity)  {  	unsigned long flags;  	struct irq_desc *desc = irq_get_desc_lock(irq, &flags, IRQ_GET_DESC_CHECK_GLOBAL); @@ -495,12 +496,11 @@ int irq_set_affinity_hint(unsigned int irq, const struct cpumask *m)  		return -EINVAL;  	desc->affinity_hint = m;  	irq_put_desc_unlock(desc, flags); -	/* set the initial affinity to prevent every interrupt being on CPU0 */ -	if (m) +	if (m && setaffinity)  		__irq_set_affinity(irq, m, false);  	return 0;  } -EXPORT_SYMBOL_GPL(irq_set_affinity_hint); +EXPORT_SYMBOL_GPL(__irq_apply_affinity_hint);  static void irq_affinity_notify(struct work_struct *work)  { |