Thread (37 messages) flat view 37 messages, 2 authors, 2d ago

Re: [PATCH v4 15/22] objtool: Prevent kCFI hashes from being decoded as instructions

From: Song Liu <song@kernel.org>
Date: 2026-08-12 04:37:31
Also in: live-patching, lkml

On Tue, Aug 11, 2026 at 5:30 PM Josh Poimboeuf [off-list ref] wrote:
On Tue, Aug 11, 2026 at 04:58:05PM -0700, Song Liu wrote:
quoted
On Sat, Aug 8, 2026 at 4:18 PM Josh Poimboeuf [off-list ref] wrote:
[...]
quoted
+/*
+ * ARM64 mapping symbols ($d, $x, $a, __pi_$d, etc) which mark transitions
+ * between code and data.
+ */
+static inline bool is_mapping_sym(struct symbol *sym)
+{
+       return is_notype_sym(sym) && strchr(sym->name, '$');
+}
+
+static inline bool is_data_mapping_sym(struct symbol *sym)
+{
+       const char *dollar;
+
+       if (!is_mapping_sym(sym))
+               return false;
+
+       dollar = strchr(sym->name, '$');
+       return dollar && dollar[1] == 'd';
nit: is_data_mapping_sym() calls strchr() twice. Maybe we can
optimize it by eliminating a strchr()?
I suppose it's a bit funky, but the compiler CSEs it, so it's harmless.
I see. Then this should be fine.

Thanks!

Acked-by: Song Liu <song@kernel.org>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help