git: 7acd7ac6385c - main - x86: x86_msr_op(): Move setting mode up, delineate logical blocks

From: Olivier Certner <olce_at_FreeBSD.org>
Date: Tue, 03 Feb 2026 14:05:03 UTC
The branch main has been updated by olce:

URL: https://cgit.FreeBSD.org/src/commit/?id=7acd7ac6385c783699a64216198d7f2e244cc3b4

commit 7acd7ac6385c783699a64216198d7f2e244cc3b4
Author:     Olivier Certner <olce@FreeBSD.org>
AuthorDate: 2026-01-22 14:22:01 +0000
Commit:     Olivier Certner <olce@FreeBSD.org>
CommitDate: 2026-02-03 14:02:55 +0000

    x86: x86_msr_op(): Move setting mode up, delineate logical blocks
    
    No functional changes (intended).
    
    Reviewed by:    kib
    MFC after:      2 weeks
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D54996
---
 sys/x86/x86/cpu_machdep.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c
index 067374be4941..b0763d7bd98e 100644
--- a/sys/x86/x86/cpu_machdep.c
+++ b/sys/x86/x86/cpu_machdep.c
@@ -161,16 +161,18 @@ x86_msr_op(u_int msr, u_int op, uint64_t arg1, uint64_t *res)
 	u_int exmode;
 	int bound_cpu, cpu, i, is_bound;
 
-	a.op = op & MSR_OP_OP_MASK;
-	MPASS(a.op == MSR_OP_ANDNOT || a.op == MSR_OP_OR ||
-	    a.op == MSR_OP_WRITE || a.op == MSR_OP_READ);
 	exmode = op & MSR_OP_EXMODE_MASK;
 	MPASS(exmode == MSR_OP_LOCAL || exmode == MSR_OP_SCHED_ALL ||
 	    exmode == MSR_OP_SCHED_ONE || exmode == MSR_OP_RENDEZVOUS_ALL ||
 	    exmode == MSR_OP_RENDEZVOUS_ONE);
+
+	a.op = op & MSR_OP_OP_MASK;
+	MPASS(a.op == MSR_OP_ANDNOT || a.op == MSR_OP_OR ||
+	    a.op == MSR_OP_WRITE || a.op == MSR_OP_READ);
 	a.msr = msr;
 	a.arg1 = arg1;
 	a.res = res;
+
 	switch (exmode) {
 	case MSR_OP_LOCAL:
 		x86_msr_op_one(&a);