summaryrefslogtreecommitdiffstats
path: root/discover/platform-powerpc.c
diff options
context:
space:
mode:
authorSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-09-06 13:30:30 +1000
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-09-08 14:26:27 +1000
commit662129afba2d344d692a9dbfd430c91eff4f281d (patch)
tree04a6ab48f0c0c575ee2a72b8b2958510a3750d2b /discover/platform-powerpc.c
parent82b4c9d7ecbfada62295620a6082caf1b9860ff6 (diff)
downloadtalos-petitboot-662129afba2d344d692a9dbfd430c91eff4f281d.tar.gz
talos-petitboot-662129afba2d344d692a9dbfd430c91eff4f281d.zip
discover: Avoid writing network overrides to NVRAM
Explicitly keep track of whether the current interface config was set by an IPMI network override, and avoid overwriting any saved config unless the override was marked persistent. Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Diffstat (limited to 'discover/platform-powerpc.c')
-rw-r--r--discover/platform-powerpc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/discover/platform-powerpc.c b/discover/platform-powerpc.c
index 8fca5bd..2b89121 100644
--- a/discover/platform-powerpc.c
+++ b/discover/platform-powerpc.c
@@ -635,6 +635,15 @@ static void update_network_config(struct platform_powerpc *platform,
unsigned int i;
char *val;
+ /*
+ * Don't store IPMI overrides to NVRAM. If this was a persistent
+ * override it was already stored in NVRAM by
+ * get_ipmi_network_override()
+ */
+ if (config->network.n_interfaces &&
+ config->network.interfaces[0]->override)
+ return;
+
val = talloc_strdup(platform, "");
for (i = 0; i < config->network.n_interfaces; i++) {
OpenPOWER on IntegriCloud