All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Hatle <mark.hatle@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 2/8] initscripts: add setup-commands.sh
Date: Mon, 11 Nov 2013 10:13:06 -0600	[thread overview]
Message-ID: <52810212.3050302@windriver.com> (raw)
In-Reply-To: <1384170804.16718.135.camel@phil-desktop.brightsign>

On 11/11/13, 5:53 AM, Phil Blundell wrote:
> On Mon, 2013-11-11 at 10:52 +0800, ChenQi wrote:
>> On 11/10/2013 07:00 AM, Phil Blundell wrote:

...

> I thought that last time this topic came up on the mailing list, the
> eventual conclusion was that Wind River (being more-or-less the only
> people who seemed to feel strongly that supporting / and /usr on
> different partitions was important) were going to come up with some sort
> of overall strategy for solving the whole problem rather than just
> fixing up individual bits in a piecemeal fashion.  I think that strategy
> would need to include a policy for which utilities initscripts can
> legitimately expect to be available before /usr is mounted, and if this
> set is different from what we have today then it would need to include a
> plan for sorting that out.

There is a bug open for the Yocto Project 1.6 to explicitly do this.  Come up 
with an overall strategy for these kinds of things, as well as a test plan to 
verify that whatever we end up doing works properly long term.

As you said, busybox is not required on a system -- just something that has a 
reasonable set of software packages.  Also a lot of this stuff is simply limited 
to 'early boot'.  At some point we do need to define 'early boot'.  (Generally I 
define it as until /usr would normally be mounted.)

And unfortunately you will see patches in piecemeal at this point.  Until such a 
strategy is generated, everything is being done reactively.  We see a QA 
error/warning and someone is assigned to solve it.  Yocto Project Compliance 
(and our own internal) guidelines then indicate since we've patched something it 
has to go out to the community.

> To answer the particular question at hand it seems that someone would
> need to do some analysis of things like:
>
> - how many scripts actually need those commands
> - how hard would it be to change them to not need them
> - what would be the impact of moving them into ${base_bindir} (for
> example, would this cause a whole load of libraries to get dragged into
> ${base_libdir} as well?)

That was my thought exactly.  Lets look at moving things -or- stop using them. 
Whichever is more reasonable.

> Offhand I don't know the answer to any of those things.
>
>>> 4. this seems like distro policy and not something that really belongs
>>> in oe-core at all.  For systems where ${bindir} and ${base_bindir} are
>>> on the same filesystem (or even are the same directory) this script will
>>> just make bootup slower without achieving anything useful.
>
>> If /usr and / are on the same file system, this script has no real
>> effect because /usr will always be there. So I think it will not take
>> much time at boot.
>
> Just spawning a new copy of the shell and reading the script does take a
> finite (and measureable) time.  If you can determine statically at build
> time that the script isn't going to do anything useful then I don't
> think it's appropriate to install it.
>
>> If ${base_bindir} and ${bindir} are the same, that means that there's
>> no /usr. In this case, there should no /usr/xxx entries
>> in /etc/busybox.links, so this script should also function correctly
>> and it will not take much time at boot.
>>
>> (I just configured ${bindir} and ${base_bindir} to be the same and
>> performed a build, it failed. I'm not sure whether it's valid to make
>> such configurations in OE.)
>
> It is a valid configuration, and this is the way that most of the images
> I build are configured.  It probably is true that there are still some
> number of recipes in oe-core that don't support this properly, but I
> don't want to see that situation get any worse.

And yes, all scripts need to (at build time) bind to the bindir and base_bindir 
of that distribution.  Hardcoding those values into the scripts before build 
time is wrong.

--Mark

> p.
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>



  parent reply	other threads:[~2013-11-11 16:13 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-09  5:28 [PATCH 0/8] Fixes about unsafe-references QA warnings Qi.Chen
2013-11-09  5:28 ` [PATCH 1/8] udev: fix dependency and location of udevadm Qi.Chen
2013-11-09 22:54   ` Phil Blundell
2013-11-11  2:18     ` ChenQi
2013-11-11 10:53       ` Phil Blundell
2013-11-11 11:28         ` ChenQi
2013-11-09  5:28 ` [PATCH 2/8] initscripts: add setup-commands.sh Qi.Chen
2013-11-09 23:00   ` Phil Blundell
2013-11-11  2:52     ` ChenQi
2013-11-11 11:53       ` Phil Blundell
2013-11-11 12:40         ` ChenQi
2013-11-11 14:49           ` Phil Blundell
2013-11-11 16:13         ` Mark Hatle [this message]
2013-11-11 12:12       ` Burton, Ross
2013-11-11 12:53         ` ChenQi
2013-11-11 16:15         ` Mark Hatle
2013-11-09  5:28 ` [PATCH 3/8] zlib: install into base_libdir Qi.Chen
2013-11-09  5:28 ` [PATCH 4/8] kmod: install libkmod " Qi.Chen
2013-11-09  5:28 ` [PATCH 5/8] udev: fix unsafe reference by installing libgudev in libdir Qi.Chen
2013-11-09  5:28 ` [PATCH 6/8] insane.bbclass: make the checking stricter for unsafe references in scripts Qi.Chen
2013-11-09  5:28 ` [PATCH 7/8] iputils: fix program location and QA warning Qi.Chen
2013-11-09  5:28 ` [PATCH 8/8] busybox: install ping6 into bindir by default Qi.Chen
2013-11-11 11:12 ` [PATCH 0/8] Fixes about unsafe-references QA warnings Burton, Ross
2013-11-11 11:23   ` ChenQi

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=52810212.3050302@windriver.com \
    --to=mark.hatle@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /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.