diff options
| author | Jeff Garzik <jeff@garzik.org> | 2006-09-04 06:41:37 -0400 |
|---|---|---|
| committer | Jeff Garzik <jeff@garzik.org> | 2006-09-04 06:41:37 -0400 |
| commit | f9bcda7760e1373615c9f6d9ce24209b0ab97de1 (patch) | |
| tree | f90b3031126c4e4beb8161f38ea436303e2b8b73 /mm/mempool.c | |
| parent | 9bec2e38527a9f2497b3d976715c672d08d6160d (diff) | |
| parent | c336923b668fdcf0312efbec3b44895d713f4d81 (diff) | |
Merge branch 'master' into upstream
Diffstat (limited to 'mm/mempool.c')
| -rw-r--r-- | mm/mempool.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/mm/mempool.c b/mm/mempool.c index fe6e05289cc5..ccd8cb8cd41f 100644 --- a/mm/mempool.c +++ b/mm/mempool.c @@ -238,8 +238,13 @@ repeat_alloc: init_wait(&wait); prepare_to_wait(&pool->wait, &wait, TASK_UNINTERRUPTIBLE); smp_mb(); - if (!pool->curr_nr) - io_schedule(); + if (!pool->curr_nr) { + /* + * FIXME: this should be io_schedule(). The timeout is there + * as a workaround for some DM problems in 2.6.18. + */ + io_schedule_timeout(5*HZ); + } finish_wait(&pool->wait, &wait); goto repeat_alloc; |
