Messages in this thread |  | | Date | Fri, 27 Oct 2000 13:46:03 -0700 | From | Jens Axboe <> | Subject | Re: Blocked processes <=> Elevator starvation? |
| |
On Fri, Oct 27 2000, Rui Sousa wrote: > I finally had time to give this a better look. It now seems the problem > is in the VM system. > > I patched a test10-pre4 kernel with kdb, then started two "diff -ur > linux-2.4.0testX linux-2.4.0testY > log1" and two "find / -true > > log". After this I tried cat"ing" a small file. The cat never > returned. At this point I entered kdb and did a stack trace on the "cat" > process: > > schedule() > ___wait_on_page() > do_generic_file_read() > generic_file_read() > sys_read() > system_call() > > So it seems the process is either in a loop in ___wait_on_page() > racing for the PageLock or it never wakes-up... (I guess I could add a > printk to check which) > Unfortunately I didn't find anything obviously wrong with the code. > I hope you can do a better job tracking the problem down.
Rik is right, just because you are seeing long waits on wait_on_page doesn't make it a vm problem. When a I/O on a page completes, the page will be unlocked and wait_on_page can grab it -- so I/O stalls would results in this behaviour.
Could you try this patch:
*.kernel.org/pub/linux/kernel/people/axboe/patches/2.4.0-test10-pre6/blk-7.bz2
and see if it makes a difference?
-- * Jens Axboe <axboe@suse.de> * SuSE Labs - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |