==== //depot/projects/netperf/sys/net/netisr.c#4 - /home/robert/p4/projects/netperf/sys/net/netisr.c ==== @@ -60,7 +60,6 @@ struct ifqueue *ni_queue; } netisrs[32]; -static struct mtx netisr_mtx; static void *net_ih; void @@ -166,7 +165,7 @@ m_freem(m); return; } - if (netisr_enable && mtx_trylock(&netisr_mtx)) { + if (netisr_enable) { isrstat.isrs_directed++; /* * One slight problem here is that packets might bypass @@ -182,7 +181,6 @@ */ netisr_processqueue(ni); ni->ni_handler(m); - mtx_unlock(&netisr_mtx); } else { isrstat.isrs_deferred++; if (IF_HANDOFF(ni->ni_queue, m, NULL)) @@ -226,7 +224,6 @@ const int polling = 0; #endif - mtx_lock(&netisr_mtx); do { bits = atomic_readandclear_int(&netisr); if (bits == 0) @@ -246,14 +243,12 @@ netisr_processqueue(ni); } } while (polling); - mtx_unlock(&netisr_mtx); } static void start_netisr(void *dummy) { - mtx_init(&netisr_mtx, "netisr lock", NULL, MTX_DEF); if (swi_add(NULL, "net", swi_net, NULL, SWI_NET, INTR_MPSAFE, &net_ih)) panic("start_netisr"); }