Masami Hiramatsu (Google)
8a22203bec
bootconfig: Fix testcase to increase max node
...
[ Upstream commit b69245126a48e50882021180fa5d264dc7149ccc ]
Since commit 6c40624930c5 ("bootconfig: Increase max nodes of bootconfig
from 1024 to 8192 for DCC support") increased the max number of bootconfig
node to 8192, the bootconfig testcase of the max number of nodes fails.
To fix this issue, we can not simply increase the number in the test script
because the test bootconfig file becomes too big (>32KB). To fix that, we
can use a combination of three alphabets (26^3 = 17576). But with that,
we can not express the 8193 (just one exceed from the limitation) because
it also exceeds the max size of bootconfig. So, the first 26 nodes will just
use one alphabet.
With this fix, test-bootconfig.sh passes all tests.
Link: https://lore.kernel.org/all/167888844790.791176.670805252426835131.stgit@devnote2/
Reported-by: Heinz Wiesinger <pprkut@slackware.com >
Link: https://lore.kernel.org/all/2463802.XAFRqVoOGU@amaterasu.liwjatan.org
Fixes: 6c40624930c5 ("bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC support")
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Signed-off-by: Sasha Levin <sashal@kernel.org >
2023-03-30 12:49:07 +02:00
Antonio Alvarez Feijoo
b1e96ca73c
tools/bootconfig: fix single & used for logical condition
...
commit cf8c59a3756b2735c409a9b3ac1e4ec556546a7a upstream.
A single & will create a background process and return true, so the grep
command will run even if the file checked in the first condition does not
exist.
Link: https://lore.kernel.org/all/20230112114215.17103-1-antonio.feijoo@suse.com/
Fixes: 1eaad3ac3f ("tools/bootconfig: Use per-group/all enable option in ftrace2bconf script")
Signed-off-by: Antonio Alvarez Feijoo <antonio.feijoo@suse.com >
Cc: stable@vger.kernel.org
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org >
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2023-03-10 09:34:27 +01:00
Masami Hiramatsu
4ee1b4cac2
bootconfig: Cleanup dummy headers in tools/bootconfig
...
Cleanup dummy headers in tools/bootconfig/include except
for tools/bootconfig/include/linux/bootconfig.h.
For this change, I use __KERNEL__ macro to split kernel
header #include and introduce xbc_alloc_mem() and
xbc_free_mem().
Link: https://lkml.kernel.org/r/163187299574.2366983.18371329724128746091.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 22:16:02 -04:00
Masami Hiramatsu
4f292c4886
bootconfig: Replace u16 and u32 with uint16_t and uint32_t
...
Replace u16 and u32 with uint16_t and uint32_t so
that the tools/bootconfig only needs <stdint.h>.
Link: https://lkml.kernel.org/r/163187298835.2366983.9838262576854319669.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 20:44:05 -04:00
Masami Hiramatsu
160321b260
tools/bootconfig: Print all error message in stderr
...
Print all error message in stderr. This also removes
unneeded tools/bootconfig/include/linux/printk.h.
Link: https://lkml.kernel.org/r/163187298106.2366983.15210300267326257397.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 20:44:05 -04:00
Masami Hiramatsu
115d4d08ae
bootconfig: Rename xbc_destroy_all() to xbc_exit()
...
Avoid using this noisy name and use more calm one.
This is just a name change. No functional change.
Link: https://lkml.kernel.org/r/163187295918.2366983.5231840238429996027.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 20:44:05 -04:00
Masami Hiramatsu
f30f00cc96
tools/bootconfig: Run test script when build all
...
Run the bootconfig test script when build all target
so that user can notice any issue when build it.
Link: https://lkml.kernel.org/r/163187295173.2366983.18295281097397499118.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 20:44:05 -04:00
Masami Hiramatsu
e306220cb7
bootconfig: Add xbc_get_info() for the node information
...
Add xbc_get_info() API which allows user to get the
number of used xbc_nodes and the size of bootconfig
data. This is also useful for checking the bootconfig
is initialized or not.
Link: https://lkml.kernel.org/r/163177340877.682366.4360676589783197627.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 20:43:53 -04:00
Masami Hiramatsu
bdac5c2b24
bootconfig: Allocate xbc_data inside xbc_init()
...
Allocate 'xbc_data' in the xbc_init() so that it does
not need to care about the ownership of the copied
data.
Link: https://lkml.kernel.org/r/163177339986.682366.898762699429769117.stgit@devnote2
Suggested-by: Steven Rostedt <rostedt@goodmis.org >
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-10-10 20:43:42 -04:00
Masami Hiramatsu
80be5998ad
tools/bootconfig: Define memblock_free_ptr() to fix build error
...
The lib/bootconfig.c file is shared with the 'bootconfig' tooling, and
as a result, the changes incommit 77e02cf57b ("memblock: introduce
saner 'memblock_free_ptr()' interface") need to also be reflected in the
tooling header file.
So define the new memblock_free_ptr() wrapper, and remove unused __pa()
and memblock_free().
Fixes: 77e02cf57b ("memblock: introduce saner 'memblock_free_ptr()' interface")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
2021-09-15 09:49:48 -07:00
Masami Hiramatsu
47914d4e59
tools/bootconfig: Show whole test command for each test case
...
Show whole test command instead of only the 3rd argument.
This will clear to show what will be actually tested by
each test case.
Link: https://lkml.kernel.org/r/163077088607.222577.14786016266462495017.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-09-08 15:29:16 -04:00
Julio Faracco
903bd067fa
bootconfig: Fix missing return check of xbc_node_compose_key function
...
The function `xbc_show_list should` handle the keys during the
composition. Even the errors returned by the compose function. Instead
of removing the `ret` variable, it should save the value and show the
exact error. This missing variable is causing a compilation issue also.
Link: https://lkml.kernel.org/r/163077087861.222577.12884543474750968146.stgit@devnote2
Fixes: e5efaeb8a8 ("bootconfig: Support mixing a value and subkeys under a key")
Signed-off-by: Julio Faracco <jcfaracco@gmail.com >
Acked-by: Masami Hiramatsu <mhiramat@kernel.org >
Cc: stable@vger.kernel.org
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-09-08 15:28:50 -04:00
Masami Hiramatsu
32ba9f0fb0
tools/bootconfig: Fix tracing_on option checking in ftrace2bconf.sh
...
Since tracing_on indicates only "1" (default) or "0", ftrace2bconf.sh
only need to check the value is "0".
Link: https://lkml.kernel.org/r/163077087144.222577.6888011847727968737.stgit@devnote2
Fixes: 55ed456077 ("tools/bootconfig: Add tracing_on support to helper scripts")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-09-08 15:10:41 -04:00
Masami Hiramatsu
1eaad3ac3f
tools/bootconfig: Use per-group/all enable option in ftrace2bconf script
...
Use per-group/all enable option instead of ftrace.events option.
This will make the bootconfig file more readable.
Link: https://lkml.kernel.org/r/162856129436.203126.12462564671412940618.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-08-16 11:39:50 -04:00
Masami Hiramatsu
f134ebb281
tools/bootconfig: Add histogram syntax support to bconf2ftrace.sh
...
Add histogram syntax support to bconf2ftrace.sh script.
Link: https://lkml.kernel.org/r/162856128672.203126.8240335908303312607.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-08-16 11:39:50 -04:00
Masami Hiramatsu
1d8365a553
tools/bootconfig: Support per-group/all event enabling option
...
Add group or all event enabling syntax support to bconf2ftrace.sh.
User can pass a bootconfig file which includes
ftrace[.instance.INSTANCE].event.enable
and
ftrace[.instance.INSTANCE].event.GROUP.enable
correctly.
Link: https://lkml.kernel.org/r/162856127850.203126.16694505101982548237.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-08-16 11:37:23 -04:00
Masami Hiramatsu
99f4f5d623
bootconfig: Share the checksum function with tools
...
Move the checksum calculation function into the header for sharing it
with tools/bootconfig.
Link: https://lkml.kernel.org/r/162262197470.264090.16325743685807878807.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-10 13:41:26 -04:00
Masami Hiramatsu
29e1c1ad3f
tools/bootconfig: Support mixed value and subkey test cases
...
Update test case to support mixed value and subkey on a key.
Link: https://lkml.kernel.org/r/162262195568.264090.12431204030021242896.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-10 13:41:26 -04:00
Masami Hiramatsu
e5efaeb8a8
bootconfig: Support mixing a value and subkeys under a key
...
Support mixing a value and subkeys under a key. Since kernel cmdline
options will support "aaa.bbb=value1 aaa.bbb.ccc=value2", it is
better that the bootconfig supports such configuration too.
Note that this does not change syntax itself but just accepts
mixed value and subkeys e.g.
key = value1
key.subkey = value2
But this is not accepted;
key {
value1
subkey = value2
}
That will make value1 as a subkey.
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.
key.subkey = value1
key = value2
In the program (and /proc/bootconfig), it will be shown as below
key = value2
key.subkey = value1
Link: https://lkml.kernel.org/r/162262194685.264090.7738574774030567419.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-10 13:41:26 -04:00
Masami Hiramatsu
ca24306d83
bootconfig: Change array value to use child node
...
It is not possible to put an array value with subkeys under
a key node, because both of subkeys and the array elements
are using "next" field of the xbc_node.
Thus this changes the array values to use "child" field in
the array case. The reason why split this change is to
test it easily.
Link: https://lkml.kernel.org/r/162262193838.264090.16044473274501498656.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-10 13:38:25 -04:00
zuoqilin
30d103f2d4
tools/bootconfig: Simplify expression
...
It is not necessary to define the variable ret to receive
the return value of the xbc_node_compose_key() method.
Link: https://lkml.kernel.org/r/20210414134647.1870-1-zuoqilin1@163.com
Acked-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: zuoqilin <zuoqilin@yulong.com >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-10 11:16:20 -04:00
Masami Hiramatsu
824afd55e9
tools/bootconfig: Fix a build error accroding to undefined fallthrough
...
Since the "fallthrough" is defined only in the kernel, building
lib/bootconfig.c as a part of user-space tools causes a build
error.
Add a dummy fallthrough to avoid the build error.
Link: https://lkml.kernel.org/r/162087519356.442660.11385099982318160180.stgit@devnote2
Cc: Ingo Molnar <mingo@kernel.org >
Cc: stable@vger.kernel.org
Fixes: 4c1ca831ad ("Revert "lib: Revert use of fallthrough pseudo-keyword in lib/"")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-08 16:44:00 -04:00
Zhen Lei
e8ba0b2b64
tools/bootconfig: Fix error return code in apply_xbc()
...
Fix to return a negative error code from the error handling case instead
of 0, as done elsewhere in this function.
Link: https://lkml.kernel.org/r/20210508034216.2277-1-thunder.leizhen@huawei.com
Fixes: a995e6bc05 ("tools/bootconfig: Fix to check the write failure correctly")
Reported-by: Hulk Robot <hulkci@huawei.com >
Acked-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-06-08 16:43:59 -04:00
Masami Hiramatsu
55ed456077
tools/bootconfig: Add tracing_on support to helper scripts
...
Add ftrace.instance.INSTANCE.tracing_on support to ftrace2bconf.sh
and bconf2ftrace.sh.
commit 8490db06f9 ("tracing/boot: Add per-instance tracing_on
option support") added the per-instance tracing_on option,
but forgot to update the helper scripts.
Link: https://lkml.kernel.org/r/160749166410.3497930.14204335886811029800.stgit@devnote2
Cc: stable@vger.kernel.org
Fixes: 8490db06f9 ("tracing/boot: Add per-instance tracing_on option support")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2021-01-14 10:32:20 -05:00
Masami Hiramatsu
e86843580d
tools/bootconfig: Store size and checksum in footer as le32
...
Store the size and the checksum fields in the footer as le32
instead of u32. This will allow us to apply bootconfig to the
cross build initrd without caring the endianness.
Link: https://lkml.kernel.org/r/160583935332.547349.5897811300636587426.stgit@devnote2
Reported-by: Steven Rostedt <rostedt@goodmis.org >
Suggested-by: Linus Torvalds <torvalds@linux-foundation.org >
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org >
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org >
2020-11-30 23:22:11 -05:00