Re: [Suit] Introducing draft-moran-suit-manifest-04

Michael Richardson <mcr+ietf@sandelman.ca> Thu, 11 April 2019 17:17 UTC

Return-Path: <mcr+ietf@sandelman.ca>
X-Original-To: suit@ietfa.amsl.com
Delivered-To: suit@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E5BBC12038B for <suit@ietfa.amsl.com>; Thu, 11 Apr 2019 10:17:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w-cWQLypt3Cz for <suit@ietfa.amsl.com>; Thu, 11 Apr 2019 10:17:37 -0700 (PDT)
Received: from tuna.sandelman.ca (tuna.sandelman.ca [209.87.249.19]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CEF2F1202E1 for <suit@ietf.org>; Thu, 11 Apr 2019 10:17:36 -0700 (PDT)
Received: from sandelman.ca (obiwan.sandelman.ca [209.87.249.21]) by tuna.sandelman.ca (Postfix) with ESMTP id 6A8463826B; Thu, 11 Apr 2019 13:16:35 -0400 (EDT)
Received: by sandelman.ca (Postfix, from userid 179) id 67DF0708; Thu, 11 Apr 2019 13:17:35 -0400 (EDT)
Received: from sandelman.ca (localhost [127.0.0.1]) by sandelman.ca (Postfix) with ESMTP id 655BA479; Thu, 11 Apr 2019 13:17:35 -0400 (EDT)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: David Brown <david.brown@linaro.org>
cc: Brendan Moran <Brendan.Moran@arm.com>, "suit@ietf.org" <suit@ietf.org>
In-Reply-To: <20190322173908.GA17361@davidb.org>
References: <16EC7DB9-1649-4A86-A370-F77CB03305AC@arm.com> <20190315163402.GA25574@davidb.org> <59F62162-578C-4975-A25B-EC261A7F4F7D@arm.com> <20190322173908.GA17361@davidb.org>
X-Mailer: MH-E 8.6; nmh 1.7+dev; GNU Emacs 24.5.1
X-Face: $\n1pF)h^`}$H>Hk{L"x@)JS7<%Az}5RyS@k9X%29-lHB$Ti.V>2bi.~ehC0; <'$9xN5Ub# z!G,p`nR&p7Fz@^UXIn156S8.~^@MJ*mMsD7=QFeq%AL4m<nPbLgmtKK-5dC@#:k
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha256"; protocol="application/pgp-signature"
Date: Thu, 11 Apr 2019 13:17:35 -0400
Message-ID: <26593.1555003055@localhost>
Archived-At: <https://mailarchive.ietf.org/arch/msg/suit/18KeQSuXi2W_7uRprFB1W_14lbY>
Subject: Re: [Suit] Introducing draft-moran-suit-manifest-04
X-BeenThere: suit@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Software Updates for Internet of Things <suit.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/suit>, <mailto:suit-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/suit/>
List-Post: <mailto:suit@ietf.org>
List-Help: <mailto:suit-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/suit>, <mailto:suit-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Apr 2019 17:17:40 -0000

David Brown <david.brown@linaro.org> wrote:
    >> Reboot resilience for “swap” is probably outside the scope of this draft.
    >> Adding a condition to check the success marker might be useful.

    > I'm not sure it really even makes sense to describe the reboot
    > resilience in the manifest.  At least for swap, it is a large number
    > of steps that have to be done carefully, along with a lot of extra
    > state that is written every step.  I would think this intermediate
    > state is beyond the scape of the manifest.

    > For those interested, I've thrown together a bit of an amination
    > describing how the swap operation works in MCUboot, including at least
    > part of its state.

    > https://www.youtube.com/watch?v=TvXjw2l0Cd0

    > I'm not actually sure it is even going to make very much sense for
    > MCUboot to follow steps in the manifest, rather than just verifying
    > that they are present.  The steps make sense for the download
    > application.

Very nice animation.
It really seems like the swap operation does by MCUboot ought to be below the
level of the manifest instructions.

    > One difficulty I see following steps in the manifest is that the code
    > currently maintains state out-of-band from the manifest.  The current
    > state is:

That suggests to me that maybe we need to make the state explicit in the
information model associated with the manifest.

    > Any thoughts on what is appropriate to even represent in the manifest?
    > The two instructions that the bootloader would follow would be "swap"
    > or "apply" (depending on configuration), and "run".  Right now, we
    > distinguish swap vs copy by whether the new image contains the "image
    > ok" marker, but having two instructions could distinguish this as
    > well.

--
]               Never tell me the odds!                 | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works        |    IoT architect   [
]     mcr@sandelman.ca  http://www.sandelman.ca/        |   ruby on rails    [


--
Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
 -= IPv6 IoT consulting =-