From: "Masami Hiramatsu (Google)" <mhiramat@kernel.org>
To: Masami Hiramatsu <mhiramat@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>
Cc: linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org
Subject: [PATCH 2/2] bootconfig: Add more test samples
Date: Sat, 14 Mar 2026 18:06:49 +0900 [thread overview]
Message-ID: <177347920912.458550.32083364202678420.stgit@devnote2> (raw)
In-Reply-To: <177347919093.458550.1919253264724868769.stgit@devnote2>
From: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Add more test samples for edge cases (empty block, quoted newline,
various error cases) to tools/bootconfig/samples/.
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
---
| 2 ++
tools/bootconfig/samples/bad-dot-middle.bconf | 1 +
.../bootconfig/samples/bad-invalid-operator.bconf | 1 +
tools/bootconfig/samples/bad-key-dot-end.bconf | 1 +
tools/bootconfig/samples/bad-unclosed-quote.bconf | 1 +
.../samples/bad-unexpected-close-brace.bconf | 4 ++++
.../samples/exp-good-dot-with-block.bconf | 1 +
.../bootconfig/samples/exp-good-empty-block.bconf | 1 +
.../samples/exp-good-empty-value-sep.bconf | 3 +++
.../samples/exp-good-quoted-newline.bconf | 2 ++
tools/bootconfig/samples/good-dot-with-block.bconf | 3 +++
tools/bootconfig/samples/good-empty-block.bconf | 1 +
.../bootconfig/samples/good-empty-value-sep.bconf | 3 +++
tools/bootconfig/samples/good-quoted-newline.bconf | 2 ++
14 files changed, 26 insertions(+)
create mode 100644 tools/bootconfig/samples/bad-array-comment-delimiter.bconf
create mode 100644 tools/bootconfig/samples/bad-dot-middle.bconf
create mode 100644 tools/bootconfig/samples/bad-invalid-operator.bconf
create mode 100644 tools/bootconfig/samples/bad-key-dot-end.bconf
create mode 100644 tools/bootconfig/samples/bad-unclosed-quote.bconf
create mode 100644 tools/bootconfig/samples/bad-unexpected-close-brace.bconf
create mode 100644 tools/bootconfig/samples/exp-good-dot-with-block.bconf
create mode 100644 tools/bootconfig/samples/exp-good-empty-block.bconf
create mode 100644 tools/bootconfig/samples/exp-good-empty-value-sep.bconf
create mode 100644 tools/bootconfig/samples/exp-good-quoted-newline.bconf
create mode 100644 tools/bootconfig/samples/good-dot-with-block.bconf
create mode 100644 tools/bootconfig/samples/good-empty-block.bconf
create mode 100644 tools/bootconfig/samples/good-empty-value-sep.bconf
create mode 100644 tools/bootconfig/samples/good-quoted-newline.bconf
--git a/tools/bootconfig/samples/bad-array-comment-delimiter.bconf b/tools/bootconfig/samples/bad-array-comment-delimiter.bconf
new file mode 100644
index 000000000000..5300cef82aa3
--- /dev/null
+++ b/tools/bootconfig/samples/bad-array-comment-delimiter.bconf
@@ -0,0 +1,2 @@
+key = 1 # comment
+ , 2 # Error: comment between value and its comma delimiter
diff --git a/tools/bootconfig/samples/bad-dot-middle.bconf b/tools/bootconfig/samples/bad-dot-middle.bconf
new file mode 100644
index 000000000000..b3bd19e3c991
--- /dev/null
+++ b/tools/bootconfig/samples/bad-dot-middle.bconf
@@ -0,0 +1 @@
+key..word = value # Double dots are not allowed
diff --git a/tools/bootconfig/samples/bad-invalid-operator.bconf b/tools/bootconfig/samples/bad-invalid-operator.bconf
new file mode 100644
index 000000000000..ca19895bee8a
--- /dev/null
+++ b/tools/bootconfig/samples/bad-invalid-operator.bconf
@@ -0,0 +1 @@
+key ?= value # Unsupported operator
diff --git a/tools/bootconfig/samples/bad-key-dot-end.bconf b/tools/bootconfig/samples/bad-key-dot-end.bconf
new file mode 100644
index 000000000000..57ae39d36e95
--- /dev/null
+++ b/tools/bootconfig/samples/bad-key-dot-end.bconf
@@ -0,0 +1 @@
+key. = value # Key cannot end with a dot
diff --git a/tools/bootconfig/samples/bad-unclosed-quote.bconf b/tools/bootconfig/samples/bad-unclosed-quote.bconf
new file mode 100644
index 000000000000..9384e68d17f6
--- /dev/null
+++ b/tools/bootconfig/samples/bad-unclosed-quote.bconf
@@ -0,0 +1 @@
+key = "unclosed quote
diff --git a/tools/bootconfig/samples/bad-unexpected-close-brace.bconf b/tools/bootconfig/samples/bad-unexpected-close-brace.bconf
new file mode 100644
index 000000000000..a372be395200
--- /dev/null
+++ b/tools/bootconfig/samples/bad-unexpected-close-brace.bconf
@@ -0,0 +1,4 @@
+key {
+ subkey = value
+}
+} # Extra closing brace
diff --git a/tools/bootconfig/samples/exp-good-dot-with-block.bconf b/tools/bootconfig/samples/exp-good-dot-with-block.bconf
new file mode 100644
index 000000000000..ff563ceec024
--- /dev/null
+++ b/tools/bootconfig/samples/exp-good-dot-with-block.bconf
@@ -0,0 +1 @@
+key.subkey.subsubkey = "value";
diff --git a/tools/bootconfig/samples/exp-good-empty-block.bconf b/tools/bootconfig/samples/exp-good-empty-block.bconf
new file mode 100644
index 000000000000..fe460e8e675c
--- /dev/null
+++ b/tools/bootconfig/samples/exp-good-empty-block.bconf
@@ -0,0 +1 @@
+key;
diff --git a/tools/bootconfig/samples/exp-good-empty-value-sep.bconf b/tools/bootconfig/samples/exp-good-empty-value-sep.bconf
new file mode 100644
index 000000000000..266851aae8f2
--- /dev/null
+++ b/tools/bootconfig/samples/exp-good-empty-value-sep.bconf
@@ -0,0 +1,3 @@
+key1 = "";
+key2 = "";
+key3 = "";
diff --git a/tools/bootconfig/samples/exp-good-quoted-newline.bconf b/tools/bootconfig/samples/exp-good-quoted-newline.bconf
new file mode 100644
index 000000000000..2b5166541df6
--- /dev/null
+++ b/tools/bootconfig/samples/exp-good-quoted-newline.bconf
@@ -0,0 +1,2 @@
+key = "value
+that spans multiple lines";
diff --git a/tools/bootconfig/samples/good-dot-with-block.bconf b/tools/bootconfig/samples/good-dot-with-block.bconf
new file mode 100644
index 000000000000..3d9bef7daa2f
--- /dev/null
+++ b/tools/bootconfig/samples/good-dot-with-block.bconf
@@ -0,0 +1,3 @@
+key.subkey {
+ subsubkey = value
+} # Combination of dot-notation and block syntax
diff --git a/tools/bootconfig/samples/good-empty-block.bconf b/tools/bootconfig/samples/good-empty-block.bconf
new file mode 100644
index 000000000000..8c390f37b177
--- /dev/null
+++ b/tools/bootconfig/samples/good-empty-block.bconf
@@ -0,0 +1 @@
+key { } # Empty block should be allowed and ignored
diff --git a/tools/bootconfig/samples/good-empty-value-sep.bconf b/tools/bootconfig/samples/good-empty-value-sep.bconf
new file mode 100644
index 000000000000..fbfb9a17ff99
--- /dev/null
+++ b/tools/bootconfig/samples/good-empty-value-sep.bconf
@@ -0,0 +1,3 @@
+key1 = ;
+key2 =
+key3 = # comment
diff --git a/tools/bootconfig/samples/good-quoted-newline.bconf b/tools/bootconfig/samples/good-quoted-newline.bconf
new file mode 100644
index 000000000000..8c9cd088579a
--- /dev/null
+++ b/tools/bootconfig/samples/good-quoted-newline.bconf
@@ -0,0 +1,2 @@
+key = "value
+that spans multiple lines" # Quoted values can contain newlines
prev parent reply other threads:[~2026-03-14 9:06 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-14 9:06 [PATCH 0/2] bootconfig: Add EBNF definition and more tests Masami Hiramatsu (Google)
2026-03-14 9:06 ` [PATCH 1/2] Documentation: bootconfig: Add EBNF definiton of bootconfig Masami Hiramatsu (Google)
2026-03-14 9:34 ` Masami Hiramatsu
2026-03-14 9:06 ` Masami Hiramatsu (Google) [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=177347920912.458550.32083364202678420.stgit@devnote2 \
--to=mhiramat@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox