public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: stable@vger.kernel.org
Cc: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>,
	Sasha Levin <sashal@kernel.org>
Subject: Re: [PATCH 5.10 v2 05/16] x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
Date: Thu, 19 Jun 2025 05:03:19 -0400	[thread overview]
Message-ID: <20250618171828-ebdcd37d56c3a76b@stable.kernel.org> (raw)
In-Reply-To: <20250617-its-5-10-v2-5-3e925a1512a1@linux.intel.com>

[ Sasha's backport helper bot ]

Hi,

✅ All tests passed successfully. No issues detected.
No action required from the submitter.

The upstream commit SHA1 provided is correct: ac0ee0a9560c97fa5fe1409e450c2425d4ebd17a

WARNING: Author mismatch between patch and upstream commit:
Backport author: Pawan Gupta<pawan.kumar.gupta@linux.intel.com>
Commit author: Peter Zijlstra<peterz@infradead.org>

Status in newer kernel trees:
6.15.y | Present (exact SHA1)
6.12.y | Present (exact SHA1)
6.6.y | Present (exact SHA1)
6.1.y | Present (different SHA1: c51a456b4179)
5.15.y | Present (different SHA1: 7339b1ce5ea6)

Note: The patch differs from the upstream commit:
---
1:  ac0ee0a9560c9 ! 1:  afe5930bd1f3d x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
    @@ Metadata
      ## Commit message ##
         x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
     
    +    commit ac0ee0a9560c97fa5fe1409e450c2425d4ebd17a upstream.
    +
         In order to re-write Jcc.d32 instructions text_poke_bp() needs to be
         taught about them.
     
    @@ Commit message
         last 5 bytes and adding the rule that 'length == 6' instruction will
         be prefixed with a 0x0f byte.
     
    +    Change-Id: Ie3f72c6b92f865d287c8940e5a87e59d41cfaa27
         Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
         Signed-off-by: Ingo Molnar <mingo@kernel.org>
         Reviewed-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
         Link: https://lore.kernel.org/r/20230123210607.115718513@infradead.org
    +    [cascardo: there is no emit_call_track_retpoline]
    +    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@igalia.com>
    +    Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
     
      ## arch/x86/kernel/alternative.c ##
     @@ arch/x86/kernel/alternative.c: void __init_or_module noinline apply_alternatives(struct alt_instr *start,
    - 	}
    + 	kasan_enable_current();
      }
      
     +static inline bool is_jcc32(struct insn *insn)
    @@ arch/x86/kernel/alternative.c: void __init_or_module noinline apply_alternatives
     +	return insn->opcode.bytes[0] == 0x0f && (insn->opcode.bytes[1] & 0xf0) == 0x80;
     +}
     +
    - #if defined(CONFIG_RETPOLINE) && defined(CONFIG_OBJTOOL)
    + #if defined(CONFIG_RETPOLINE) && defined(CONFIG_STACK_VALIDATION)
      
      /*
    -@@ arch/x86/kernel/alternative.c: static int emit_indirect(int op, int reg, u8 *bytes)
    - 	return i;
    - }
    - 
    --static inline bool is_jcc32(struct insn *insn)
    --{
    --	/* Jcc.d32 second opcode byte is in the range: 0x80-0x8f */
    --	return insn->opcode.bytes[0] == 0x0f && (insn->opcode.bytes[1] & 0xf0) == 0x80;
    --}
    --
    - static int emit_call_track_retpoline(void *addr, struct insn *insn, int reg, u8 *bytes)
    - {
    - 	u8 op = insn->opcode.bytes[0];
     @@ arch/x86/kernel/alternative.c: void text_poke_sync(void)
      	on_each_cpu(do_sync_core, NULL, 1);
      }
    @@ arch/x86/kernel/alternative.c: static void text_poke_loc_init(struct text_poke_l
      	case JMP32_INSN_OPCODE:
     @@ arch/x86/kernel/alternative.c: static void text_poke_loc_init(struct text_poke_loc *tp, void *addr,
      		BUG_ON(len != insn.length);
    - 	}
    + 	};
      
     -
      	switch (tp->opcode) {
---

Results of testing on various branches:

| Branch                    | Patch Apply | Build Test |
|---------------------------|-------------|------------|
| stable/linux-5.15.y       |  Success    |  Success   |

  reply	other threads:[~2025-06-19  9:03 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-18  0:44 [PATCH 5.10 v2 00/16] ITS mitigation for 5.10 Pawan Gupta
2025-06-18  0:44 ` [PATCH 5.10 v2 01/16] Documentation: x86/bugs/its: Add ITS documentation Pawan Gupta
2025-06-19  9:03   ` Sasha Levin
2025-06-18  0:44 ` [PATCH 5.10 v2 02/16] x86/bhi: Define SPEC_CTRL_BHI_DIS_S Pawan Gupta
2025-06-19  9:04   ` Sasha Levin
2025-06-18  0:44 ` [PATCH 5.10 v2 03/16] x86/its: Enumerate Indirect Target Selection (ITS) bug Pawan Gupta
2025-06-19  9:04   ` Sasha Levin
2025-06-18  0:45 ` [PATCH 5.10 v2 04/16] x86/alternatives: Introduce int3_emulate_jcc() Pawan Gupta
2025-06-19  9:04   ` Sasha Levin
2025-06-18  0:45 ` [PATCH 5.10 v2 05/16] x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions Pawan Gupta
2025-06-19  9:03   ` Sasha Levin [this message]
2025-06-18  0:45 ` [PATCH 5.10 v2 06/16] x86/its: Add support for ITS-safe indirect thunk Pawan Gupta
2025-06-19  9:03   ` Sasha Levin
2025-06-18  0:45 ` [PATCH 5.10 v2 07/16] x86/alternative: Optimize returns patching Pawan Gupta
2025-06-19  9:04   ` Sasha Levin
2025-06-23 19:10     ` Pawan Gupta
2025-06-18  0:46 ` [PATCH 5.10 v2 08/16] x86/alternatives: Remove faulty optimization Pawan Gupta
2025-06-19  9:03   ` Sasha Levin
2025-06-18  0:46 ` [PATCH 5.10 v2 09/16] x86/its: Add support for ITS-safe return thunk Pawan Gupta
2025-06-19  9:02   ` Sasha Levin
2025-06-18  0:46 ` [PATCH 5.10 v2 10/16] x86/its: Fix undefined reference to cpu_wants_rethunk_at() Pawan Gupta
2025-06-19  9:03   ` Sasha Levin
2025-06-23 19:17     ` Pawan Gupta
2025-06-18  0:46 ` [PATCH 5.10 v2 11/16] x86/its: Enable Indirect Target Selection mitigation Pawan Gupta
2025-06-19  9:04   ` Sasha Levin
2025-06-18  0:47 ` [PATCH 5.10 v2 12/16] x86/its: Add "vmexit" option to skip mitigation on some CPUs Pawan Gupta
2025-06-19  9:02   ` Sasha Levin
2025-06-18  0:47 ` [PATCH 5.10 v2 13/16] x86/modules: Set VM_FLUSH_RESET_PERMS in module_alloc() Pawan Gupta
2025-06-19  9:02   ` Sasha Levin
2025-06-18  0:47 ` [PATCH 5.10 v2 14/16] x86/its: Use dynamic thunks for indirect branches Pawan Gupta
2025-06-19  9:03   ` Sasha Levin
2025-06-23 19:33     ` Pawan Gupta
2025-06-18  0:47 ` [PATCH 5.10 v2 15/16] x86/its: Fix build errors when CONFIG_MODULES=n Pawan Gupta
2025-06-19  9:02   ` Sasha Levin
2025-06-18  0:48 ` [PATCH 5.10 v2 16/16] x86/its: FineIBT-paranoid vs ITS Pawan Gupta
2025-06-19  9:02   ` Sasha Levin
2025-07-12 13:50 ` [PATCH 5.10 v2 00/16] ITS mitigation for 5.10 Greg Kroah-Hartman

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=20250618171828-ebdcd37d56c3a76b@stable.kernel.org \
    --to=sashal@kernel.org \
    --cc=pawan.kumar.gupta@linux.intel.com \
    --cc=stable@vger.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