linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nick Desaulniers <ndesaulniers@google.com>
To: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>, sparse@chrisli.org
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	LKML <linux-kernel@vger.kernel.org>,
	efriedma@codeaurora.org, Kees Cook <keescook@chromium.org>,
	Ingo Molnar <mingo@kernel.org>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Arnd Bergmann <arnd@arndb.de>,
	Greg KH <gregkh@linuxfoundation.org>,
	Masahiro Yamada <yamada.masahiro@socionext.com>,
	joe@perches.com, asmadeus@codewreck.org
Subject: Re: [PATCH 6/7] Compiler Attributes: remove unneeded sparse (__CHECKER__) tests
Date: Fri, 31 Aug 2018 14:38:26 -0700	[thread overview]
Message-ID: <CAKwvOdkZeFj1QW8QBDSCet2Kv1jRka0DK_eSJwNmfG1Zqn2zcg@mail.gmail.com> (raw)
In-Reply-To: <20180831170514.24665-6-miguel.ojeda.sandonis@gmail.com>

On Fri, Aug 31, 2018 at 10:05 AM Miguel Ojeda
<miguel.ojeda.sandonis@gmail.com> wrote:
>
> Sparse knows about a few more attributes now, so we can remove
> the __CHECKER__ conditions from them (which, in turn, allow us
> to move some of them later on to compiler_attributes.h).
>
>   * assume_aligned: since sparse's commit ffc860b ("sparse:
>     ignore __assume_aligned__ attribute"), included in 0.5.1
>
>   * error: since sparse's commit 0a04210 ("sparse: Add 'error'
>     to ignored attributes"), included in 0.5.0
>
>   * hotpatch: since sparse's commit 6043210 ("sparse/parse.c:
>     ignore hotpatch attribute"), included in 0.5.1
>
>   * warning: since sparse's commit 977365d ("Avoid "attribute
>     'warning': unknown attribute" warning"), included in 0.4.2
>
> Cc: Eli Friedman <efriedma@codeaurora.org>
> Cc: Christopher Li <sparse@chrisli.org>
> Cc: Kees Cook <keescook@chromium.org>
> Cc: Ingo Molnar <mingo@kernel.org>
> Cc: Geert Uytterhoeven <geert@linux-m68k.org>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> Cc: Joe Perches <joe@perches.com>
> Cc: Dominique Martinet <asmadeus@codewreck.org>
> Cc: Nick Desaulniers <ndesaulniers@google.com>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
> ---
>  include/linux/compiler-gcc.h   | 6 ++----
>  include/linux/compiler_types.h | 2 +-
>  2 files changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h
> index fdf2fbe6d544..32e6ce06163f 100644
> --- a/include/linux/compiler-gcc.h
> +++ b/include/linux/compiler-gcc.h
> @@ -84,14 +84,12 @@
>
>  #define __compiletime_object_size(obj) __builtin_object_size(obj, 0)
>
> -#ifndef __CHECKER__
>  #define __compiletime_warning(message) __attribute__((warning(message)))
>  #define __compiletime_error(message) __attribute__((error(message)))
>
> -#ifdef LATENT_ENTROPY_PLUGIN
> +#if defined(LATENT_ENTROPY_PLUGIN) && !defined(__CHECKER__)
>  #define __latent_entropy __attribute__((latent_entropy))
>  #endif
> -#endif /* __CHECKER__ */
>
>  /*
>   * calling noreturn functions, __builtin_unreachable() and __builtin_trap()
> @@ -139,7 +137,7 @@
>
>  /* gcc version specific checks */
>
> -#if GCC_VERSION >= 40900 && !defined(__CHECKER__)
> +#if GCC_VERSION >= 40900
>  /*
>   * __assume_aligned(n, k): Tell the optimizer that the returned
>   * pointer can be assumed to be k modulo n. The second argument is
> diff --git a/include/linux/compiler_types.h b/include/linux/compiler_types.h
> index 3662b19599fc..5dddc7e0c607 100644
> --- a/include/linux/compiler_types.h
> +++ b/include/linux/compiler_types.h
> @@ -216,7 +216,7 @@ struct ftrace_likely_data {
>  #define __must_check
>  #endif
>
> -#if defined(CC_USING_HOTPATCH) && !defined(__CHECKER__)
> +#if defined(CC_USING_HOTPATCH)
>  #define notrace                        __attribute__((hotpatch(0, 0)))
>  #else
>  #define notrace                        __attribute__((no_instrument_function))
> --
> 2.17.1
>

Everything looks correct here.  It would be good for the sparse
maintainer to triple check the commit sha's (as those are for sparse's
code base, not the kernel's) and have their blessing.  If Chris is
happy with it, then you can add my signoff:

Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

Also, do you need to put the cc list in the commit message? Some
people do (hopefully in an automated fashion, because I'd imagine
manually to be difficult) but don't this it's required.  Doesn't
matter, just curious.

-- 
Thanks,
~Nick Desaulniers

  reply	other threads:[~2018-08-31 21:38 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-31 17:05 [PATCH 1/7] Compiler Attributes: remove unused attributes Miguel Ojeda
2018-08-31 17:05 ` [PATCH 2/7] Compiler Attributes: use the no-underscores syntax Miguel Ojeda
2018-08-31 18:51   ` Nick Desaulniers
2018-08-31 19:17     ` Miguel Ojeda
2018-08-31 21:49   ` Rasmus Villemoes
2018-08-31 22:10     ` Miguel Ojeda
2018-08-31 22:40       ` Miguel Ojeda
2018-09-03  6:42         ` Geert Uytterhoeven
2018-09-03 10:40           ` Miguel Ojeda
2018-08-31 17:05 ` [PATCH 3/7] Compiler Attributes: remove unneeded tests Miguel Ojeda
2018-08-31 21:10   ` Nick Desaulniers
2018-09-01  8:16   ` kbuild test robot
2018-09-01  9:56   ` kbuild test robot
2018-08-31 17:05 ` [PATCH 4/7] Compiler Attributes: homogenize __must_be_array Miguel Ojeda
2018-08-31 21:16   ` Nick Desaulniers
2018-09-01  9:17   ` Luc Van Oostenryck
2018-09-01 12:11     ` Miguel Ojeda
2018-08-31 17:05 ` [PATCH 5/7] Compiler Attributes: naked was fixed in gcc 4.6 Miguel Ojeda
2018-08-31 19:48   ` Arnd Bergmann
2018-08-31 20:26     ` Miguel Ojeda
2018-08-31 17:05 ` [PATCH 6/7] Compiler Attributes: remove unneeded sparse (__CHECKER__) tests Miguel Ojeda
2018-08-31 21:38   ` Nick Desaulniers [this message]
2018-08-31 21:55     ` Miguel Ojeda
2018-08-31 22:39       ` Luc Van Oostenryck
2018-08-31 17:05 ` [PATCH 7/7] Compiler Attributes: use feature checks instead of version checks Miguel Ojeda
2018-08-31 23:07   ` Nick Desaulniers
2018-09-01 13:38     ` Miguel Ojeda
2018-09-01 18:39       ` Greg KH
2018-09-01 19:15         ` Miguel Ojeda
2018-09-01  9:24   ` kbuild test robot
2018-09-01  9:51   ` kbuild test robot
2018-09-01  9:56   ` Luc Van Oostenryck
2018-09-01 12:58     ` Miguel Ojeda
2018-09-01 10:14   ` Dominique Martinet
2018-09-01 12:55     ` Miguel Ojeda
2018-09-01 14:17       ` Dominique Martinet
2018-09-03 18:03         ` Miguel Ojeda
2018-08-31 17:27 ` [PATCH 1/7] Compiler Attributes: remove unused attributes Joe Perches
2018-08-31 18:43   ` Nick Desaulniers
2018-08-31 18:53     ` Joe Perches
2018-08-31 20:23     ` Miguel Ojeda
2018-08-31 21:27       ` Nick Desaulniers
2018-09-02 19:54         ` Arnd Bergmann
2018-09-03 11:16           ` Miguel Ojeda
2018-08-31 18:39 ` Nick Desaulniers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAKwvOdkZeFj1QW8QBDSCet2Kv1jRka0DK_eSJwNmfG1Zqn2zcg@mail.gmail.com \
    --to=ndesaulniers@google.com \
    --cc=arnd@arndb.de \
    --cc=asmadeus@codewreck.org \
    --cc=efriedma@codeaurora.org \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=joe@perches.com \
    --cc=keescook@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miguel.ojeda.sandonis@gmail.com \
    --cc=mingo@kernel.org \
    --cc=sparse@chrisli.org \
    --cc=torvalds@linux-foundation.org \
    --cc=yamada.masahiro@socionext.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).