test11-pre6
Linus,
You forgot about wakeup_bdflush(1) stuff.
Here is the patch again (against test10).
===============================================================
There are several places where schedule() is called after wakeup_bdflush(1) is called. This is completely unnecessary, since wakeup_bdflush(1) already gave up the control, and when the control is returned to the calling thread who called wakeup_bdflush(1), it should just go on. Calling schedule() after wakeup_bdflush(1) will make the calling thread give up control again. This is a problem for some of those latency sensitive benchmarks (like SPEC SFS) and applications.
============
highmem.c Fri Nov 10 17:51:39 2000 renamed from highmem.c Wed Oct 18 14:25:46 2000 +0 -4
@@ -310,8 +310,6 @@ bh = kmem_cache_alloc(bh_cachep, SLAB_BUFFER); if (!bh) { wakeup_bdflush(1); /* Sets task->state to TASK_RUNNING */ - current->policy |= SCHED_YIELD; - schedule(); goto repeat_bh; } /*
@@ -324,8 +322,6 @@ page = alloc_page(GFP_BUFFER); if (!page) { wakeup_bdflush(1); /* Sets task->state to TASK_RUNNING */ - current->policy |= SCHED_YIELD; - schedule(); goto repeat_page; } set_bh_page(bh, page, 0);
buffer.c Fri Nov 10 20:05:44 2000 renamed from buffer.c Thu Oct 12 14:19:32 2000 +1 -4
@@ -707,11 +707,8 @@ */ static void refill_freelist(int size) { - if (!grow_buffers(size)) { + if (!grow_buffers(size)) wakeup_bdflush(1); /* Sets task->state to TASK_RUNNING */ - current->policy |= SCHED_YIELD; - schedule(); - } } void init_buffer(struct buffer_head *bh, bh_end_io_t *handler, void
*private)
==============================
Ying Chen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
From: "Ying Chen/Almaden/IBM" <[email protected]>
Date: Thu, 16 Nov 2000 19:02:25 -0800
You forgot about wakeup_bdflush(1) stuff.
What are you talking about, did you even check the patch?
Your changes are already in there.
Later,
David S. Miller
[email protected]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/