Messages in this thread | | | Date | Tue, 29 Jul 2014 15:53:27 +0900 | From | Joonsoo Kim <> | Subject | Re: [PATCH v5 07/14] mm, compaction: khugepaged should not give up due to need_resched() |
| |
On Mon, Jul 28, 2014 at 03:11:34PM +0200, Vlastimil Babka wrote: > Async compaction aborts when it detects zone lock contention or need_resched() > is true. David Rientjes has reported that in practice, most direct async > compactions for THP allocation abort due to need_resched(). This means that a > second direct compaction is never attempted, which might be OK for a page > fault, but khugepaged is intended to attempt a sync compaction in such case and > in these cases it won't.
I have a silly question here. Why need_resched() is criteria to stop async compaction? need_resched() is flagged up when time slice runs out or other reasons. It means that we should stop async compaction at arbitrary timing because process can be on compaction code at arbitrary moment. I think that it isn't reasonable and it doesn't ensure anything. Instead of this approach, how about doing compaction on certain amounts of pageblock for async compaction?
Thanks.
| |