On 3/29/19 2:15 PM, Jerome Glisse wrote: [...] >> Yes, this is a good move, given that MMU notifiers are completely, >> indispensably part of the HMM design and implementation. >> >> The alternative would also work, but it's not quite as good. I'm >> listing it in order to forestall any debate: >> >> config HMM >> bool >> + depends on MMU_NOTIFIER >> select MIGRATE_VMA_HELPER >> >> ...and "depends on" versus "select" is always a subtle question. But in >> this case, I'd say that if someone wants HMM, there's no advantage in >> making them know that they must first ensure MMU_NOTIFIER is enabled. >> After poking around a bit I don't see any obvious downsides either. > > You can not depend on MMU_NOTIFIER it is one of the kernel config > option that is not selectable. So any config that need MMU_NOTIFIER > must select it. > aha, thanks for explaining that point about the non-user-selectable items, I wasn't aware of that. (I had convinced myself that those were set by hard-coding a choice in one of the Kconfig files.) >> >> However, given that you're making this change, in order to avoid odd >> redundancy, you should also do this: >> >> diff --git a/mm/Kconfig b/mm/Kconfig >> index 0d2944278d80..2e6d24d783f7 100644 >> --- a/mm/Kconfig >> +++ b/mm/Kconfig >> @@ -700,7 +700,6 @@ config HMM >> config HMM_MIRROR >> bool "HMM mirror CPU page table into a device page table" >> depends on ARCH_HAS_HMM >> - select MMU_NOTIFIER >> select HMM >> help >> Select HMM_MIRROR if you want to mirror range of the CPU page table of a > > Because it is a select option no harm can come from that hence i do > not remove but i can remove it. > Yes, this is just a tiny housecleaning point, not anything earthshaking. thanks, -- John Hubbard NVIDIA