summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2008-03-27 23:02:30 +0000
committermav <mav@FreeBSD.org>2008-03-27 23:02:30 +0000
commit586e0246eb781c4b3abd8db78b14582a53fbf171 (patch)
treea56461b6f39e3e97fcb96be25356f920d68582d0
parent162471f2fb52f635320655aee0048ac48c38821c (diff)
downloadFreeBSD-src-586e0246eb781c4b3abd8db78b14582a53fbf171.zip
FreeBSD-src-586e0246eb781c4b3abd8db78b14582a53fbf171.tar.gz
Remove ng_setisr() call from ng_dequeue(). It is useless as we any way
will never exit ngintr(), while there is some ready requests on the queue. It was made years ago with hope of parallel queue processing by several net threads. But even if we have several threads sometimes, we have no rights to process queue in parallel as it will break original requests serialization that is critically important for some setups.
-rw-r--r--sys/netgraph/ng_base.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/sys/netgraph/ng_base.c b/sys/netgraph/ng_base.c
index e893cf8..645caf4 100644
--- a/sys/netgraph/ng_base.c
+++ b/sys/netgraph/ng_base.c
@@ -1996,13 +1996,6 @@ ng_dequeue(struct ng_queue *ngq, int *rw)
* we don't need to change the PENDING flag.
*/
atomic_add_long(&ngq->q_flags, add_arg);
- /*
- * If we see more doable work, make sure we are
- * on the work queue.
- */
- if (NEXT_QUEUED_ITEM_CAN_PROCEED(ngq)) {
- ng_setisr(ngq->q_node);
- }
}
CTR6(KTR_NET, "%20s: node [%x] (%p) returning item %p as %s; "
"queue flags 0x%lx", __func__,
@@ -3385,10 +3378,6 @@ ngintr(void)
* All this time, keep the reference
* that lets us be sure that the node still exists.
* Let the reference go at the last minute.
- * ng_dequeue will put us back on the worklist
- * if there is more too do. This may be of use if there
- * are Multiple Processors and multiple Net threads in the
- * future.
*/
for (;;) {
int rw;
OpenPOWER on IntegriCloud