sparc64: Set IRQF_DISABLED on LDC channel IRQs.
With lots of virtual devices it's easy to generate a lot of events and chew up the kernel IRQ stack. Reported-by: hyl <heyongli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1a78cedb99
commit
c58543c869
|
@ -1242,13 +1242,13 @@ int ldc_bind(struct ldc_channel *lp, const char *name)
|
||||||
snprintf(lp->tx_irq_name, LDC_IRQ_NAME_MAX, "%s TX", name);
|
snprintf(lp->tx_irq_name, LDC_IRQ_NAME_MAX, "%s TX", name);
|
||||||
|
|
||||||
err = request_irq(lp->cfg.rx_irq, ldc_rx,
|
err = request_irq(lp->cfg.rx_irq, ldc_rx,
|
||||||
IRQF_SAMPLE_RANDOM | IRQF_SHARED,
|
IRQF_SAMPLE_RANDOM | IRQF_DISABLED | IRQF_SHARED,
|
||||||
lp->rx_irq_name, lp);
|
lp->rx_irq_name, lp);
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
err = request_irq(lp->cfg.tx_irq, ldc_tx,
|
err = request_irq(lp->cfg.tx_irq, ldc_tx,
|
||||||
IRQF_SAMPLE_RANDOM | IRQF_SHARED,
|
IRQF_SAMPLE_RANDOM | IRQF_DISABLED | IRQF_SHARED,
|
||||||
lp->tx_irq_name, lp);
|
lp->tx_irq_name, lp);
|
||||||
if (err) {
|
if (err) {
|
||||||
free_irq(lp->cfg.rx_irq, lp);
|
free_irq(lp->cfg.rx_irq, lp);
|
||||||
|
|
Loading…
Reference in New Issue