All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Masahiro Yamada <masahiroy@kernel.org>
Cc: linux-kbuild@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>,
	linux-kernel@vger.kernel.org,
	"Dmitry V. Levin" <ldv@altlinux.org>,
	Elliot Berman <quic_eberman@quicinc.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Nick Desaulniers <ndesaulniers@google.com>
Subject: Re: [PATCH 2/2] kbuild: forbid exported headers from including <stdint.h>, <stdbool.h>
Date: Tue, 29 Mar 2022 08:04:35 +0200	[thread overview]
Message-ID: <YkKhc2BbkmdVwKex@kroah.com> (raw)
In-Reply-To: <20220328172130.197319-2-masahiroy@kernel.org>

On Tue, Mar 29, 2022 at 02:21:30AM +0900, Masahiro Yamada wrote:
> Some UAPI headers included <stdlib.h>, like this:
> 
>   #ifndef __KERNEL__
>   #include <stdlib.h>
>   #endif
> 
> As it turned out, they just included it for no good reason.
> 
> After some fixes, now I can compile-test UAPI headers
> (CONFIG_UAPI_HEADER_TEST=y) without <stdlib.h> included.
> 
> To avoid somebody getting it back again, this commit adds the dummy
> header, usr/dummy-include/stdlib.h
> 
> I added $(srctree)/usr/dummy-include to the header search paths.
> Because it is searched before the system directories, if someone
> tries to include <stdlib.h>, they will see the error message.
> 
> While I am here, I also replaced $(objtree)/usr/include with $(obj), but
> it is just a small refactoring.
> 
> If we achieve the situation where none of system headers is included
> from exported kernel headers (i.e. kernel headers become self-contained),
> we might be able to add -nostdinc, but that is much far from where we
> stand now. (see many no-header-test lines in usr/include/Makefile)
> 
> As a realistic solution, you can forbid header inclusion individually by
> putting a dummy header into usr/dummy-include/.
> 
> Currently, no header include <stdbool.h>. I put it as well before somebody
> attempts to use it.
> 
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Nice work!

Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

  reply	other threads:[~2022-03-29  6:04 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-28 17:21 [PATCH 1/2] agpgart.h: do not include <stdlib.h> from exported header Masahiro Yamada
2022-03-28 17:21 ` [PATCH 2/2] kbuild: forbid exported headers from including <stdint.h>, <stdbool.h> Masahiro Yamada
2022-03-29  6:04   ` Greg Kroah-Hartman [this message]
2022-03-29  7:16     ` Masahiro Yamada
2022-03-29 10:35       ` Greg Kroah-Hartman

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=YkKhc2BbkmdVwKex@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=arnd@arndb.de \
    --cc=geert@linux-m68k.org \
    --cc=ldv@altlinux.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=ndesaulniers@google.com \
    --cc=quic_eberman@quicinc.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.