==== //depot/projects/netperf/sys/net/netisr.c#2 - /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 @@ -150,7 +149,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 @@ -167,7 +166,6 @@ if (_IF_QLEN(ni->ni_queue) > 0) isrstat.isrs_bypassed++; ni->ni_handler(m); - mtx_unlock(&netisr_mtx); } else { isrstat.isrs_deferred++; if (IF_HANDOFF(ni->ni_queue, m, NULL)) @@ -212,7 +210,6 @@ const int polling = 0; #endif - mtx_lock(&netisr_mtx); do { bits = atomic_readandclear_int(&netisr); if (bits == 0) @@ -237,14 +234,12 @@ } } } 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"); }