From: Mike Looijmans <mike.looijmans@topic.nl>
To: openembedded-core@lists.openembedded.org
Subject: Re: [yocto] RFC: Improving the developer workflow
Date: Sat, 09 Aug 2014 10:13:56 +0200 [thread overview]
Message-ID: <53E5D844.2050909@topic.nl> (raw)
In-Reply-To: <2374073.Q4LByM6bcI@peggleto-mobl5.ger.corp.intel.com>
On 08/07/2014 03:05 PM, Paul Eggleton wrote:
> On Thursday 07 August 2014 11:13:02 Alex J Lennon wrote:
>> Historically I, and I suspect others, have done full image updates of
>> the storage medium, onboard flash or whatever but these images are
>> getting so big now that I am trying to move away from that and into
>> using package feeds for updates to embedded targets.
>
> Personally with how fragile package management can end up being, I'm convinced
> that full-image updates are the way to go for a lot of cases, but ideally with
> some intelligence so that you only ship the changes (at a filesystem level
> rather than a package or file level). This ensures that an upgraded image on
> one device ends up exactly identical to any other device including a newly
> deployed one. Of course it does assume that you have a read-only rootfs and
> keep your configuration data / logs / other writeable data on a separate
> partition or storage medium. However, beyond improvements to support for
> having a read-only rootfs we haven't really achieved anything in terms of out-
> of-the-box support for this, mainly due to lack of resources.
Full-image upgrades are probably most seen in "lab" environments, where
the software is being developed.
Once deployed to customers, who will not be using a build system, the
system must rely on packages and online updates.
Embedded systems look more like desktops these days.
- End-users will make changes to the system:
- "plugins" and other applications.
- configuration data
- application data (e.g. loggings, EPG data)
- There is not enough room in the flash for two full images.
- There is usually a virtually indestructable bootloader that can
recover even from fully erasing the NAND flash.
- Flash filesystems are usually NAND. NAND isn't suitable for read-only
root filesystems, you want to wear-level across the whole flash.
For the OpenPLi settop boxes we've been using "online upgrades" which
basically just call "opkg update && opkg upgrade" for many years, and
there's never been a real disaster. The benefits easily outweigh the
drawbacks.
When considering system upgrades, too much attention is being spent in
the "corner cases". It's not really a problem if the box is bricked when
the power fails during an upgrade. As long as there's a procedure the
end-user can use to recover the system (on most settop boxes, debricking
the system is just a matter of inserting a USB stick and flipping the
power switch).
--
Mike Looijmans
next prev parent reply other threads:[~2014-08-09 8:13 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-07 9:10 RFC: Improving the developer workflow Paul Eggleton
2014-08-07 10:13 ` [yocto] " Alex J Lennon
2014-08-07 10:13 ` Alex J Lennon
2014-08-07 13:05 ` [yocto] " Paul Eggleton
2014-08-07 13:05 ` Paul Eggleton
2014-08-07 13:14 ` [yocto] " Alex J Lennon
2014-08-07 13:14 ` Alex J Lennon
2014-08-08 7:54 ` [yocto] " Nicolas Dechesne
2014-08-08 7:54 ` Nicolas Dechesne
2014-08-08 15:57 ` [yocto] " Alex J Lennon
2014-08-08 15:57 ` Alex J Lennon
2014-08-12 13:23 ` [OE-core] " Tim O' Callaghan
2014-08-09 8:13 ` Mike Looijmans [this message]
2014-08-09 8:44 ` [yocto] " Alex J Lennon
2014-08-09 11:22 ` Mike Looijmans
2014-08-09 11:57 ` Alex J Lennon
2014-08-07 12:09 ` Bryan Evenson
2014-08-08 8:04 ` Nicolas Dechesne
2014-08-08 8:04 ` [OE-core] " Nicolas Dechesne
2014-08-25 6:47 ` Paul Eggleton
2014-08-25 6:47 ` [OE-core] " Paul Eggleton
2014-08-08 12:56 ` Mike Looijmans
2014-08-08 12:56 ` [OE-core] " Mike Looijmans
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=53E5D844.2050909@topic.nl \
--to=mike.looijmans@topic.nl \
--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.