All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/5] x86/alternative: simplify DUMP_BYTES macro
@ 2022-03-11 14:43 Alexey Dobriyan
  2022-03-11 14:43 ` [PATCH 2/5] x86/alternative: bump MAX_PATCH_LEN Alexey Dobriyan
                   ` (6 more replies)
  0 siblings, 7 replies; 18+ messages in thread
From: Alexey Dobriyan @ 2022-03-11 14:43 UTC (permalink / raw)
  To: x86; +Cc: tglx, mingo, bp, dave.hansen, hpa, linux-kernel, adobriyan

Avoid zero length check with clever whitespace placement in the format
string.

Signed-off-by: Alexey Dobriyan (CloudLinux) <adobriyan@gmail.com>
---
 arch/x86/kernel/alternative.c | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
index 5007c3ffe96f..6c9758ee6810 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -66,13 +66,10 @@ do {									\
 	if (unlikely(debug_alternative)) {				\
 		int j;							\
 									\
-		if (!(len))						\
-			break;						\
-									\
 		printk(KERN_DEBUG pr_fmt(fmt), ##args);			\
-		for (j = 0; j < (len) - 1; j++)				\
-			printk(KERN_CONT "%02hhx ", buf[j]);		\
-		printk(KERN_CONT "%02hhx\n", buf[j]);			\
+		for (j = 0; j < (len); j++)				\
+			printk(KERN_CONT " %02hhx", buf[j]);		\
+		printk(KERN_CONT "\n");					\
 	}								\
 } while (0)
 
@@ -214,7 +211,7 @@ static __always_inline int optimize_nops_range(u8 *instr, u8 instrlen, int off)
 	add_nops(instr + off, nnops);
 	local_irq_restore(flags);
 
-	DUMP_BYTES(instr, instrlen, "%px: [%d:%d) optimized NOPs: ", instr, off, i);
+	DUMP_BYTES(instr, instrlen, "%px: [%d:%d) optimized NOPs:", instr, off, i);
 
 	return nnops;
 }
@@ -303,8 +300,8 @@ void __init_or_module noinline apply_alternatives(struct alt_instr *start,
 			instr, instr, a->instrlen,
 			replacement, a->replacementlen);
 
-		DUMP_BYTES(instr, a->instrlen, "%px:   old_insn: ", instr);
-		DUMP_BYTES(replacement, a->replacementlen, "%px:   rpl_insn: ", replacement);
+		DUMP_BYTES(instr, a->instrlen, "%px:   old_insn:", instr);
+		DUMP_BYTES(replacement, a->replacementlen, "%px:   rpl_insn:", replacement);
 
 		memcpy(insn_buff, replacement, a->replacementlen);
 		insn_buff_sz = a->replacementlen;
@@ -328,7 +325,7 @@ void __init_or_module noinline apply_alternatives(struct alt_instr *start,
 		for (; insn_buff_sz < a->instrlen; insn_buff_sz++)
 			insn_buff[insn_buff_sz] = 0x90;
 
-		DUMP_BYTES(insn_buff, insn_buff_sz, "%px: final_insn: ", instr);
+		DUMP_BYTES(insn_buff, insn_buff_sz, "%px: final_insn:", instr);
 
 		text_poke_early(instr, insn_buff, insn_buff_sz);
 
@@ -499,8 +496,8 @@ void __init_or_module noinline apply_retpolines(s32 *start, s32 *end)
 		len = patch_retpoline(addr, &insn, bytes);
 		if (len == insn.length) {
 			optimize_nops(bytes, len);
-			DUMP_BYTES(((u8*)addr),  len, "%px: orig: ", addr);
-			DUMP_BYTES(((u8*)bytes), len, "%px: repl: ", addr);
+			DUMP_BYTES(((u8*)addr),  len, "%px: orig:", addr);
+			DUMP_BYTES(((u8*)bytes), len, "%px: repl:", addr);
 			text_poke_early(addr, bytes, len);
 		}
 	}
-- 
2.34.1


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

end of thread, other threads:[~2022-04-06 11:42 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-11 14:43 [PATCH 1/5] x86/alternative: simplify DUMP_BYTES macro Alexey Dobriyan
2022-03-11 14:43 ` [PATCH 2/5] x86/alternative: bump MAX_PATCH_LEN Alexey Dobriyan
2022-03-11 14:43 ` [PATCH 3/5] x86/alternative: record .altinstructions section entity size Alexey Dobriyan
2022-03-12 21:17   ` Peter Zijlstra
2022-03-13 18:05     ` Alexey Dobriyan
2022-04-05 19:24       ` Thomas Gleixner
2022-04-06  8:30         ` Rasmus Villemoes
2022-03-11 14:43 ` [PATCH 4/5] x86/alternative: make .altinstr_replacement section non-executable Alexey Dobriyan
2022-03-12 15:31   ` Peter Zijlstra
2022-03-11 14:43 ` [PATCH 5/5] x86/unwind/orc: delete dead write in __orc_find() Alexey Dobriyan
2022-03-11 15:13   ` David Laight
2022-03-11 16:59     ` Alexey Dobriyan
2022-03-12 16:36 ` [PATCH 1/5] x86/alternative: simplify DUMP_BYTES macro Joe Perches
2022-03-13  0:14   ` Joe Perches
2022-03-13 18:09   ` Alexey Dobriyan
2022-03-14  3:21     ` Joe Perches
2022-04-03 22:25 ` Borislav Petkov
2022-04-05 16:36 ` Thomas Gleixner

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.