Re: [RFC][PATCH V2] GCOV: profile by modules

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 20, 2020 at 04:38:21PM +0800, gengcixi@xxxxxxxxx wrote:
> From: Cixi Geng <cixi.geng1@xxxxxxxxxx>
> 
> ---
> Replace symbol GCOV_PROFILE_MODULES with GCOV_PROFILE_PREREQS
> ---
> The CONFIG_GCOV_PROFILE_ALL will compile kernel by profiling entire
> kernel which will lead to kernel run slower.Use GCOV_PROFILE_PREREQS
> to control part of the kernel modules to open gcov.
> 
> Only add SERIAL_GCOV for an example.
> 
> Signed-off-by: Cixi Geng <cixi.geng1@xxxxxxxxxx>
> ---
>  drivers/tty/serial/Kconfig  |  6 ++++++
>  drivers/tty/serial/Makefile |  1 +
>  kernel/gcov/Kconfig         | 14 ++++++++++++++
>  3 files changed, 21 insertions(+)
> 
> diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
> index adf9e80e7dc9..964df1a2989c 100644
> --- a/drivers/tty/serial/Kconfig
> +++ b/drivers/tty/serial/Kconfig
> @@ -1566,3 +1566,9 @@ endmenu
>  
>  config SERIAL_MCTRL_GPIO
>  	tristate
> +
> +config SERIAL_GCOV
> +       bool "open gcov for serial"

What do you mean by "open"?  And Kconfig entries are usually Upper Case" :)

> +       depends on GCOV_PROFILE_PREREQS
> +       help
> +         Say Y here to enable gcov in serial.

I think we need more text here.


> diff --git a/drivers/tty/serial/Makefile b/drivers/tty/serial/Makefile
> index d056ee6cca33..7be1202286d2 100644
> --- a/drivers/tty/serial/Makefile
> +++ b/drivers/tty/serial/Makefile
> @@ -2,6 +2,7 @@
>  #
>  # Makefile for the kernel serial device drivers.
>  #
> +GCOV_PROFILE := $(CONFIG_SERIAL_GCOV)
>  
>  obj-$(CONFIG_SERIAL_CORE) += serial_core.o
>  
> diff --git a/kernel/gcov/Kconfig b/kernel/gcov/Kconfig
> index 3941a9c48f83..91cc8f3c7c43 100644
> --- a/kernel/gcov/Kconfig
> +++ b/kernel/gcov/Kconfig
> @@ -51,6 +51,20 @@ config GCOV_PROFILE_ALL
>  	larger and run slower. Also be sure to exclude files from profiling
>  	which are not linked to the kernel image to prevent linker errors.
>  
> +config GCOV_PROFILE_PREREQS
> +	bool "Profile Kernel subsytem"
> +	depends on !COMPILE_TEST
> +	depends on GCOV_KERNEL
> +	default n

default is always 'n', no need to list that

> +	help
> +	This options activates profiling for the specified kernel modules.
> +
> +	If unsure, say N.
> +
> +	When some modules need Gcov data, enable this config, then configure
> +	with gcov on the corresponding modules configs.The directories or files

'. '?

> +	of these modules will be added profiling flags after kernel compile.

The lines under "help" need to be indented more, right?

thanks,

greg k-h



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux