Merge "fs_mgr: update to new androidboot.slot param" am: 0fc8a4b363

am: 64bf462eb9

Change-Id: Idab5bef714d80651e3402fb370e811310f5bbb35
This commit is contained in:
Fernando Lugo 2017-03-24 23:35:13 +00:00 committed by android-build-merger
commit cefc9134f8
2 changed files with 14 additions and 7 deletions

View file

@ -489,7 +489,13 @@ int fs_mgr_load_vbmeta_images(struct fstab* fstab) {
// fs_mgr only deals with HASHTREE partitions.
const char *requested_partitions[] = {nullptr};
std::string ab_suffix;
fs_mgr_get_boot_config("slot_suffix", &ab_suffix);
std::string slot;
if (fs_mgr_get_boot_config("slot", &slot)) {
ab_suffix = "_" + slot;
} else {
// remove slot_suffix once bootloaders update to new androidboot.slot param
fs_mgr_get_boot_config("slot_suffix", &ab_suffix);
}
AvbSlotVerifyResult verify_result =
avb_slot_verify(fs_mgr_avb_ops, requested_partitions, ab_suffix.c_str(),
fs_mgr_vbmeta_prop.allow_verification_error, &fs_mgr_avb_verify_data);

View file

@ -31,15 +31,16 @@ int fs_mgr_update_for_slotselect(struct fstab *fstab)
char *tmp;
if (!got_suffix) {
if (!fs_mgr_get_boot_config("slot_suffix", &suffix)) {
return -1;
std::string slot;
if (fs_mgr_get_boot_config("slot", &slot)) {
suffix = "_" + slot;
} else if (!fs_mgr_get_boot_config("slot_suffix", &suffix)) {
// remove slot_suffix once bootloaders update to new androidboot.slot param
return -1;
}
got_suffix = 1;
// remove below line when bootloaders fix androidboot.slot_suffix param
if (suffix[0] == '_') suffix.erase(suffix.begin());
}
if (asprintf(&tmp, "%s_%s", fstab->recs[n].blk_device, suffix.c_str()) > 0) {
if (asprintf(&tmp, "%s%s", fstab->recs[n].blk_device, suffix.c_str()) > 0) {
free(fstab->recs[n].blk_device);
fstab->recs[n].blk_device = tmp;
} else {