aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Certner <olce@FreeBSD.org>2026-01-22 14:22:01 +0000
committerOlivier Certner <olce@FreeBSD.org>2026-02-03 14:02:55 +0000
commit7acd7ac6385c783699a64216198d7f2e244cc3b4 (patch)
tree629ddc4cd2a82e8ffc4da8b87452e54ec3cf6b20
parentcd8d44173adc375b59a24b1363476c086a7c86b4 (diff)
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
-rw-r--r--sys/x86/x86/cpu_machdep.c8
1 files 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);