/* * Ethernet interface interrupt. */ if_etintr(int unit) { ETIO io; struct et_info *ei; register int s = splimp(); /* get the spin lock */ ASSERT(unit == 0); ei = &et_info; io = ei->ei_io; if (io == 0) { /* ignore early interrupts */ printf("et0: early interrupt\n"); splx(s); return 1; } IFNET_LOCKNOSPL(&ei->ei_if); et_poll(ei); IFNET_UNLOCKNOSPL(&ei->ei_if); splx(s); }