update_engine: De-duplicate zlib blocks of squashfs images
Having duplicate zlib blocks in the squashfs image (e.g. from two
hard linked files) will cause problems for processing puffin. Recently
ARC++ image introduced two files that where hard linked of each other
and this caused the squashfs parsing algorithm fail and the ARC++ image
does not get splitted into smaller files. Hence we got massive OOM and
Timeout problems in the builders. This CL, simpliy removes duplicate
zlib blocks when constructing the list of such items.
BUG=chromium:955145
TEST=cros_generate_update_payload --image gs://chromeos-releases/stable-channel/nautilus/11647.154.0/chromeos_11647.154.0_nautilus_recovery_stable-channel_mp-v2.bin --src_image gs://chromeos-releases/stable-channel/nautilus/10575.55.0/chromeos_10575.55.0_nautilus_recovery_stable-channel_mp.bin --output payload.bin
Change-Id: If4eb4731355e1180953a5b327be3a16ff13e6d96
Reviewed-on: https://chromium-review.googlesource.com/1578219
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Amin Hassani <ahassani@chromium.org>
Reviewed-by: Sen Jiang <senj@chromium.org>
(cherry picked from commit 5d185052bd7dea7730777987c2cade748ed4cc46)
1 file changed