Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v3 2/8] dumb-init: new package
Date: Sun, 1 Apr 2018 14:43:25 +0200	[thread overview]
Message-ID: <20180401144325.52bc543f@windsurf> (raw)
In-Reply-To: <20180304004346.331-3-christian@paral.in>

Hello,

On Sat,  3 Mar 2018 19:43:40 -0500, Christian Stewart wrote:
> dumb-init is a minimal init process to act as PID 1 for containers.
> 
> Static compilation is used, as dumb-init will typically be executed inside a
> container.

For the poor souls that are not Docker gurus, it is not immediately
clear why static linking is needed. dumb-init runs inside the
container, but the container is going to contain (!) other programs.
Will all those programs be statically linked ? Probably not.

So maybe what's happening is that dumb-init is *executed* inside the
container but is actually provided by the host environment outside the
container, and you want to be able to use the same dumb-init binary
regardless of what the container contains. Is that the use case ?

If so, extending the commit log would be nice.

The next issue is that your package assumes that static linking is
possible. But Buildroot defaults to BR2_SHARED_LIBS, which means that
the toolchain may not necessarily provide libc.a and allow static
linking.

So probably dumb-init should "depends on !BR2_SHARED_LIBS", which means
it wouldn't be visible by default. A Config.in comment would be needed,
like:

comment "dumb-init needs a toolchain w/ static library"
	depends on BR2_SHARED_LIBS

Alternatively, you could decide to build dumb-init statically only
if !BR2_SHARED_LIBS, but that means that in the default Buildroot
configurations, dumb-init would be linked dynamically.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com

  parent reply	other threads:[~2018-04-01 12:43 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-04  0:43 [Buildroot] [PATCH v3 0/8] upgrade docker-engine and associated components Christian Stewart
2018-03-04  0:43 ` [Buildroot] [PATCH v3 1/8] tini: new package Christian Stewart
2018-03-04  0:43 ` [Buildroot] [PATCH v3 2/8] dumb-init: " Christian Stewart
2018-03-31 15:42   ` Romain Naour
2018-03-31 17:42     ` Christian Stewart
2018-04-01 12:43   ` Thomas Petazzoni [this message]
2018-04-06 21:50     ` Christian Stewart
2018-04-07  6:20       ` Thomas Petazzoni
2018-04-10 16:24         ` Christian Stewart
2018-03-04  0:43 ` [Buildroot] [PATCH v3 3/8] docker-engine: add support for init processes Christian Stewart
2018-03-04  0:43 ` [Buildroot] [PATCH v3 4/8] docker-proxy: new package Christian Stewart
2018-03-11 21:34   ` Peter Korsgaard
2018-03-04  0:43 ` [Buildroot] [PATCH v3 5/8] docker-engine: add dependency on docker-proxy Christian Stewart
2018-03-11 21:35   ` Peter Korsgaard
2018-03-04  0:43 ` [Buildroot] [PATCH v3 6/8] runc: bump to 9f9c96235cc Christian Stewart
2018-03-04  0:43 ` [Buildroot] [PATCH v3 7/8] docker-containerd: bump to v1.0.2 Christian Stewart
2018-03-04  0:43 ` [Buildroot] [PATCH v3 8/8] docker-engine: bump to v18.03.0-ce-rc1 Christian Stewart

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=20180401144325.52bc543f@windsurf \
    --to=thomas.petazzoni@bootlin.com \
    --cc=buildroot@busybox.net \
    /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