Re: [PATCH 0/4] Convert khugepaged to a task_work function

From: Rik van Riel
Date: Tue Oct 28 2014 - 09:02:19 EST


On 10/28/2014 08:12 AM, Andi Kleen wrote:
> Alex Thorlton <athorlton@xxxxxxx> writes:
>
>> Last week, while discussing possible fixes for some unexpected/unwanted behavior
>> from khugepaged (see: https://lkml.org/lkml/2014/10/8/515) several people
>> mentioned possibly changing changing khugepaged to work as a task_work function
>> instead of a kernel thread. This will give us finer grained control over the
>> page collapse scans, eliminate some unnecessary scans since tasks that are
>> relatively inactive will not be scanned often, and eliminate the unwanted
>> behavior described in the email thread I mentioned.
>
> With your change, what would happen in a single threaded case?
>
> Previously one core would scan and another would run the workload.
> With your change both scanning and running would be on the same
> core.
>
> Would seem like a step backwards to me.

It's not just scanning, either.

Memory compaction can spend a lot of time waiting on
locks. Not consuming CPU or anything, but just waiting.

I am not convinced that moving all that waiting to task
context is a good idea.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/