| Index: src/platform/update_engine/utils.cc
|
| diff --git a/src/platform/update_engine/utils.cc b/src/platform/update_engine/utils.cc
|
| index 85d9e7db559d884414c7016d8fb2f763b08feffb..83096d28378698df786e0b3aebdb54223ffad27b 100644
|
| --- a/src/platform/update_engine/utils.cc
|
| +++ b/src/platform/update_engine/utils.cc
|
| @@ -297,7 +297,7 @@ bool StringHasPrefix(const std::string& str, const std::string& prefix) {
|
| return 0 == str.compare(0, prefix.size(), prefix);
|
| }
|
|
|
| -const std::string BootDevice() {
|
| +const string BootDevice() {
|
| string proc_cmdline;
|
| if (!ReadFileToString("/proc/cmdline", &proc_cmdline))
|
| return "";
|
| @@ -324,6 +324,21 @@ const std::string BootDevice() {
|
| // TODO(adlr): use findfs to figure out UUID= or LABEL= filesystems
|
| }
|
|
|
| +const string BootKernelDevice(const std::string& boot_device) {
|
| + // Currntly this assumes the last digit of the boot device is
|
| + // 3, 5, or 7, and changes it to 2, 4, or 6, respectively, to
|
| + // get the kernel device.
|
| + string ret = boot_device;
|
| + if (ret.empty())
|
| + return ret;
|
| + char last_char = ret[ret.size() - 1];
|
| + if (last_char == '3' || last_char == '5' || last_char == '7') {
|
| + ret[ret.size() - 1] = last_char - 1;
|
| + return ret;
|
| + }
|
| + return "";
|
| +}
|
| +
|
| bool MountFilesystem(const string& device,
|
| const string& mountpoint,
|
| unsigned long mountflags) {
|
|
|