Merge "Revert "Remove comments and code about ro.boot.slot""
am: eb00b1f3aa
Change-Id: If6b511a19009e28a63b52e6701dbc8f7b1f514f7
This commit is contained in:
commit
0ff5f16f7b
2 changed files with 23 additions and 4 deletions
|
|
@ -93,9 +93,21 @@ static bool set_verity_enabled_state(int fd, const char* block_device, const cha
|
||||||
/* Helper function to get A/B suffix, if any. If the device isn't
|
/* Helper function to get A/B suffix, if any. If the device isn't
|
||||||
* using A/B the empty string is returned. Otherwise either "_a",
|
* using A/B the empty string is returned. Otherwise either "_a",
|
||||||
* "_b", ... is returned.
|
* "_b", ... is returned.
|
||||||
|
*
|
||||||
|
* Note that since sometime in O androidboot.slot_suffix is deprecated
|
||||||
|
* and androidboot.slot should be used instead. Since bootloaders may
|
||||||
|
* be out of sync with the OS, we check both and for extra safety
|
||||||
|
* prepend a leading underscore if there isn't one already.
|
||||||
*/
|
*/
|
||||||
static std::string get_ab_suffix() {
|
static std::string get_ab_suffix() {
|
||||||
return android::base::GetProperty("ro.boot.slot_suffix", "");
|
std::string ab_suffix = android::base::GetProperty("ro.boot.slot_suffix", "");
|
||||||
|
if (ab_suffix == "") {
|
||||||
|
ab_suffix = android::base::GetProperty("ro.boot.slot", "");
|
||||||
|
}
|
||||||
|
if (ab_suffix.size() > 0 && ab_suffix[0] != '_') {
|
||||||
|
ab_suffix = std::string("_") + ab_suffix;
|
||||||
|
}
|
||||||
|
return ab_suffix;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Use AVB to turn verity on/off */
|
/* Use AVB to turn verity on/off */
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,19 @@
|
||||||
#include "fs_mgr.h"
|
#include "fs_mgr.h"
|
||||||
#include "fs_mgr_priv.h"
|
#include "fs_mgr_priv.h"
|
||||||
|
|
||||||
// Returns "_a" or "_b" based on androidboot.slot_suffix in kernel cmdline, or an empty string
|
// Returns "_a" or "_b" based on two possible values in kernel cmdline:
|
||||||
// if that parameter does not exist.
|
// - androidboot.slot = a or b OR
|
||||||
|
// - androidboot.slot_suffix = _a or _b
|
||||||
|
// TODO: remove slot_suffix once it's deprecated.
|
||||||
std::string fs_mgr_get_slot_suffix() {
|
std::string fs_mgr_get_slot_suffix() {
|
||||||
|
std::string slot;
|
||||||
std::string ab_suffix;
|
std::string ab_suffix;
|
||||||
|
|
||||||
fs_mgr_get_boot_config("slot_suffix", &ab_suffix);
|
if (fs_mgr_get_boot_config("slot", &slot)) {
|
||||||
|
ab_suffix = "_" + slot;
|
||||||
|
} else if (!fs_mgr_get_boot_config("slot_suffix", &ab_suffix)) {
|
||||||
|
ab_suffix = "";
|
||||||
|
}
|
||||||
return ab_suffix;
|
return ab_suffix;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue