Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db40b3f5 authored by Govindarajulu Varadarajan's avatar Govindarajulu Varadarajan Committed by David S. Miller
Browse files

enic: use napi_schedule_irqoff()



enic_isr_legacy(), enic_isr_msix() & enic_isr_msi() run from hard
interrupt context.

They can use napi_schedule_irqoff() instead of napi_schedule()

Signed-off-by: default avatarGovindarajulu Varadarajan <_govind@gmx.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent bd635c35
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -283,12 +283,10 @@ static irqreturn_t enic_isr_legacy(int irq, void *data)
		return IRQ_HANDLED;
	}

	if (ENIC_TEST_INTR(pba, io_intr)) {
		if (napi_schedule_prep(&enic->napi[0]))
			__napi_schedule(&enic->napi[0]);
	} else {
	if (ENIC_TEST_INTR(pba, io_intr))
		napi_schedule_irqoff(&enic->napi[0]);
	else
		vnic_intr_unmask(&enic->intr[io_intr]);
	}

	return IRQ_HANDLED;
}
@@ -313,7 +311,7 @@ static irqreturn_t enic_isr_msi(int irq, void *data)
	 * writes).
	 */

	napi_schedule(&enic->napi[0]);
	napi_schedule_irqoff(&enic->napi[0]);

	return IRQ_HANDLED;
}
@@ -322,7 +320,7 @@ static irqreturn_t enic_isr_msix(int irq, void *data)
{
	struct napi_struct *napi = data;

	napi_schedule(napi);
	napi_schedule_irqoff(napi);

	return IRQ_HANDLED;
}