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
>
next prev 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox