From: Josh Law <objecting@objecting.org>
To: Masami Hiramatsu <mhiramat@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org
Subject: [PATCH v5 10/23] lib/bootconfig: drop redundant memset of xbc_nodes
Date: Sat, 14 Mar 2026 23:31:31 +0000 [thread overview]
Message-ID: <20260314233144.187273-11-objecting@objecting.org> (raw)
In-Reply-To: <20260314233144.187273-1-objecting@objecting.org>
memblock_alloc() already returns zeroed memory, so the explicit memset
in xbc_init() is redundant. Switch the userspace xbc_alloc_mem() from
malloc() to calloc() so both paths return zeroed memory, and remove
the separate memset call.
Signed-off-by: Josh Law <objecting@objecting.org>
---
lib/bootconfig.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/lib/bootconfig.c b/lib/bootconfig.c
index 06e8a79ab472..fe1053043752 100644
--- a/lib/bootconfig.c
+++ b/lib/bootconfig.c
@@ -71,7 +71,7 @@ static inline void __init xbc_free_mem(void *addr, size_t size, bool early)
static inline void *xbc_alloc_mem(size_t size)
{
- return malloc(size);
+ return calloc(1, size);
}
static inline void xbc_free_mem(void *addr, size_t size, bool early)
@@ -982,7 +982,6 @@ int __init xbc_init(const char *data, size_t size, const char **emsg, int *epos)
_xbc_exit(true);
return -ENOMEM;
}
- memset(xbc_nodes, 0, sizeof(struct xbc_node) * XBC_NODE_MAX);
ret = xbc_parse_tree();
if (!ret)
--
2.34.1
next prev parent reply other threads:[~2026-03-14 23:32 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-14 23:31 [PATCH v5 00/23] bootconfig: fixes, cleanups, and modernization Josh Law
2026-03-14 23:31 ` [PATCH v5 01/23] lib/bootconfig: add missing __init annotations to static helpers Josh Law
2026-03-14 23:31 ` [PATCH v5 02/23] lib/bootconfig: fix typo "initiized" in xbc_root_node() kerneldoc Josh Law
2026-03-14 23:31 ` [PATCH v5 03/23] lib/bootconfig: fix typo "uder" in xbc_node_find_next_leaf() Josh Law
2026-03-14 23:31 ` [PATCH v5 04/23] lib/bootconfig: add blank line before xbc_get_info() kerneldoc Josh Law
2026-03-14 23:31 ` [PATCH v5 05/23] lib/bootconfig: fix inconsistent if/else bracing Josh Law
2026-03-14 23:31 ` [PATCH v5 06/23] lib/bootconfig: narrow flag parameter type from uint32_t to uint16_t Josh Law
2026-03-14 23:31 ` [PATCH v5 07/23] lib/bootconfig: fix inconsistent if/else bracing in __xbc_add_key() Josh Law
2026-03-14 23:31 ` [PATCH v5 08/23] lib/bootconfig: fix off-by-one in xbc_verify_tree() next node check Josh Law
2026-03-14 23:31 ` [PATCH v5 09/23] lib/bootconfig: increment xbc_node_num after node init succeeds Josh Law
2026-03-14 23:31 ` Josh Law [this message]
2026-03-14 23:31 ` [PATCH v5 11/23] bootconfig: use __packed macro for struct xbc_node Josh Law
2026-03-14 23:31 ` [PATCH v5 12/23] bootconfig: constify xbc_calc_checksum() data parameter Josh Law
2026-03-14 23:31 ` [PATCH v5 13/23] lib/bootconfig: replace linux/kernel.h with specific includes Josh Law
2026-03-14 23:31 ` [PATCH v5 14/23] bootconfig: add __packed definition to tools/bootconfig shim header Josh Law
2026-03-14 23:31 ` [PATCH v5 15/23] lib/bootconfig: validate child node index in xbc_verify_tree() Josh Law
2026-03-14 23:31 ` [PATCH v5 16/23] lib/bootconfig: check xbc_init_node() return in override path Josh Law
2026-03-14 23:31 ` [PATCH v5 17/23] tools/bootconfig: fix fd leak in load_xbc_file() on fstat failure Josh Law
2026-03-14 23:31 ` [PATCH v5 18/23] lib/bootconfig: fix signed comparison in xbc_node_get_data() Josh Law
2026-03-14 23:31 ` [PATCH v5 19/23] lib/bootconfig: use size_t for strlen result in xbc_node_match_prefix() Josh Law
2026-03-14 23:31 ` [PATCH v5 20/23] lib/bootconfig: narrow offset type in xbc_init_node() Josh Law
2026-03-14 23:31 ` [PATCH v5 21/23] lib/bootconfig: use size_t for key length tracking in xbc_verify_tree() Josh Law
2026-03-14 23:31 ` [PATCH v5 22/23] lib/bootconfig: fix sign-compare in xbc_node_compose_key_after() Josh Law
2026-03-14 23:31 ` [PATCH v5 23/23] lib/bootconfig: change xbc_node_index() return type to uint16_t Josh Law
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=20260314233144.187273-11-objecting@objecting.org \
--to=objecting@objecting.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mhiramat@kernel.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