From: Andrea Arcangeli <aarcange@redhat.com>
To: "Alex Villacís Lasso" <avillaci@fiec.espol.edu.ec>
Cc: Mel Gorman <mel@csn.ul.ie>,
Andrew Morton <akpm@linux-foundation.org>,
avillaci@ceibo.fiec.espol.edu.ec,
bugzilla-daemon@bugzilla.kernel.org,
bugme-daemon@bugzilla.kernel.org, linux-mm@kvack.org
Subject: Re: [Bugme-new] [Bug 31142] New: Large write to USB stick freezes unrelated tasks for a long time
Date: Fri, 8 Apr 2011 21:09:12 +0200 [thread overview]
Message-ID: <20110408190912.GI29444@random.random> (raw)
In-Reply-To: <4D99E5C8.7090505@fiec.espol.edu.ec>
Hi Alex,
On Mon, Apr 04, 2011 at 10:37:44AM -0500, Alex Villaci-s Lasso wrote:
> Latest update: with 2.6.39-rc1 the stalls only last for a few
> seconds, but they are still there. So, as I said before, they are
> reduced but not eliminated.
Ok from a complete stall for the whole duration of the I/O to a few
second stall we're clearly going into the right direction.
The few second stalls happen with udf? And vfat doesn't stall?
Minchan rightly pointed out that the (panik) change we made in
page_alloc.c changes the semantics of the __GFP_NO_KSWAPD bit. I also
talked with Mel about it. We think it's nicer if we can keep THP
allocations as close as any other high order allocation as
possible. There are already plenty of __GFP bits with complex
semantics. __GFP_NO_KSWAPD is simple and it's nice to stay simple: it
means the allocation relies on a different kernel daemon for the
background work (which is khugepaged instead of kswapd in the THP
case, where khugepaged uses a non intrusive alloc_sleep_millisec
throttling in case of MM congestion, unlike kswapd would do).
So this is no solution to your problem (if vfat already works I think
that might be a better solution), but we'd like to know if you get any
_worse_ stall compared to current 2.6.39-rc, by applying the below
patch on top of 2.6.39-rc. If this doesn't make any difference, we can
safely apply it to remove unnecessary complications.
Thanks,
Andrea
===
Subject: compaction: reverse the change that forbid sync migraton with __GFP_NO_KSWAPD
From: Andrea Arcangeli <aarcange@redhat.com>
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@redhat.com>
---
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,
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. 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@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2011-04-08 19:10 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-31142-10286@https.bugzilla.kernel.org/>
2011-03-15 20:53 ` [Bugme-new] [Bug 31142] New: Large write to USB stick freezes unrelated tasks for a long time Andrew Morton
2011-03-15 22:53 ` Alex Villacís Lasso
2011-03-15 23:19 ` Andrew Morton
2011-03-16 15:25 ` Alex Villacís Lasso
2011-03-16 22:02 ` Andrew Morton
2011-03-17 21:27 ` Alex Villacís Lasso
2011-03-17 21:47 ` Andrew Morton
2011-03-17 22:11 ` Alex Villacís Lasso
2011-03-17 22:25 ` Andrew Morton
2011-03-18 11:13 ` Mel Gorman
2011-03-18 12:26 ` Andrea Arcangeli
2011-03-18 18:05 ` Alex Villacís Lasso
2011-03-19 13:46 ` Mel Gorman
2011-03-19 16:04 ` Alex Villacís Lasso
2011-03-19 23:51 ` Andrea Arcangeli
2011-03-21 9:41 ` Mel Gorman
2011-03-21 13:48 ` Andrea Arcangeli
2011-03-21 15:22 ` Alex Villacís Lasso
2011-03-21 15:36 ` Alex Villacís Lasso
2011-03-21 15:40 ` Andrea Arcangeli
2011-03-21 16:37 ` Mel Gorman
2011-03-21 17:05 ` Alex Villacís Lasso
2011-03-21 20:16 ` Andrea Arcangeli
2011-03-21 23:35 ` Alex Villacís Lasso
2011-03-22 11:20 ` Mel Gorman
2011-03-22 15:03 ` Andrea Arcangeli
2011-03-22 20:34 ` Alex Villacís Lasso
2011-03-22 21:40 ` Andrea Arcangeli
2011-03-23 0:37 ` Andrea Arcangeli
2011-03-23 16:51 ` Alex Villacís Lasso
2011-04-04 15:37 ` Alex Villacís Lasso
2011-04-08 19:09 ` Andrea Arcangeli [this message]
2011-04-08 20:06 ` Alex Villacís Lasso
2011-04-12 16:27 ` Alex Villacís Lasso
2011-04-14 17:25 ` Alex Villacís Lasso
2011-04-14 17:37 ` Andrea Arcangeli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110408190912.GI29444@random.random \
--to=aarcange@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=avillaci@ceibo.fiec.espol.edu.ec \
--cc=avillaci@fiec.espol.edu.ec \
--cc=bugme-daemon@bugzilla.kernel.org \
--cc=bugzilla-daemon@bugzilla.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mel@csn.ul.ie \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).