summaryrefslogtreecommitdiffstats
path: root/mm/mempool.c
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2006-09-04 06:42:01 -0400
committerJeff Garzik <jeff@garzik.org>2006-09-04 06:42:01 -0400
commitfc851fad00d7fa1bf4ac7034d9ba8041bf482d50 (patch)
tree779a8b572d1701ef2c46755df751d9275650cdf4 /mm/mempool.c
parent85cd7251b9112e3dabeac9fd3b175601ca607241 (diff)
parentf9bcda7760e1373615c9f6d9ce24209b0ab97de1 (diff)
downloadtalos-op-linux-fc851fad00d7fa1bf4ac7034d9ba8041bf482d50.tar.gz
talos-op-linux-fc851fad00d7fa1bf4ac7034d9ba8041bf482d50.zip
Merge branch 'upstream' into pata-drivers
Diffstat (limited to 'mm/mempool.c')
-rw-r--r--mm/mempool.c9
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;
OpenPOWER on IntegriCloud