Revert^3 "init: Look for super partition only on a boot device"

This reverts commit 5bfb93678f.

Reason for revert: b/376468452 and trusty boot up on arm64. This CL is causing a lot of troubles (now only on emulator, but may affect more devices in field) and shall be reverted. Desktop team will handle support for selecting single boot source (while having more than one) as part of boot_part_uuid support (at aosp/3318438).  

Change-Id: I2804c119631f592d0862f3472ffe18dbb23b17e5
This commit is contained in:
Konrad Adamczyk 2024-10-31 08:25:54 +00:00 committed by Gerrit Code Review
parent 5bfb93678f
commit 5cc1ca1762
3 changed files with 1 additions and 28 deletions

View file

@ -98,11 +98,7 @@ ListenerAction BlockDevInitializer::HandleUevent(const Uevent& uevent,
LOG(VERBOSE) << __PRETTY_FUNCTION__ << ": found partition: " << name;
// Remove partition from the list only if it was found on boot device
if (device_handler_->IsBootDevice(uevent)) {
devices->erase(iter);
}
devices->erase(iter);
device_handler_->HandleUevent(uevent);
return devices->empty() ? ListenerAction::kStop : ListenerAction::kContinue;
}

View file

@ -188,28 +188,6 @@ void SysfsPermissions::SetPermissions(const std::string& path) const {
}
}
bool DeviceHandler::IsBootDevice(const Uevent& uevent) const {
std::string device;
if (FindPlatformDevice(uevent.path, &device)) {
// Skip /devices/platform or /devices/ if present
static constexpr std::string_view devices_platform_prefix = "/devices/platform/";
static constexpr std::string_view devices_prefix = "/devices/";
if (StartsWith(device, devices_platform_prefix)) {
device = device.substr(devices_platform_prefix.length());
} else if (StartsWith(device, devices_prefix)) {
device = device.substr(devices_prefix.length());
}
} else if (FindPciDevicePrefix(uevent.path, &device)) {
} else if (FindVbdDevicePrefix(uevent.path, &device)) {
} else {
return false;
}
return boot_devices_.find(device) != boot_devices_.end();
}
std::string DeviceHandler::GetPartitionNameForDevice(const std::string& query_device) {
static const auto partition_map = [] {
std::vector<std::pair<std::string, std::string>> partition_map;

View file

@ -133,7 +133,6 @@ class DeviceHandler : public UeventHandler {
// `androidboot.partition_map=vdb,metadata;vdc,userdata` maps `vdb` to `metadata` and `vdc` to
// `userdata`.
static std::string GetPartitionNameForDevice(const std::string& device);
bool IsBootDevice(const Uevent& uevent) const;
private:
void ColdbootDone() override;