summaryrefslogtreecommitdiff
path: root/meta-openbmc-mods/meta-common/recipes-phosphor/flash/phosphor-software-manager/0008-item_updater-update-the-bmc_active-objectPath.patch
blob: e0ff7979530a6c5301df1e08fd277292d19d9a5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
From d9e50ecf8bd8bc764838e7244084184644a3f0fc Mon Sep 17 00:00:00 2001
From: Chalapathi <chalapathix.venkataramashetty@intel.com>
Date: Thu, 23 Apr 2020 19:06:19 +0000
Subject: [PATCH] item_updater: update the bmc_active objectPath

Update the Software object path to bmc_active instead of random Id.

Signed-off-by: Chalapathi <chalapathix.venkataramashetty@intel.com>

---
 item_updater.cpp | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/item_updater.cpp b/item_updater.cpp
index e6dd298..c3a846d 100644
--- a/item_updater.cpp
+++ b/item_updater.cpp
@@ -175,7 +175,8 @@ void ItemUpdater::processBMCImage()
         if (0 ==
             iter.path().native().compare(0, BMC_RO_PREFIX_LEN, BMC_ROFS_PREFIX))
         {
-            // Get the version to calculate the id
+            std::string id = "bmc_active";
+            // upstream changed this to relative_path ... is that right?
             fs::path releaseFile(OS_RELEASE_FILE);
             auto osRelease = iter.path() / releaseFile.relative_path();
             if (!fs::is_regular_file(osRelease))
@@ -189,7 +190,6 @@ void ItemUpdater::processBMCImage()
                 // volumes created by the UBI layout for example have the id in
                 // the mount directory name. The worst that can happen is that
                 // erase() is called with an non-existent id and returns.
-                auto id = iter.path().native().substr(BMC_RO_PREFIX_LEN);
                 ItemUpdater::erase(id);
 
                 continue;
@@ -203,14 +203,11 @@ void ItemUpdater::processBMCImage()
 
                 // Try to delete the version, same as above if the
                 // OS_RELEASE_FILE does not exist.
-                auto id = iter.path().native().substr(BMC_RO_PREFIX_LEN);
                 ItemUpdater::erase(id);
 
                 continue;
             }
 
-            auto id = VersionClass::getId(version);
-
             // Check if the id has already been added. This can happen if the
             // BMC partitions / devices were manually flashed with the same
             // image.