About delta update(differential update with rdiff handler)

281 views
Skip to first unread message

gangnam choi

unread,
Jun 16, 2021, 1:59:17 AM6/16/21
to swupdate
hallo everyone,

I am try to update my file system with delta update(is that possible?). The image is in delta format and the update packet was pushed to the /tmp directory of my board.
part of my sw-description is shown below:
version = "1.0.1";
hardware-compatibility: [ "1.0" ];
images: (
{
type = "rdiff_image"
filename = "rootfs.delta";
device = "/dev/mtd6";
sha256 = "8e41aa7b4ba5220bac95d6d2a64388ac52dccaf2ae2deb63890cb5491cd49722";
properties: {
rdiffbase = ["/dev/mtd6"];
};
},
run with:
# swupdate -v -i amlogice.swu -k public.pem
and then, some errors occur.

[TRACE] : SWUPDATE running :  [run_system_cmd] : swupdate preinst
[TRACE] : SWUPDATE running :  [run_system_cmd] : /tmp/scripts/update.sh preinst  command returned 0
[TRACE] : SWUPDATE running :  [install_single_image] : Found installer for stream rootfs.delta rdiff_image
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=0 avail_out=65536 result=RUNNING
[TRACE] : SWUPDATE running :  [fill_inbuffer] : Writing 16384 bytes to rdiff input buffer.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=14105 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=14105 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=13881 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=13881 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=13657 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=13657 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=13433 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=13433 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=13209 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=13209 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=12985 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=12985 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=12761 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=12761 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=12537 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=12537 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=12313 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=12313 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=12089 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=12089 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=11865 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=11865 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=11641 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=11641 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=11417 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=11417 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=11193 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=11193 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=10969 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=10969 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=10752 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=10752 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=10528 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=10528 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=10304 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=10304 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=10080 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=10080 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=9856 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=9856 avail_out=65536 result=BLOCKED
[  337.427605@0] nand: nand_do_write_ops: attempt to write non page aligned data
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=9632 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=9632 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=9560 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=9560 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 65536 bytes from rdiff output buffer
[TRACE] : SWUPDATE running :  [rdiff_stats] : [post] avail_in=9560 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [rdiff_stats] : [pre]  avail_in=9560 avail_out=65536 result=BLOCKED
[TRACE] : SWUPDATE running :  [fill_inbuffer] : No rdiff chunk input to consume.
[TRACE] : SWUPDATE running :  [drain_outbuffer] : Draining 44353 bytes from rdiff output buffer
[ERROR] : SWUPDATE failed [0] ERROR core/cpio_utils.c : copy_write : 131 : cannot write 44353 bytes: Invalid argument
[ERROR] : SWUPDATE failed [0] ERROR handlers/rdiff_handler.c : drain_outbuffer : 158 : Cannot drain rdiff output buffer.
[ERROR] : SWUPDATE failed [0] ERROR handlers/rdiff_handler.c : apply_rdiff_chunk_cb : 207 : drain_outbuffer return error
[ERROR] : SWUPDATE failed [0] ERROR handlers/rdiff_handler.c : apply_rdiff_patch : 354 : Error -28 running rdiff job, aborting.
[TRACE] : SWUPDATE running :  [install_single_image] : Installer for rdiff_image not successful !
Software updated failed

Kind regards,
Cai

Islam Othman

unread,
May 3, 2024, 5:27:06 AM5/3/24
to swupdate
Hi,

Did you find any solution for such bug. I'm facing similar log but without errors. I'm hanging in an endless loop. Any help would be appreciated.

Kind regards.

Reply all
Reply to author
Forward
0 new messages