From nobody Mon Sep 28 01:04:53 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4htNPy3v7gz6tZp9 for ; Mon, 28 Sep 2026 01:04:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4htNPy1yqwz4q7Z for ; Mon, 28 Sep 2026 01:04:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1790557494; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NpmVGScNiIH3BTwPRChjd7q++Lw5EBt/DdCWNVV8/DY=; b=Qu9e/2d7VqF1Bs7v8a8FxgMVuJ4zE46RmQ2h949BffAHvFCNR3gGeroEQoS3ALVhdd+SK0 H6hNwNMosYeI8NtqHBmDJDMXgyqt8hAi50CvHIbvVqVg+FFFXm4evSZulgratM+FI8Pb4/ ly4lifZ5hTBlPWXmuQAbg83idUtcwdiBF8Mv1dF8UX+UDbG6XiKiB9pb2KJ82sAsdWLKSd AXMvbmMTE+3tSBX8DUBwS0iknxNhkvDXLlxdq8K1feNNheSPwAZiLwnArdlW9aiRmAf0fC HhfhvaJAiMDmb5xitucC2KAsnZKK9Fu02yNME//gZdlMm99qO5YmqA4AVbOkYg== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1790557494; b=ctHHbIvDW3E0/OFsKVJhn5RDZqFoMiiBPTVf6M2ktHl3M6OlasEuGZ1RxjyJkFLGUF9HDh abotBNkx9Yy/efVTFZC+Se0iuP2xKGtjjr64Hm5azZ80S79V6ZxjwGy+cIh5g3h8jPPnx6 W3jwgYDg1d5X8+BX5paDt67NvqTZCJC4LwF2MpQzl3I9Hk82b3w+X4sC+oDBDosDnKz73c isEo9WlKv+FP0WpEwK2/3P3ZsPDhfiGq6v3EP1hhLxiozf031yo8m11pzd3RhuvDSHVlUj dl61+K/Ef3qInULLmQkvjc9zDGwkjsy7z4DFpBej8w9YhWSFGI/kvic3oCS1Wg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1790557494; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NpmVGScNiIH3BTwPRChjd7q++Lw5EBt/DdCWNVV8/DY=; b=G/f5pMudy4pdWiK2VHAI09I0CB48ZxAaeE1kuwydg5CN1bwRHYiPf6ixrruoPmYSVXbt98 c07ly7VZLwRFj9UQ3oPKhtFr9fw+m4yk1sMRFA7Uad2fNq7jQWHsRN7FyKWLe8CXmxarv9 bjBwjzwQw9zGxYSAM3XQr5cVh3ZyZdce0HTRvwm3CJMQaBEM2mVKLGQmn75JxZSNDKZ5cC isWq6ORoPHZUWHMb0AZ4zjDDNOLV0j9z0wBwzvmJviWQD+QKIARA1qn0rs1PTtSBgTf35o 5ohONNWyEn8f9xwSLycKlEpXB9dN5CwxjPEyzqQZrv8X19tOHZTvg4XGe3IKCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4htNPx6MQBz14sb for ; Mon, 28 Sep 2026 01:04:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3dbec by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 28 Sep 2026 01:04:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: d1c4838a7464 - stable/15 - x86: add cpu_stdext_feature5 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: d1c4838a746489dc2f53bef5964f8ad40ced7173 Auto-Submitted: auto-generated Date: Mon, 28 Sep 2026 01:04:53 +0000 Message-Id: <6ab9bd35.3dbec.588bcb13@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d1c4838a746489dc2f53bef5964f8ad40ced7173 commit d1c4838a746489dc2f53bef5964f8ad40ced7173 Author: Konstantin Belousov AuthorDate: 2026-09-19 08:02:56 +0000 Commit: Konstantin Belousov CommitDate: 2026-09-28 01:03:27 +0000 x86: add cpu_stdext_feature5 (cherry picked from commit 71f08bfa02a93d5d165ce96abc9077f36e4963b6) --- sys/x86/include/specialreg.h | 5 +++++ sys/x86/include/x86_var.h | 1 + sys/x86/x86/identcpu.c | 10 ++++++++++ 3 files changed, 16 insertions(+) diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index 41ca638152d3..f32faec25e45 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -558,6 +558,11 @@ #define CPUID_STDEXT4_NMISRC 0x00100000 #define CPUID_STDEXT4_LAM 0x04000000 +/* + * CPUID instruction 7 Structured Extended Features, leaf 1 ecx info + */ +#define CPUID_STDEXT5_MSR_IMM 0x00000020 + /* CPUID_HYBRID_ID leaf 0x1a */ #define CPUID_HYBRID_CORE_MASK 0xff000000 #define CPUID_HYBRID_SMALL_CORE 0x20000000 diff --git a/sys/x86/include/x86_var.h b/sys/x86/include/x86_var.h index 1711b13b6af6..ca0ac1e97768 100644 --- a/sys/x86/include/x86_var.h +++ b/sys/x86/include/x86_var.h @@ -51,6 +51,7 @@ extern u_int cpu_stdext_feature; extern u_int cpu_stdext_feature2; extern u_int cpu_stdext_feature3; extern u_int cpu_stdext_feature4; +extern u_int cpu_stdext_feature5; extern uint64_t cpu_ia32_arch_caps; extern u_int cpu_high; extern u_int cpu_id; diff --git a/sys/x86/x86/identcpu.c b/sys/x86/x86/identcpu.c index 51ee58f4de87..208ac8a7bddc 100644 --- a/sys/x86/x86/identcpu.c +++ b/sys/x86/x86/identcpu.c @@ -117,6 +117,7 @@ u_int cpu_stdext_feature2; /* %ecx */ u_int cpu_stdext_feature3; /* %edx */ /* leaf 7 %ecx = 1 */ u_int cpu_stdext_feature4; /* %eax */ +u_int cpu_stdext_feature5; /* %ecx */ uint64_t cpu_ia32_arch_caps; u_int cpu_max_ext_state_size; u_int cpu_mon_mwait_flags; /* MONITOR/MWAIT flags (CPUID.05H.ECX) */ @@ -1063,6 +1064,14 @@ printcpuinfo(void) ); } + if (cpu_stdext_feature5 != 0) { + printf("\n Structured Extended Features5=0x%b", + cpu_stdext_feature5, + "\020" + "\006MSR_IMM" + ); + } + if ((cpu_feature2 & CPUID2_XSAVE) != 0) { cpuid_count(0xd, 0x1, regs); if (regs[0] != 0) { @@ -1615,6 +1624,7 @@ identify_cpu2(void) if (max_eax_l7 >= 1) { cpuid_count(7, 1, regs); cpu_stdext_feature4 = regs[0]; + cpu_stdext_feature5 = regs[2]; } } }