reasonable for a Kconfig variable to be tested only for "_MODULE"?

From: Robert P. J. Day
Date: Thu Apr 12 2012 - 07:30:45 EST



playing with my cleanup scripts this morning and ran across this
output looking for unused CONFIG_ variables under drivers/ata:

$ ../s/find_unused_configs.sh drivers/ata
===== PATA_QDI
drivers/ata/Kconfig:831:config PATA_QDI
===== PATA_WINBOND_VLB
drivers/ata/Kconfig:865:config PATA_WINBOND_VLB
$

normally, i would flag that as "variables that are defined in a
Kconfig file but are never tested anywhere", but upon further
examination:

$ $ grep -r PATA_QDI *
drivers/ata/Kconfig:config PATA_QDI
drivers/ata/pata_legacy.c:#ifdef CONFIG_PATA_QDI_MODULE
$

so "CONFIG_PATA_QDI" isn't tested, but "CONFIG_PATA_QDI_MODULE" *is*,
which is not something i'd considered. the Kconfig entry:

config PATA_QDI
tristate "QDI VLB PATA support"
depends on ISA
select PATA_LEGACY
help
Support for QDI 6500 and 6580 PATA controllers on VESA local bus.

and the relevant source:

/* Set to probe QDI controllers */
#ifdef CONFIG_PATA_QDI_MODULE
static int qdi = 1;
#else
static int qdi;
#endif

is that combination reasonable? to test *only* for
"CONFIG_whatever_MODULE"? if it is, i'll add that check to avoid
reporting false positives.

all of the above can be said for PATA_WINBOND_VLB as well.

rday

--

========================================================================
Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter: http://twitter.com/rpjday
LinkedIn: http://ca.linkedin.com/in/rpjday
========================================================================


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/