Blame SOURCES/0038-proc-cmdline-introduce-PROC_CMDLINE_RD_STRICT.patch

a3e2b5
From 84b15a8a493424efa8c9eaa9a44a23c3c59742bd Mon Sep 17 00:00:00 2001
a3e2b5
From: Lukas Nykryn <lnykryn@redhat.com>
a3e2b5
Date: Thu, 25 Oct 2018 16:21:26 +0200
a3e2b5
Subject: [PATCH] proc-cmdline: introduce PROC_CMDLINE_RD_STRICT
a3e2b5
a3e2b5
Our current set of flags allows an option to be either
a3e2b5
use just in initrd or both in initrd and normal system.
a3e2b5
This new flag is intended to be used in the case where
a3e2b5
you want apply some settings just in initrd or just
a3e2b5
in normal system.
a3e2b5
a3e2b5
(cherry picked from commit ed58820d7669971762dd887dc117d922c23f2543)
a3e2b5
a3e2b5
Related: #1643429
a3e2b5
---
a3e2b5
 src/basic/proc-cmdline.c | 3 ++-
a3e2b5
 src/basic/proc-cmdline.h | 1 +
a3e2b5
 2 files changed, 3 insertions(+), 1 deletion(-)
a3e2b5
a3e2b5
diff --git a/src/basic/proc-cmdline.c b/src/basic/proc-cmdline.c
a3e2b5
index add481c2ae..530ac37460 100644
a3e2b5
--- a/src/basic/proc-cmdline.c
a3e2b5
+++ b/src/basic/proc-cmdline.c
a3e2b5
@@ -72,7 +72,8 @@ int proc_cmdline_parse(proc_cmdline_parse_t parse_item, void *data, unsigned fla
a3e2b5
 
a3e2b5
                         if (flags & PROC_CMDLINE_STRIP_RD_PREFIX)
a3e2b5
                                 key = q;
a3e2b5
-                }
a3e2b5
+                } else if (in_initrd() && flags & PROC_CMDLINE_RD_STRICT)
a3e2b5
+                        continue;
a3e2b5
 
a3e2b5
                 value = strchr(key, '=');
a3e2b5
                 if (value)
a3e2b5
diff --git a/src/basic/proc-cmdline.h b/src/basic/proc-cmdline.h
a3e2b5
index 4a9e6e0f62..140200dbf4 100644
a3e2b5
--- a/src/basic/proc-cmdline.h
a3e2b5
+++ b/src/basic/proc-cmdline.h
a3e2b5
@@ -8,6 +8,7 @@
a3e2b5
 enum {
a3e2b5
         PROC_CMDLINE_STRIP_RD_PREFIX = 1,
a3e2b5
         PROC_CMDLINE_VALUE_OPTIONAL = 2,
a3e2b5
+        PROC_CMDLINE_RD_STRICT = 4
a3e2b5
 };
a3e2b5
 
a3e2b5
 typedef int (*proc_cmdline_parse_t)(const char *key, const char *value, void *data);