Re: [PATCH -mm -v4 01/21] mm, THP, swap: Enable PMD swap operations for CONFIG_THP_SWAP

From: Huang\, Ying
Date: Mon Jul 09 2018 - 21:09:15 EST


Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> writes:

> On 06/21/2018 08:51 PM, Huang, Ying wrote:
>> From: Huang Ying <ying.huang@xxxxxxxxx>
>>
>> Previously, the PMD swap operations are only enabled for
>> CONFIG_ARCH_ENABLE_THP_MIGRATION. Because they are only used by the
>> THP migration support. We will support PMD swap mapping to the huge
>> swap cluster and swapin the THP as a whole. That will be enabled via
>> CONFIG_THP_SWAP and needs these PMD swap operations. So enable the
>> PMD swap operations for CONFIG_THP_SWAP too.
>
> This commit message kinda skirts around the real reasons for this patch.
> Shouldn't we just say something like:
>
> Currently, "swap entries" in the page tables are used for a
> number of things outside of actual swap, like page migration.
> We support THP/PMD "swap entries" for page migration currently
> and the functions behind this are tied to page migration's
> config option (CONFIG_ARCH_ENABLE_THP_MIGRATION).
>
> But, we also need them for THP swap.
> ...
>
> It would also be nice to explain a bit why you are moving code around.

This looks much better than my original words. Thanks for help!

> Would this look any better if we made a Kconfig option:
>
> config HAVE_THP_SWAP_ENTRIES
> def_bool n
> # "Swap entries" in the page tables are used
> # both for migration and actual swap.
> depends on THP_SWAP || ARCH_ENABLE_THP_MIGRATION
>
> You logically talked about this need for PMD swap operations in your
> commit message, so I think it makes sense to codify that in a single
> place where it can be coherently explained.

Because both you and Dan thinks it's better to add new Kconfig option, I
will do that.

Best Regards,
Huang, Ying