[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202202021909.F46DE164@keescook>
Date: Wed, 2 Feb 2022 19:15:53 -0800
From: Kees Cook <keescook@...omium.org>
To: Nick Desaulniers <ndesaulniers@...gle.com>
Cc: Miguel Ojeda <ojeda@...nel.org>,
Nathan Chancellor <nathan@...nel.org>,
George Burgess IV <gbiv@...gle.com>, llvm@...ts.linux.dev,
linux-kernel@...r.kernel.org, linux-hardening@...r.kernel.org,
linux-security-module@...r.kernel.org
Subject: Re: [PATCH 4/4 v5] fortify: Add Clang support
On Wed, Feb 02, 2022 at 01:22:09PM -0800, Nick Desaulniers wrote:
> On Tue, Feb 1, 2022 at 4:30 PM Kees Cook <keescook@...omium.org> wrote:
> >
> > --- a/security/Kconfig
> > +++ b/security/Kconfig
> > @@ -179,7 +179,7 @@ config FORTIFY_SOURCE
> > depends on ARCH_HAS_FORTIFY_SOURCE
> > # https://bugs.llvm.org/show_bug.cgi?id=50322
> > # https://bugs.llvm.org/show_bug.cgi?id=41459
> > - depends on !CC_IS_CLANG
> > + depends on !CC_IS_CLANG || CLANG_VERSION >= 130000
>
> Are these comments still relevant, and is the clang version still correct?
Oh, good call. I thought the version was still correct (more below),
but yes, the comments need adjusting.
> In https://lore.kernel.org/llvm/CANiq72n1d7ouKNi+pbsy7chsg0DfCXxez27qqtS9XE1n3m5=8Q@mail.gmail.com/
> Miguel notes that diagnose_as only exists in clang-14+. If this
> series relies on diagnose_as, then should this version check be for
> clang-14+ rather than clang-13+?
It doesn't rely on it; this is just taking advantage of an improvement.
> https://bugs.llvm.org/show_bug.cgi?id=50322 is still open, but doesn't
> signify why there's a version check. It makes sense if there's no
> version check, but I'm not sure it's still relevant to this Kconfig
> option after your series.
With __overloadable, this probably ended up going away.
> https://bugs.llvm.org/show_bug.cgi?id=41459 was fixed in clang-13, but
> it was also backported to the clang 12.0.1 release. Is it still
> relevant if we're gated on diagnose_as from clang-14?
Ah-ha! I missed that this got backported. Looks like 12.0.1 and later
have this fixed. That's excellent!
> Perhaps a single comment, about the diagnose_as attribute or a link to
> https://reviews.llvm.org/rGbc5f2d12cadce765620efc56a1ca815221db47af or
> whatever, and updating the version check to be against clang-14 would
> be more precise?
Yup, I will rework this after double-checking 12.0.1 builds.
Thanks!
--
Kees Cook
Powered by blists - more mailing lists