mail archive of the rauc mailing list
 help / color / mirror / Atom feed
From: Abhishek Kumar Rai <abhishekr@eximiusdesign.com>
To: Enrico Joerns <ejo@pengutronix.de>
Cc: rauc@pengutronix.de
Subject: Re: [RAUC] Query regarding rauc
Date: Tue, 4 Dec 2018 17:36:51 +0530	[thread overview]
Message-ID: <CALYWmf_hoR882HL9ceMFvQ2AaP4GKduw=UJE77BLAmxqjeE4XA@mail.gmail.com> (raw)
In-Reply-To: <454fb88a-2909-acfc-5c63-e139d5fccb34@pengutronix.de>


[-- Attachment #1.1: Type: text/plain, Size: 6119 bytes --]

Hi Enrico,

Thanks for the prompt response!

Please find our responses inline (blue colored)

Regards,
Abhishek Rai

On Tue, Dec 4, 2018 at 4:54 PM Enrico Joerns <ejo@pengutronix.de> wrote:

> Hi Abhishek,
>
> On 12/4/18 12:12 PM, Abhishek Kumar Rai wrote:
> > Hi Team,
> >
> >
> > To achieve a specific requirement for us the "rauc install" command
> won't work i.e due to a configuration that we have the rauc install would
> fail. Though we would still like to go ahead and flashload to that
> partition. We would like to know if the approach below is correct
> >
> >
> > Our understanding of rauc install suggests that it does the following
> things:
> >
> >  1. Verify signature of the bundle
> >  2. Run partition selection algorithm
> >  3. Extract the tar balls from the bundle
> >  4. Create new ext4 FS on the selected partition
> >  5. Write appropriate tar ball to the partition
> >
> >
> > Since "rauc install" would give us errors due to our configuration we
> plan to achieve this using the steps below:
> >
> >  1. Verify signature of the bundle (rauc info ...)
> >  2. Partition selection algorithm (we would like to skip this)
> >  3. Extract the tar balls from the bundle (rauc extract ..)
> >  4. Create new ext4 FS on the selected partition + Write appropriate tar
> ball to the partition (rauc write-slot ... ....)
>
> how do you trigger the custom installation? Do you use the full-custom
> RAUC install handler?
> No for now we have replaced the "rauc install" call with the calls to the
> commands "rauc info + rauc extract + rauc write-slot". We were thinking
> that we might not get control due to slot selection algorithm. But we will
> explore this further starting today. Get a feeling it would be what we
> want. Though we read in the documentation that the pre/post install hooks
> would not work with full custom install. We might need them. Not too sure
> though. We might be able to merge the "post-install" hook work with the
> "install" hook
>


> Extracting the tar's should not be required in all cases. With the
> full-custom handler you
> will already have it mounted, otherwise you can simply mount the bundle
> after verification
> as it is basically a squashfs.
> Sure..
>


> For rauc write-slot you also rely on parts of the system.conf, but not in
> the fixed scheme.
> If that is where your issue resides, you should be fine with that.
> Sure. We were also considering referring to the manifest file when the
> bundle gets mounted
>
> Could you give me a hint what forces you to do this kind of manual
> handling?
> Maybe then we can think about a possible solution more targeted.
>

   - For now, we have 4 partitions containing rfs.0, rfs.1, appfs.0 and
   appfs.1. We would like to have a scheme where only the partition that has
   been flashed with bundle data is  changed i.e lets say currently we are
   using rfs.0 and appfs.0. Now if we flash a bundle containing appfs, on next
   reboot, system should use rfs.0 and appfs.*1*. Similarly for rfs.


   - To achieve this we started without a parent child relationship in
   system.conf. So when we are executing from appfs.0 and rfs.0 and we try to
   flash a bundle containing appfs, it would try to write to appfs.0 which
   would already be in use and hence we would get errors. So we introduced the
   parent child relationship


   - Now *with* parent child relationship the issue above would be
   resolved. Now when we boot from "rfs.0" and execute apps from "appfs.0" and
   flash a appfs bundle it would write to appfs.1. On reboot, as per our
   scheme we would boot from "rfs.0" and execute apps from "appfs.1". Now when
   we try to do a rauc install it would write to "appfs.1" as it would
   consider appfs.0 as active partition due to parent-child relationship.


   - Hence as we were running into all these issues we felt that it would
   help our cause if we had our own slot selection logic. Hence the deviation
   to rauc info + rauc extract + rauc write-slot.


> But basically it should work as described above, yes.
> One thing will miss, depending on what you actually try to do.
> The key for atomic updates is to deactivate the bootable slot you
> write your image to before writing and set it as primary after successful
> writing.
>
> You can achieve this behavior with
>
>    rauc status mark-bad <slot-to-update>
>
>    [ perform update ]
>
>    rauc status mark-active <slot-to-update>
> Sure.. we will include this in our scheme..
>
> Best regards, Enrico
>
> --
> Pengutronix e.K.                           | Enrico Jörns                |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5080 |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
>
>

-- 














The information contained in this e-mail message (including 
any 


attachments) may be confidential, proprietary, privileged, or 
otherwise


exempt from disclosure under applicable laws. It is intended to 
be 


conveyed only to the designated recipient(s). Any use, dissemination, 



distribution, printing, retaining or copying of this e-mail (including 
its 


attachments) by unintended recipient(s) is strictly prohibited and 
may 


be unlawful. If you are not an intended recipient of this e-mail, or 
believe 


that you have received this e-mail in error, please notify the 
sender 


immediately (by replying to this e-mail), delete any and all 
copies of 


this e-mail (including any attachments) from your system, and 
do not


disclose the content of this e-mail to any other person. Thank you 
for your cooperation.






-- 
_This e-mail message (including any attachments) may be confidential, 
proprietary, privileged, or otherwise exempt from disclosure under 
applicable laws. If you are not an intended recipient, please delete this 
message. Thank you.
_

[-- Attachment #1.2: Type: text/html, Size: 8108 bytes --]

[-- Attachment #2: Type: text/plain, Size: 65 bytes --]

_______________________________________________
RAUC mailing list

  reply	other threads:[~2018-12-04 12:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-04 11:12 Abhishek Kumar Rai
2018-12-04 11:24 ` Enrico Joerns
2018-12-04 12:06   ` Abhishek Kumar Rai [this message]
2018-12-04 12:50     ` Enrico Joerns
2018-12-05  6:45       ` Abhishek Kumar Rai
2018-12-06  9:24         ` Abhishek Kumar Rai
2018-12-10  8:17           ` Enrico Joerns

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='CALYWmf_hoR882HL9ceMFvQ2AaP4GKduw=UJE77BLAmxqjeE4XA@mail.gmail.com' \
    --to=abhishekr@eximiusdesign.com \
    --cc=ejo@pengutronix.de \
    --cc=rauc@pengutronix.de \
    /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