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