From nobody Mon Sep 28 18:37:12 2026 Received: from mail.alien8.de (mail.alien8.de [65.109.113.108]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 57C863BC68A for ; Tue, 18 Aug 2026 18:47:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=65.109.113.108 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787078873; cv=none; b=GwfHk2LzaR43HIROTP4/jdM1UvK3nZY0EPb+8jcCfnlci41LYKpezuue6MjqPhsj3MIGpZH0FSsPcgpsdfmfB6wuLdfAOB1OP7/uptUEEilBuKJgK0UmGyuzdGNrghQMnAOcDUCoHoZh2d8EGoSMtwDep/9Mt7P+VsPIASM/8vY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787078873; c=relaxed/simple; bh=F5PRaXTu2hPrsKIUAS0tg4osyRmxgl9flpKVjYlHwQU=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=mszFRQ/0i5JIS0whelVSdcSh8pxx/9AIc9iPgVd/YtkN+UrvjZMZzyKc68M2zIF1eE0nvpuRxd6hemY13q+RNTeLhAL+2+41+U5RrQNr1DCxXX3EuvFL5mmLNS0GjTrL3iwFJGWsV+e1hY0X4oxNvSI1npctfuLDQXdIFmzHeZ4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=alien8.de; spf=pass smtp.mailfrom=alien8.de; dkim=pass (4096-bit key) header.d=alien8.de header.i=@alien8.de header.b=VoluV0PU; arc=none smtp.client-ip=65.109.113.108 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=alien8.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=alien8.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (4096-bit key) header.d=alien8.de header.i=@alien8.de header.b="VoluV0PU" Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTP id 2CDBC40E0198; Tue, 18 Aug 2026 18:47:49 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at mail.alien8.de Authentication-Results: mail.alien8.de (amavisd-new); dkim=pass (4096-bit key) header.d=alien8.de Received: from mail.alien8.de ([127.0.0.1]) by localhost (mail.alien8.de [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id QotR4xqvUHsR; Tue, 18 Aug 2026 18:47:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=alien8; t=1787078859; bh=zJx7pIUK9ZtKAnejoAlACQaPl/BMP2+KTmFkNuwktEI=; h=Date:From:To:Cc:Subject:From; b=VoluV0PUJNDJR8ZsF9iZVrZDcL/OsK70iRvc8eTDJwpZ5yQfzn6YO5eGEDNIsXcOc pJWHXD0MlyY31C5QMMNMAgeuDylS5xBHhpg3u6EwInBj4X/8aa3g5SsHJ2ELXtCwVD wPn1jLMBUIRiBJ3drVoGsLe8lngmS3ZFIfz5gOQHWed5qrTubLiky7Nn0nKud5S/L4 mpHK+5j9U1dsTy3lHt8V4ZRjMNCdAeDNdWXngHtHxq/zrBxngIP95pl9HwDbklLa2U XHcOzy2iLV3bWHLbprEMjk8EySTmOuvMNH9cqmrmZxhynrw67HTVXHS6XWh6EikYdd qZpEmAOUbHMwvw5qxct82EuzxLo/rXczJZp4guoX7fZkGOrnTwG1JIhi8zi9r4unqW tyE5AEftIVdlSp2P1jP2PZIT5ivGo3DXgL8fWeznHCrEwQqybL4x/+RnEtK8pW4apS 6myItJIm4Xsds4n89qo7YVai2ZzRKg1ml314yZeoUZxC2eYVM/Lek7Sz6XWVjfZtVz 9KLjxIvHFNaxSYZiPqlCzu2KWr+1YutVgKVpDHNA0wDxmyyusL+CQRMjWLxjjp2xoM ycwPZDKFkhTFReGyaO/I7OEIYQNfqVKYS2c73mZl3VVctQMX/wE2F6Fxtdt8zGukBG BSUMjsi6F1zDqCKGmX/zxi0A= Received: from stx.tnic (unknown [IPv6:2600:1700:38ca:c00::1b]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 966C440E02D8; Tue, 18 Aug 2026 18:47:35 +0000 (UTC) Date: Tue, 18 Aug 2026 11:47:31 -0700 From: Borislav Petkov To: Linus Torvalds Cc: x86-ml , lkml Subject: [GIT PULL] x86/cpu for v7.3-rc1 Message-ID: <20260818184731.GAaoSowwiqocEIYxZo@fat_crate.local> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Hi Linus, please pull the x86/cpu lineup for v7.3-rc1. This is conflicting with other work from tip, see end of mail for possible resolution. Thx. --- The following changes since commit 8cdeaa50eae8dad34885515f62559ee83e7e8dda: Linux 7.2-rc2 (2026-07-05 14:44:06 -1000) are available in the Git repository at: ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/tip/tip.git tags/x= 86_cpu_for_v7.3_rc1 for you to fetch changes up to 6cc3a72caa6eb118c38f887d4608b9adb80e90e8: x86/CPU: Rename struct cpuid_read_output to struct cpuid_output (2026-08-= 05 07:40:33 -0700) ---------------------------------------------------------------- - Get rid of static_cpu_has() - one less API to care about testing CPU features - Unify the handling of CPU core types (performance, efficient, etc) by mapping the vendor-specific types to Linux ones - Continuation of the work of Ahmed Darwish to centralize CPUID leafs representation ---------------------------------------------------------------- Ahmed S. Darwish (4): x86/cpu/transmeta: Rescan CPUID(0x1) after modifying capabilities x86/cpu: Use parsed CPUID(0x0) x86/lib: Add CPUID(0x1) family and model calculation x86/cpu: Use parsed CPUID(0x1) Borislav Petkov (AMD) (4): x86/cpu: Hide and rename static_cpu_has() x86/topo: Map vendor CPU types to generic Linux such types x86/cpu/scattered: Sort it properly x86/CPU: Rename struct cpuid_read_output to struct cpuid_output Pawan Gupta (1): x86/bugs: Don't use cpu-type matching in cpu_vuln_blacklist Vishal Badole (2): x86/topology: Name the AMD core-type values x86/topology: Add TOPO_CPU_TYPE_LOW_POWER arch/um/include/asm/cpufeature.h | 16 ++---- arch/x86/events/amd/core.c | 2 +- arch/x86/events/intel/core.c | 2 +- arch/x86/events/intel/lbr.c | 26 +++++----- arch/x86/events/perf_event.h | 2 +- arch/x86/include/asm/archrandom.h | 4 +- arch/x86/include/asm/cpu.h | 6 +++ arch/x86/include/asm/cpufeature.h | 10 ++-- arch/x86/include/asm/debugreg.h | 2 +- arch/x86/include/asm/pgtable.h | 4 +- arch/x86/include/asm/processor.h | 19 +++++-- arch/x86/include/asm/sync_core.h | 4 +- arch/x86/include/asm/topology.h | 9 ++-- arch/x86/kernel/acpi/cppc.c | 7 +-- arch/x86/kernel/apic/apic_numachip.c | 2 +- arch/x86/kernel/cpu/bugs.c | 10 ++-- arch/x86/kernel/cpu/cacheinfo.c | 2 +- arch/x86/kernel/cpu/common.c | 58 +++++++++++++-----= ---- arch/x86/kernel/cpu/cpuid_parser.c | 42 +++++++--------- arch/x86/kernel/cpu/cpuid_parser.h | 20 ++++---- arch/x86/kernel/cpu/match.c | 30 +---------- arch/x86/kernel/cpu/scattered.c | 4 +- arch/x86/kernel/cpu/topology.h | 1 + arch/x86/kernel/cpu/topology_amd.c | 6 ++- arch/x86/kernel/cpu/topology_common.c | 15 ++++-- arch/x86/kernel/cpu/transmeta.c | 1 + arch/x86/kernel/fpu/core.c | 2 +- arch/x86/kernel/fpu/signal.c | 2 +- arch/x86/kernel/kprobes/opt.c | 2 +- arch/x86/kernel/ldt.c | 2 +- arch/x86/kernel/process.c | 10 ++-- arch/x86/kernel/process_64.c | 6 +-- arch/x86/kernel/signal_32.c | 2 +- arch/x86/kernel/time.c | 2 +- arch/x86/kernel/vmlinux.lds.S | 2 +- arch/x86/kvm/cpuid.c | 4 +- arch/x86/kvm/svm/svm.c | 22 ++++---- arch/x86/kvm/vmx/vmx.c | 6 +-- arch/x86/kvm/x86.c | 6 +-- arch/x86/kvm/xen.c | 2 +- arch/x86/lib/copy_mc.c | 4 +- arch/x86/lib/cpu.c | 45 +++++++++++------ arch/x86/lib/usercopy_32.c | 2 +- arch/x86/mm/extable.c | 2 +- arch/x86/mm/pat/set_memory.c | 2 +- arch/x86/mm/tlb.c | 14 +++--- drivers/firewire/ohci.c | 2 +- drivers/gpu/drm/drm_cache.c | 8 +-- drivers/gpu/drm/i915/gem/i915_gem_domain.c | 4 +- drivers/gpu/drm/i915/i915_memcpy.c | 2 +- drivers/md/dm-writecache.c | 2 +- .../x86/intel/speed_select_if/isst_tpmi_core.c | 2 +- drivers/thermal/intel/therm_throt.c | 2 +- 53 files changed, 238 insertions(+), 227 deletions(-) Conflicts: arch/x86/events/intel/lbr.c This one ends up becoming: diff --git a/arch/x86/events/intel/lbr.c b/arch/x86/events/intel/lbr.c index cae2e02fe6cc..688d1dfacbb1 100644 --- a/arch/x86/events/intel/lbr.c +++ b/arch/x86/events/intel/lbr.c @@ -1232,7 +1232,7 @@ intel_pmu_lbr_filter(struct cpu_hw_events *cpuc) * Doesn't support OTHER_BRANCH decoding for now. * OTHER_BRANCH branch type still rely on software decoding. */ - if (static_cpu_has(X86_FEATURE_ARCH_LBR) && + if (static_branch_likely(&x86_lbr_type) && type <=3D ARCH_LBR_BR_TYPE_KNOWN_MAX) { to_plm =3D kernel_ip(to) ? X86_BR_KERNEL : X86_BR_U= SER; type =3D arch_lbr_br_type_map[type] | to_plm; because it removes the static_cpu_has() which a patch from this pile change= s. arch/x86/kernel/cpu/transmeta.c This one needs to merge the changes from both branches: diff --cc arch/x86/kernel/cpu/transmeta.c index c670fbb6ee50,d9e0edb379b8..3e04b5d01bf8 --- a/arch/x86/kernel/cpu/transmeta.c +++ b/arch/x86/kernel/cpu/transmeta.c @@@ -87,10 -86,11 +87,11 @@@ static void init_transmeta(struct cpuin } =20 /* Unhide possibly hidden capability flags */ - rdmsr(0x80860004, cap_mask, uk); - wrmsr(0x80860004, ~0, uk); + rdmsrq(0x80860004, msr); + wrmsrq(0x80860004, msr | ~0U); + cpuid_refresh_leaf(c, 0x1); c->x86_capability[CPUID_1_EDX] =3D cpuid_edx(0x00000001); - wrmsr(0x80860004, cap_mask, uk); + wrmsrq(0x80860004, msr); =20 /* All Transmeta CPUs have a constant TSC */ set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC); HTH. --=20 Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette