if anyone wants to play with my kernel cleanup scripts ...

Robert P. J. Day rpjday at crashcourse.ca
Thu Sep 18 06:57:27 EDT 2014


... i've been tidying them up a bit and rerunning them to get
up-to-date output as examples:

http://www.crashcourse.ca/wiki/index.php/Kernel_cleanup_scripts

and as i know greg kh follows this list, i thought the following
output from running the "badref" script on drivers/staging was
interesting (it's reproduced on the wiki page as sample output):

>>>>> B4860G100
drivers/staging/gs_fpgaboot/io.c:34:#ifdef CONFIG_B4860G100
drivers/staging/gs_fpgaboot/io.c:36:#endif /* CONFIG_B4860G100 */
drivers/staging/gs_fpgaboot/io.c:95:#ifdef CONFIG_B4860G100
drivers/staging/gs_fpgaboot/io.c:300:#endif /* CONFIG_B4860G100 */
>>>>> FORCE_HARD_FLOAT
drivers/staging/rtl8192u/r8192U_core.c:27:#ifndef CONFIG_FORCE_HARD_FLOAT
>>>>> MACH_EMGR
drivers/staging/emxx_udc/emxx_udc.h:440:#ifdef CONFIG_MACH_EMGR

  what the above purportedly shows is that, under the entire
drivers/staging directory, there are three examples of CONFIG_*
variables that are referenced in some way in a source or header file
that are not defined in any Kconfig file in the entire source tree.

  it's up to the authors to fix that any way they want, but the
second example ("CONFIG_FORCE_HARD_FLOAT") deserves more explanation.
here's the result of a tree-wide grep:

$ grep -r FORCE_HARD_FLOAT *
drivers/staging/rtl8192u/Makefile:ccflags-y += -DCONFIG_FORCE_HARD_FLOAT=y
drivers/staging/rtl8192u/r8192U_core.c:#ifndef CONFIG_FORCE_HARD_FLOAT
$

so while that variable is not defined in a Kconfig file, it *is*
actually defined as a flag in the associated Makefile, which is a
*no-no* -- the very established tradition is that the variable prefix
"CONFIG_" is reserved for Kconfig variables *only*. if that variable
*used* to be set in a Kconfig file, but was subsequently moved to a
Makefile, tradition suggests the "CONFIG_" prefix should have been
dropped.

  anyway, you find all sorts of interesting things scanning the kernel
tree. feel free to play and suggest fixes to those scripts -- i'm sure
they have bugs in them.

rday

-- 

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

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




More information about the Kernelnewbies mailing list