lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110228183816.GA1759@merkur.ravnborg.org>
Date:	Mon, 28 Feb 2011 19:38:16 +0100
From:	Sam Ravnborg <sam@...nborg.org>
To:	Borislav Petkov <bp@...en8.de>, Michal Marek <mmarek@...e.cz>,
	torvalds@...ux-foundation.org, x86@...nel.org,
	linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...e.hu>,
	linux-kbuild@...r.kernel.org, bp@...64.org
Subject: Re: [PATCH -v4] kbuild: Add extra gcc checks

On Mon, Feb 21, 2011 at 12:03:22PM +0100, Borislav Petkov wrote:
> 
> Add a 'W=1' Makefile switch which adds additional checking per build
> object.
> 
> The idea behind this option is targeted at developers who, in the
> process of writing their code, want to do the occasional
> 
> make W=1 [target.o]
> 
> and let gcc do more extensive code checking for them. Then, they
> could eyeball the output for valid gcc warnings about various
> bugs/discrepancies which are not reported during the normal build
> process.
> 
> For more background information and a use case, read through this
> thread: http://marc.info/?l=kernel-janitors&m=129802065918147&w=2
> 
> -v4: Enable this for gcc only. Also, check for options which are not
> supported by every gcc version we use to build the kernel. Adding those
> checks for _every_ option slows down the build noticeably so be sensible
> here and add it only when your gcc version chokes on a particular
> option.
> 
> -v[2..3]: move to Makefile.build
> 
> Cc: Michal Marek <mmarek@...e.cz>
> Cc: Sam Ravnborg <sam@...nborg.org>
> Cc: linux-kbuild@...r.kernel.org
> Acked-by: Ingo Molnar <mingo@...e.hu>
> Signed-off-by: Borislav Petkov <bp@...en8.de>
> ---
>  Makefile               |    6 ++++++
>  scripts/Makefile.build |   37 ++++++++++++++++++++++++++++++++++++-
>  2 files changed, 42 insertions(+), 1 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index c9c8c8f..c3bca9c 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -102,6 +102,11 @@ ifeq ("$(origin O)", "command line")
>    KBUILD_OUTPUT := $(O)
>  endif
>  
> +ifeq ("$(origin W)", "command line")
> +  KBUILD_ENABLE_EXTRA_GCC_CHECKS = 1
> +  export KBUILD_ENABLE_EXTRA_GCC_CHECKS
> +endif

It is simpler to just write:
export KBUILD_ENABLE_EXTRA_GCC_CHECKS := 1


> +#
> +# make W=1 settings
> +#
> +# $(call cc-option... ) handles gcc -W.. options which
> +# are not supported by all versions of the compiler
> +ifdef KBUILD_ENABLE_EXTRA_GCC_CHECKS

> +ifneq ($(call cc-version),)
This check looks redundant.

You introduce a new environment variable "KBUILD_ENABLE_EXTRA_GCC_CHECKS".
We actually ty to document these in Documentation/kbuild/kbuild.txt

Fix the above and you can add my:
Acked-by: Sam Ravnborg <sam@...nborg.org>

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ