Commit 9594ca6b authored by Sebastian Ott's avatar Sebastian Ott Committed by Martin Schwidefsky

s390/pci: remove bit_lock usage in interrupt handler

The interrupt handler uses bit_spin_lock around a call to retrieve
per irq data (the irq number). However this per irq data is only
set during irq setup time and never changed until the irq is freed.

Thus it's safe to remove the lock usage.
Signed-off-by: default avatarSebastian Ott <sebott@linux.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 87ccdcfa
...@@ -382,9 +382,7 @@ static void zpci_irq_handler(struct airq_struct *airq) ...@@ -382,9 +382,7 @@ static void zpci_irq_handler(struct airq_struct *airq)
if (ai == -1UL) if (ai == -1UL)
break; break;
inc_irq_stat(IRQIO_MSI); inc_irq_stat(IRQIO_MSI);
airq_iv_lock(aibv, ai);
generic_handle_irq(airq_iv_get_data(aibv, ai)); generic_handle_irq(airq_iv_get_data(aibv, ai));
airq_iv_unlock(aibv, ai);
} }
} }
} }
...@@ -410,7 +408,7 @@ int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) ...@@ -410,7 +408,7 @@ int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
zdev->aisb = aisb; zdev->aisb = aisb;
/* Create adapter interrupt vector */ /* Create adapter interrupt vector */
zdev->aibv = airq_iv_create(msi_vecs, AIRQ_IV_DATA | AIRQ_IV_BITLOCK); zdev->aibv = airq_iv_create(msi_vecs, AIRQ_IV_DATA);
if (!zdev->aibv) if (!zdev->aibv)
return -ENOMEM; return -ENOMEM;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment