My build coverage for non-modules adding dead modular code tripped on this recently new addition. After removing that and rebuilding, I saw the driver still had warnings that were independent of the "demodular" change, which the 2nd commit fixes.
Then there was "select" usage that was bound to cause troubles because it was selecting an option with explicit dependencies. We decouple by adding an ARCH_HAS so the selects are valid while keeping the depends listed in a single place. We do this so we can update the parent depends properly (and only once) in 4/4. Build tested for x86-64, arm64 and s390. Other 64 bit arch don't build and hence appear to be not applicable, as per details in patch 4/4. Cc: Jérôme Glisse <[email protected]> Cc: Evgeny Baskakov <[email protected]> Cc: John Hubbard <[email protected]> Cc: Mark Hairgrove <[email protected]> Cc: Sherry Cheung <[email protected]> Cc: Subhash Gutti <[email protected]> Cc: Andrew Morton <[email protected]> --- Paul Gortmaker (4): mm/hmm: make it explicitly non-modular mm/hmm: fix warnings and SECTION_SIZE definition overlap mm/hmm: fix Kconfig to have valid usage of "select" mm/hmm: exclude 64 bit arch that explicitly fail to work. mm/Kconfig | 23 +++++++++-------------- mm/hmm.c | 37 +++++++++++++++---------------------- 2 files changed, 24 insertions(+), 36 deletions(-) -- 2.11.0

