Re: [PATCH] mm/gup_benchmark: GUP_BENCHMARK depends on DEBUG_FS

From: John Hubbard
Date: Sun Nov 08 2020 - 02:53:35 EST


On 11/7/20 11:35 PM, Song Bao Hua (Barry Song) wrote:
Or do you want this ?

(Code B)
diff --git a/mm/Kconfig b/mm/Kconfig
index 01b0ae0cd9d3..a7ff0d31afd5 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -836,6 +836,7 @@ config PERCPU_STATS

config GUP_TEST
bool "Enable infrastructure for get_user_pages()-related unit tests"
+ depends on DEBUG_FS
help
Provides /sys/kernel/debug/gup_test, which in turn provides a way
to make ioctl calls that can launch kernel-based unit tests for
@@ -853,6 +854,9 @@ config GUP_TEST

See tools/testing/selftests/vm/gup_test.c

+comment "GUP_TEST needs to have DEBUG_FS enabled"
+ depends on !GUP_TEST && !DEBUG_FS
+
config GUP_GET_PTE_LOW_HIGH
bool


The above, please. It's your original patch, plus a way to display something
if the "depends on" is not met.



To be honest, I am not a big fan of both of code A and B. I think "depends on" has
clearly said everything the redundant comment wants to say.

It's not really just a "comment", in the sense of commenting the Kconfig sources.
It actually has an effect, which is that it displays something in "make menuconfig".
So it's not redundant, because it provides that output *instead* of hiding the
option entirely, when !DEBUG_FS.

Try it out, it's nice.



│ Symbol: GUP_TEST [=]
│ Type : bool
│ Defined at mm/Kconfig:837
│ Prompt: Enable infrastructure for get_user_pages()-related unit tests
│ Depends on: DEBUG_FS [=n]
│ Location:
│ (1) -> Memory Management option

Menuconfig shows GUP_TEST depends on DEBUG_FS and right now DEBUG_FS is
"n". so it is impossible to enable GUP_TEST.

"comment" is a good thing, but it is more likely to be used for a menu or a group
of configurations to extend a bundle of things.

On the other hand, If this particular case needs this comment, so do countless
other configurations in hundreds of Kconfig files.

Well, maybe, yes.

I personally find it quite difficult, having options appear and disappear on me,
in this system. If they all had this "comment" behavior by default, to show up
as a placeholder, I think it would be a better user experience.


thanks,
--
John Hubbard
NVIDIA