Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8b1e29ae authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Make output of MakeVbmeta consistent" into main

parents 8f9ca807 1d9b3daa
Loading
Loading
Loading
Loading
+0 −14
Original line number Diff line number Diff line
@@ -1055,20 +1055,6 @@ def AddImagesToTargetFiles(filename):
    for call in add_partition_calls:
      add_partition(*call)
  else:
    # When calling avbtool make_vbmeta_image, it uses the `partitions`
    # dictionary to include the options for --include_descriptors_from_image.
    # The vbmeta image is different if the order of the
    # --include_descriptors_from_image changes. As the images are generated
    # parallelly and entries are added on completion of image creation,
    # this `partitions` dict might be indeterministic as the order of
    # completion of image creation cannot be predicted.
    # To address this issue, add keys to the dict `partitions` with null values
    # in the order they are listed in the variable `add_partition_calls`, and
    # then the values are updated by `add_partition` keeping the order of the
    # items. This ensures generated vbmeta.img is the same for the same input.
    for call in add_partition_calls:
      if call[1]:
        partitions[call[0]] = None
    with ThreadPoolExecutor(max_workers=len(add_partition_calls)) as executor:
      for future in [executor.submit(add_partition, *call) for call in add_partition_calls]:
        future.result()
+2 −2
Original line number Diff line number Diff line
@@ -1524,7 +1524,7 @@ def GetAvbPartitionsArg(partitions,
      AVB_ARG_NAME_CHAIN_PARTITION: []
  }

  for partition, path in partitions.items():
  for partition, path in sorted(partitions.items()):
    avb_partition_arg = GetAvbPartitionArg(partition, path, info_dict)
    if not avb_partition_arg:
      continue
@@ -1612,7 +1612,7 @@ def BuildVBMeta(image_path, partitions, name, needed_partitions,
      "avb_custom_vbmeta_images_partition_list", "").strip().split()]

  avb_partitions = {}
  for partition, path in partitions.items():
  for partition, path in sorted(partitions.items()):
    if partition not in needed_partitions:
      continue
    assert (partition in AVB_PARTITIONS or