El 12/04/11 11:27, Alex Villacís Lasso escribió:
===
Subject: compaction: reverse the change that forbid sync migraton with __GFP_NO_KSWAPD
From: Andrea Arcangeli<aarcange@xxxxxxxxxx>
It's uncertain this has been beneficial, so it's safer to undo it. All other
compaction users would still go in synchronous mode if a first attempt of async
compaction failed. Hopefully we don't need to force special behavior for THP
(which is the only __GFP_NO_KSWAPD user so far and it's the easier to exercise
and to be noticeable). This also make __GFP_NO_KSWAPD return to its original
strict semantics specific to bypass kswapd, as THP allocations have khugepaged
for the async THP allocations/compactions.
Signed-off-by: Andrea Arcangeli<aarcange@xxxxxxxxxx>
---
mm/page_alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -2105,7 +2105,7 @@ rebalance:
sync_migration);
if (page)
goto got_pg;
- sync_migration = !(gfp_mask& __GFP_NO_KSWAPD);
+ sync_migration = true;
/* Try direct reclaim and then allocating */
page = __alloc_pages_direct_reclaim(gfp_mask, order,
The stalls occur even with vfat. I am no longer using udf, since (right now) it is not necessary. I will test this patch now.
From preliminary tests, I feel that the patch actually eliminates the stalls. I have just copied nearly 6 GB of data into my USB stick and noticed no application freezes.
I retract that. I have tested 2.6.39-rc3 after a day of having several heavy applications loaded in memory, and the stalls do get worse when reversing the patch.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>