diff --git a/arch/x86/kernel/livepatch.c b/arch/x86/kernel/livepatch.c
index 0e118adf1408744ebe336929557dfd8fcae29167..785bba03b77fa5f6ea94472b6134303848791493 100644
--- a/arch/x86/kernel/livepatch.c
+++ b/arch/x86/kernel/livepatch.c
@@ -277,7 +277,7 @@ static unsigned char *klp_old_code(unsigned char *code)
 {
 	static union klp_code_union old_code;
 
-	strncpy(old_code.code, code, JMP_E9_INSN_SIZE);
+	memcpy(old_code.code, code, JMP_E9_INSN_SIZE);
 	return old_code.code;
 }