All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] bootconfig: Add mixed subkeys and value under the same key
@ 2021-05-16 14:55 Masami Hiramatsu
  2021-05-16 14:55 ` [PATCH 1/4] bootconfig: Change array value to use child node Masami Hiramatsu
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Masami Hiramatsu @ 2021-05-16 14:55 UTC (permalink / raw)
  To: Steven Rostedt; +Cc: LKML, Ingo Molnar, Devin Moore

Hi,

The following series updates bootconfig to support mixed subkeys and
a value under the same key. Since the kernel cmdline accepts options
like "aaa.bbb=val1 aaa.bbb.ccc=val2", it is better that the bootconfig
also support it.

This series depends on the previous bugfix which I sent last week;

 https://lore.kernel.org/lkml/162087519356.442660.11385099982318160180.stgit@devnote2/

With this series, sub-keys and a value can co-exist under a parent key.
For example, following config is allowed.

 foo = value1
 foo.bar = value2

Note, since there is no syntax to add raw value in the structured
key, you have to define it outside of the brace. For example

 foo.bar = value1
 foo.bar {
         baz = value2
         qux = value3
 }

Also, the order of the value node under a key is fixed. If there
are a value and subkeys, the value is always the first child node
of the key. Thus if user specifies subkeys first, e.g.

 foo.bar = value1
 foo = value2

In the program (and /proc/bootconfig), it will be shown as below

 foo = value2
 foo.bar = value1


Thank you,

---

Masami Hiramatsu (4):
      bootconfig: Change array value to use child node
      bootconfig: Support mixing a value and subkeys under a key
      tools/bootconfig: Support mixed value and subkey test cases
      docs: bootconfig: Update for mixing value and subkeys


 tools/bootconfig/main.c                            |   47 ++++++++++++++++----
 tools/bootconfig/samples/bad-mixed-kv1.bconf       |    3 -
 tools/bootconfig/samples/bad-mixed-kv2.bconf       |    3 -
 tools/bootconfig/samples/bad-override.bconf        |    3 -
 tools/bootconfig/samples/bad-override2.bconf       |    3 -
 tools/bootconfig/samples/good-mixed-append.bconf   |    4 ++
 tools/bootconfig/samples/good-mixed-kv1.bconf      |    3 +
 tools/bootconfig/samples/good-mixed-kv2.bconf      |    3 +
 tools/bootconfig/samples/good-mixed-kv3.bconf      |    6 +++
 tools/bootconfig/samples/good-mixed-override.bconf |    4 ++
 10 files changed, 58 insertions(+), 21 deletions(-)
 delete mode 100644 tools/bootconfig/samples/bad-mixed-kv1.bconf
 delete mode 100644 tools/bootconfig/samples/bad-mixed-kv2.bconf
 delete mode 100644 tools/bootconfig/samples/bad-override.bconf
 delete mode 100644 tools/bootconfig/samples/bad-override2.bconf
 create mode 100644 tools/bootconfig/samples/good-mixed-append.bconf
 create mode 100644 tools/bootconfig/samples/good-mixed-kv1.bconf
 create mode 100644 tools/bootconfig/samples/good-mixed-kv2.bconf
 create mode 100644 tools/bootconfig/samples/good-mixed-kv3.bconf
 create mode 100644 tools/bootconfig/samples/good-mixed-override.bconf

--
Masami Hiramatsu (Linaro) <mhiramat@kernel.org>

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-05-21  0:43 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-16 14:55 [PATCH 0/4] bootconfig: Add mixed subkeys and value under the same key Masami Hiramatsu
2021-05-16 14:55 ` [PATCH 1/4] bootconfig: Change array value to use child node Masami Hiramatsu
2021-05-17 15:24   ` Steven Rostedt
2021-05-17 23:42     ` Masami Hiramatsu
2021-05-21  0:43   ` Masami Hiramatsu
2021-05-16 14:55 ` [PATCH 2/4] bootconfig: Support mixing a value and subkeys under a key Masami Hiramatsu
2021-05-16 14:55 ` [PATCH 3/4] tools/bootconfig: Support mixed value and subkey test cases Masami Hiramatsu
2021-05-16 14:55 ` [PATCH 4/4] docs: bootconfig: Update for mixing value and subkeys Masami Hiramatsu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.