All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev,
	Nuno Das Neves <nunodasneves@linux.microsoft.com>,
	Wei Liu <wei.liu@kernel.org>,
	Michael Kelley <mhklinux@outlook.com>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.6 099/254] hyperv-tlfs: Change prefix of generic HV_REGISTER_* MSRs to HV_MSR_*
Date: Wed, 28 Jan 2026 16:21:15 +0100	[thread overview]
Message-ID: <20260128145348.388896193@linuxfoundation.org> (raw)
In-Reply-To: <20260128145344.698118637@linuxfoundation.org>

6.6-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Nuno Das Neves <nunodasneves@linux.microsoft.com>

[ Upstream commit 0e3f7d120086c8b9d6e1ae0dd4917fc529daa1ca ]

The HV_REGISTER_ are used as arguments to hv_set/get_register(), which
delegate to arch-specific mechanisms for getting/setting synthetic
Hyper-V MSRs.

On arm64, HV_REGISTER_ defines are synthetic VP registers accessed via
the get/set vp registers hypercalls. The naming matches the TLFS
document, although these register names are not specific to arm64.

However, on x86 the prefix HV_REGISTER_ indicates Hyper-V MSRs accessed
via rdmsrl()/wrmsrl(). This is not consistent with the TLFS doc, where
HV_REGISTER_ is *only* used for used for VP register names used by
the get/set register hypercalls.

To fix this inconsistency and prevent future confusion, change the
arch-generic aliases used by callers of hv_set/get_register() to have
the prefix HV_MSR_ instead of HV_REGISTER_.

Use the prefix HV_X64_MSR_ for the x86-only Hyper-V MSRs. On x86, the
generic HV_MSR_'s point to the corresponding HV_X64_MSR_.

Move the arm64 HV_REGISTER_* defines to the asm-generic hyperv-tlfs.h,
since these are not specific to arm64. On arm64, the generic HV_MSR_'s
point to the corresponding HV_REGISTER_.

While at it, rename hv_get/set_registers() and related functions to
hv_get/set_msr(), hv_get/set_nested_msr(), etc. These are only used for
Hyper-V MSRs and this naming makes that clear.

Signed-off-by: Nuno Das Neves <nunodasneves@linux.microsoft.com>
Reviewed-by: Wei Liu <wei.liu@kernel.org>
Reviewed-by: Michael Kelley <mhklinux@outlook.com>
Link: https://lore.kernel.org/r/1708440933-27125-1-git-send-email-nunodasneves@linux.microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Message-ID: <1708440933-27125-1-git-send-email-nunodasneves@linux.microsoft.com>
Stable-dep-of: 49f49d47af67 ("Drivers: hv: Always do Hyper-V panic notification in hv_kmsg_dump()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 arch/arm64/include/asm/hyperv-tlfs.h |  45 ++++-----
 arch/arm64/include/asm/mshyperv.h    |   4 +-
 arch/x86/hyperv/hv_init.c            |   8 +-
 arch/x86/include/asm/hyperv-tlfs.h   | 145 ++++++++++++++-------------
 arch/x86/include/asm/mshyperv.h      |  30 +++---
 arch/x86/kernel/cpu/mshyperv.c       |  56 +++++------
 drivers/clocksource/hyperv_timer.c   |  26 ++---
 drivers/hv/hv.c                      |  36 +++----
 drivers/hv/hv_common.c               |  22 ++--
 include/asm-generic/hyperv-tlfs.h    |  32 +++++-
 include/asm-generic/mshyperv.h       |   2 +-
 11 files changed, 216 insertions(+), 190 deletions(-)

diff --git a/arch/arm64/include/asm/hyperv-tlfs.h b/arch/arm64/include/asm/hyperv-tlfs.h
index bc6c7ac934a1a..54846d1d29c36 100644
--- a/arch/arm64/include/asm/hyperv-tlfs.h
+++ b/arch/arm64/include/asm/hyperv-tlfs.h
@@ -21,14 +21,6 @@
  * byte ordering of Linux running on ARM64, so no special handling is required.
  */
 
-/*
- * These Hyper-V registers provide information equivalent to the CPUID
- * instruction on x86/x64.
- */
-#define HV_REGISTER_HYPERVISOR_VERSION		0x00000100 /*CPUID 0x40000002 */
-#define HV_REGISTER_FEATURES			0x00000200 /*CPUID 0x40000003 */
-#define HV_REGISTER_ENLIGHTENMENTS		0x00000201 /*CPUID 0x40000004 */
-
 /*
  * Group C Features. See the asm-generic version of hyperv-tlfs.h
  * for a description of Feature Groups.
@@ -41,28 +33,29 @@
 #define HV_STIMER_DIRECT_MODE_AVAILABLE		BIT(13)
 
 /*
- * Synthetic register definitions equivalent to MSRs on x86/x64
+ * To support arch-generic code calling hv_set/get_register:
+ * - On x86, HV_MSR_ indicates an MSR accessed via rdmsrl/wrmsrl
+ * - On ARM, HV_MSR_ indicates a VP register accessed via hypercall
  */
-#define HV_REGISTER_CRASH_P0		0x00000210
-#define HV_REGISTER_CRASH_P1		0x00000211
-#define HV_REGISTER_CRASH_P2		0x00000212
-#define HV_REGISTER_CRASH_P3		0x00000213
-#define HV_REGISTER_CRASH_P4		0x00000214
-#define HV_REGISTER_CRASH_CTL		0x00000215
+#define HV_MSR_CRASH_P0		(HV_REGISTER_CRASH_P0)
+#define HV_MSR_CRASH_P1		(HV_REGISTER_CRASH_P1)
+#define HV_MSR_CRASH_P2		(HV_REGISTER_CRASH_P2)
+#define HV_MSR_CRASH_P3		(HV_REGISTER_CRASH_P3)
+#define HV_MSR_CRASH_P4		(HV_REGISTER_CRASH_P4)
+#define HV_MSR_CRASH_CTL	(HV_REGISTER_CRASH_CTL)
 
-#define HV_REGISTER_GUEST_OSID		0x00090002
-#define HV_REGISTER_VP_INDEX		0x00090003
-#define HV_REGISTER_TIME_REF_COUNT	0x00090004
-#define HV_REGISTER_REFERENCE_TSC	0x00090017
+#define HV_MSR_VP_INDEX		(HV_REGISTER_VP_INDEX)
+#define HV_MSR_TIME_REF_COUNT	(HV_REGISTER_TIME_REF_COUNT)
+#define HV_MSR_REFERENCE_TSC	(HV_REGISTER_REFERENCE_TSC)
 
-#define HV_REGISTER_SINT0		0x000A0000
-#define HV_REGISTER_SCONTROL		0x000A0010
-#define HV_REGISTER_SIEFP		0x000A0012
-#define HV_REGISTER_SIMP		0x000A0013
-#define HV_REGISTER_EOM			0x000A0014
+#define HV_MSR_SINT0		(HV_REGISTER_SINT0)
+#define HV_MSR_SCONTROL		(HV_REGISTER_SCONTROL)
+#define HV_MSR_SIEFP		(HV_REGISTER_SIEFP)
+#define HV_MSR_SIMP		(HV_REGISTER_SIMP)
+#define HV_MSR_EOM		(HV_REGISTER_EOM)
 
-#define HV_REGISTER_STIMER0_CONFIG	0x000B0000
-#define HV_REGISTER_STIMER0_COUNT	0x000B0001
+#define HV_MSR_STIMER0_CONFIG	(HV_REGISTER_STIMER0_CONFIG)
+#define HV_MSR_STIMER0_COUNT	(HV_REGISTER_STIMER0_COUNT)
 
 union hv_msi_entry {
 	u64 as_uint64[2];
diff --git a/arch/arm64/include/asm/mshyperv.h b/arch/arm64/include/asm/mshyperv.h
index 20070a847304c..a975e1a689ddb 100644
--- a/arch/arm64/include/asm/mshyperv.h
+++ b/arch/arm64/include/asm/mshyperv.h
@@ -31,12 +31,12 @@ void hv_set_vpreg(u32 reg, u64 value);
 u64 hv_get_vpreg(u32 reg);
 void hv_get_vpreg_128(u32 reg, struct hv_get_vp_registers_output *result);
 
-static inline void hv_set_register(unsigned int reg, u64 value)
+static inline void hv_set_msr(unsigned int reg, u64 value)
 {
 	hv_set_vpreg(reg, value);
 }
 
-static inline u64 hv_get_register(unsigned int reg)
+static inline u64 hv_get_msr(unsigned int reg)
 {
 	return hv_get_vpreg(reg);
 }
diff --git a/arch/x86/hyperv/hv_init.c b/arch/x86/hyperv/hv_init.c
index d1e2d12279e26..95eada2994e15 100644
--- a/arch/x86/hyperv/hv_init.c
+++ b/arch/x86/hyperv/hv_init.c
@@ -664,14 +664,14 @@ void hyperv_cleanup(void)
 	hv_hypercall_pg = NULL;
 
 	/* Reset the hypercall page */
-	hypercall_msr.as_uint64 = hv_get_register(HV_X64_MSR_HYPERCALL);
+	hypercall_msr.as_uint64 = hv_get_msr(HV_X64_MSR_HYPERCALL);
 	hypercall_msr.enable = 0;
-	hv_set_register(HV_X64_MSR_HYPERCALL, hypercall_msr.as_uint64);
+	hv_set_msr(HV_X64_MSR_HYPERCALL, hypercall_msr.as_uint64);
 
 	/* Reset the TSC page */
-	tsc_msr.as_uint64 = hv_get_register(HV_X64_MSR_REFERENCE_TSC);
+	tsc_msr.as_uint64 = hv_get_msr(HV_X64_MSR_REFERENCE_TSC);
 	tsc_msr.enable = 0;
-	hv_set_register(HV_X64_MSR_REFERENCE_TSC, tsc_msr.as_uint64);
+	hv_set_msr(HV_X64_MSR_REFERENCE_TSC, tsc_msr.as_uint64);
 }
 
 void hyperv_report_panic(struct pt_regs *regs, long err, bool in_die)
diff --git a/arch/x86/include/asm/hyperv-tlfs.h b/arch/x86/include/asm/hyperv-tlfs.h
index 2ff26f53cd624..3787d26810c1c 100644
--- a/arch/x86/include/asm/hyperv-tlfs.h
+++ b/arch/x86/include/asm/hyperv-tlfs.h
@@ -182,7 +182,7 @@ enum hv_isolation_type {
 #define HV_X64_MSR_HYPERCALL			0x40000001
 
 /* MSR used to provide vcpu index */
-#define HV_REGISTER_VP_INDEX			0x40000002
+#define HV_X64_MSR_VP_INDEX			0x40000002
 
 /* MSR used to reset the guest OS. */
 #define HV_X64_MSR_RESET			0x40000003
@@ -191,10 +191,10 @@ enum hv_isolation_type {
 #define HV_X64_MSR_VP_RUNTIME			0x40000010
 
 /* MSR used to read the per-partition time reference counter */
-#define HV_REGISTER_TIME_REF_COUNT		0x40000020
+#define HV_X64_MSR_TIME_REF_COUNT		0x40000020
 
 /* A partition's reference time stamp counter (TSC) page */
-#define HV_REGISTER_REFERENCE_TSC		0x40000021
+#define HV_X64_MSR_REFERENCE_TSC		0x40000021
 
 /* MSR used to retrieve the TSC frequency */
 #define HV_X64_MSR_TSC_FREQUENCY		0x40000022
@@ -209,61 +209,61 @@ enum hv_isolation_type {
 #define HV_X64_MSR_VP_ASSIST_PAGE		0x40000073
 
 /* Define synthetic interrupt controller model specific registers. */
-#define HV_REGISTER_SCONTROL			0x40000080
-#define HV_REGISTER_SVERSION			0x40000081
-#define HV_REGISTER_SIEFP			0x40000082
-#define HV_REGISTER_SIMP			0x40000083
-#define HV_REGISTER_EOM				0x40000084
-#define HV_REGISTER_SINT0			0x40000090
-#define HV_REGISTER_SINT1			0x40000091
-#define HV_REGISTER_SINT2			0x40000092
-#define HV_REGISTER_SINT3			0x40000093
-#define HV_REGISTER_SINT4			0x40000094
-#define HV_REGISTER_SINT5			0x40000095
-#define HV_REGISTER_SINT6			0x40000096
-#define HV_REGISTER_SINT7			0x40000097
-#define HV_REGISTER_SINT8			0x40000098
-#define HV_REGISTER_SINT9			0x40000099
-#define HV_REGISTER_SINT10			0x4000009A
-#define HV_REGISTER_SINT11			0x4000009B
-#define HV_REGISTER_SINT12			0x4000009C
-#define HV_REGISTER_SINT13			0x4000009D
-#define HV_REGISTER_SINT14			0x4000009E
-#define HV_REGISTER_SINT15			0x4000009F
+#define HV_X64_MSR_SCONTROL			0x40000080
+#define HV_X64_MSR_SVERSION			0x40000081
+#define HV_X64_MSR_SIEFP			0x40000082
+#define HV_X64_MSR_SIMP				0x40000083
+#define HV_X64_MSR_EOM				0x40000084
+#define HV_X64_MSR_SINT0			0x40000090
+#define HV_X64_MSR_SINT1			0x40000091
+#define HV_X64_MSR_SINT2			0x40000092
+#define HV_X64_MSR_SINT3			0x40000093
+#define HV_X64_MSR_SINT4			0x40000094
+#define HV_X64_MSR_SINT5			0x40000095
+#define HV_X64_MSR_SINT6			0x40000096
+#define HV_X64_MSR_SINT7			0x40000097
+#define HV_X64_MSR_SINT8			0x40000098
+#define HV_X64_MSR_SINT9			0x40000099
+#define HV_X64_MSR_SINT10			0x4000009A
+#define HV_X64_MSR_SINT11			0x4000009B
+#define HV_X64_MSR_SINT12			0x4000009C
+#define HV_X64_MSR_SINT13			0x4000009D
+#define HV_X64_MSR_SINT14			0x4000009E
+#define HV_X64_MSR_SINT15			0x4000009F
 
 /*
  * Define synthetic interrupt controller model specific registers for
  * nested hypervisor.
  */
-#define HV_REGISTER_NESTED_SCONTROL            0x40001080
-#define HV_REGISTER_NESTED_SVERSION            0x40001081
-#define HV_REGISTER_NESTED_SIEFP               0x40001082
-#define HV_REGISTER_NESTED_SIMP                0x40001083
-#define HV_REGISTER_NESTED_EOM                 0x40001084
-#define HV_REGISTER_NESTED_SINT0               0x40001090
+#define HV_X64_MSR_NESTED_SCONTROL		0x40001080
+#define HV_X64_MSR_NESTED_SVERSION		0x40001081
+#define HV_X64_MSR_NESTED_SIEFP			0x40001082
+#define HV_X64_MSR_NESTED_SIMP			0x40001083
+#define HV_X64_MSR_NESTED_EOM			0x40001084
+#define HV_X64_MSR_NESTED_SINT0			0x40001090
 
 /*
  * Synthetic Timer MSRs. Four timers per vcpu.
  */
-#define HV_REGISTER_STIMER0_CONFIG		0x400000B0
-#define HV_REGISTER_STIMER0_COUNT		0x400000B1
-#define HV_REGISTER_STIMER1_CONFIG		0x400000B2
-#define HV_REGISTER_STIMER1_COUNT		0x400000B3
-#define HV_REGISTER_STIMER2_CONFIG		0x400000B4
-#define HV_REGISTER_STIMER2_COUNT		0x400000B5
-#define HV_REGISTER_STIMER3_CONFIG		0x400000B6
-#define HV_REGISTER_STIMER3_COUNT		0x400000B7
+#define HV_X64_MSR_STIMER0_CONFIG		0x400000B0
+#define HV_X64_MSR_STIMER0_COUNT		0x400000B1
+#define HV_X64_MSR_STIMER1_CONFIG		0x400000B2
+#define HV_X64_MSR_STIMER1_COUNT		0x400000B3
+#define HV_X64_MSR_STIMER2_CONFIG		0x400000B4
+#define HV_X64_MSR_STIMER2_COUNT		0x400000B5
+#define HV_X64_MSR_STIMER3_CONFIG		0x400000B6
+#define HV_X64_MSR_STIMER3_COUNT		0x400000B7
 
 /* Hyper-V guest idle MSR */
 #define HV_X64_MSR_GUEST_IDLE			0x400000F0
 
 /* Hyper-V guest crash notification MSR's */
-#define HV_REGISTER_CRASH_P0			0x40000100
-#define HV_REGISTER_CRASH_P1			0x40000101
-#define HV_REGISTER_CRASH_P2			0x40000102
-#define HV_REGISTER_CRASH_P3			0x40000103
-#define HV_REGISTER_CRASH_P4			0x40000104
-#define HV_REGISTER_CRASH_CTL			0x40000105
+#define HV_X64_MSR_CRASH_P0			0x40000100
+#define HV_X64_MSR_CRASH_P1			0x40000101
+#define HV_X64_MSR_CRASH_P2			0x40000102
+#define HV_X64_MSR_CRASH_P3			0x40000103
+#define HV_X64_MSR_CRASH_P4			0x40000104
+#define HV_X64_MSR_CRASH_CTL			0x40000105
 
 /* TSC emulation after migration */
 #define HV_X64_MSR_REENLIGHTENMENT_CONTROL	0x40000106
@@ -276,31 +276,38 @@ enum hv_isolation_type {
 /* HV_X64_MSR_TSC_INVARIANT_CONTROL bits */
 #define HV_EXPOSE_INVARIANT_TSC		BIT_ULL(0)
 
-/* Register name aliases for temporary compatibility */
-#define HV_X64_MSR_STIMER0_COUNT	HV_REGISTER_STIMER0_COUNT
-#define HV_X64_MSR_STIMER0_CONFIG	HV_REGISTER_STIMER0_CONFIG
-#define HV_X64_MSR_STIMER1_COUNT	HV_REGISTER_STIMER1_COUNT
-#define HV_X64_MSR_STIMER1_CONFIG	HV_REGISTER_STIMER1_CONFIG
-#define HV_X64_MSR_STIMER2_COUNT	HV_REGISTER_STIMER2_COUNT
-#define HV_X64_MSR_STIMER2_CONFIG	HV_REGISTER_STIMER2_CONFIG
-#define HV_X64_MSR_STIMER3_COUNT	HV_REGISTER_STIMER3_COUNT
-#define HV_X64_MSR_STIMER3_CONFIG	HV_REGISTER_STIMER3_CONFIG
-#define HV_X64_MSR_SCONTROL		HV_REGISTER_SCONTROL
-#define HV_X64_MSR_SVERSION		HV_REGISTER_SVERSION
-#define HV_X64_MSR_SIMP			HV_REGISTER_SIMP
-#define HV_X64_MSR_SIEFP		HV_REGISTER_SIEFP
-#define HV_X64_MSR_VP_INDEX		HV_REGISTER_VP_INDEX
-#define HV_X64_MSR_EOM			HV_REGISTER_EOM
-#define HV_X64_MSR_SINT0		HV_REGISTER_SINT0
-#define HV_X64_MSR_SINT15		HV_REGISTER_SINT15
-#define HV_X64_MSR_CRASH_P0		HV_REGISTER_CRASH_P0
-#define HV_X64_MSR_CRASH_P1		HV_REGISTER_CRASH_P1
-#define HV_X64_MSR_CRASH_P2		HV_REGISTER_CRASH_P2
-#define HV_X64_MSR_CRASH_P3		HV_REGISTER_CRASH_P3
-#define HV_X64_MSR_CRASH_P4		HV_REGISTER_CRASH_P4
-#define HV_X64_MSR_CRASH_CTL		HV_REGISTER_CRASH_CTL
-#define HV_X64_MSR_TIME_REF_COUNT	HV_REGISTER_TIME_REF_COUNT
-#define HV_X64_MSR_REFERENCE_TSC	HV_REGISTER_REFERENCE_TSC
+/*
+ * To support arch-generic code calling hv_set/get_register:
+ * - On x86, HV_MSR_ indicates an MSR accessed via rdmsrl/wrmsrl
+ * - On ARM, HV_MSR_ indicates a VP register accessed via hypercall
+ */
+#define HV_MSR_CRASH_P0		(HV_X64_MSR_CRASH_P0)
+#define HV_MSR_CRASH_P1		(HV_X64_MSR_CRASH_P1)
+#define HV_MSR_CRASH_P2		(HV_X64_MSR_CRASH_P2)
+#define HV_MSR_CRASH_P3		(HV_X64_MSR_CRASH_P3)
+#define HV_MSR_CRASH_P4		(HV_X64_MSR_CRASH_P4)
+#define HV_MSR_CRASH_CTL	(HV_X64_MSR_CRASH_CTL)
+
+#define HV_MSR_VP_INDEX		(HV_X64_MSR_VP_INDEX)
+#define HV_MSR_TIME_REF_COUNT	(HV_X64_MSR_TIME_REF_COUNT)
+#define HV_MSR_REFERENCE_TSC	(HV_X64_MSR_REFERENCE_TSC)
+
+#define HV_MSR_SINT0		(HV_X64_MSR_SINT0)
+#define HV_MSR_SVERSION		(HV_X64_MSR_SVERSION)
+#define HV_MSR_SCONTROL		(HV_X64_MSR_SCONTROL)
+#define HV_MSR_SIEFP		(HV_X64_MSR_SIEFP)
+#define HV_MSR_SIMP		(HV_X64_MSR_SIMP)
+#define HV_MSR_EOM		(HV_X64_MSR_EOM)
+
+#define HV_MSR_NESTED_SCONTROL	(HV_X64_MSR_NESTED_SCONTROL)
+#define HV_MSR_NESTED_SVERSION	(HV_X64_MSR_NESTED_SVERSION)
+#define HV_MSR_NESTED_SIEFP	(HV_X64_MSR_NESTED_SIEFP)
+#define HV_MSR_NESTED_SIMP	(HV_X64_MSR_NESTED_SIMP)
+#define HV_MSR_NESTED_EOM	(HV_X64_MSR_NESTED_EOM)
+#define HV_MSR_NESTED_SINT0	(HV_X64_MSR_NESTED_SINT0)
+
+#define HV_MSR_STIMER0_CONFIG	(HV_X64_MSR_STIMER0_CONFIG)
+#define HV_MSR_STIMER0_COUNT	(HV_X64_MSR_STIMER0_COUNT)
 
 /*
  * Registers are only accessible via HVCALL_GET_VP_REGISTERS hvcall and
diff --git a/arch/x86/include/asm/mshyperv.h b/arch/x86/include/asm/mshyperv.h
index ec95d6e9f1682..aa76687ce520c 100644
--- a/arch/x86/include/asm/mshyperv.h
+++ b/arch/x86/include/asm/mshyperv.h
@@ -292,24 +292,24 @@ static inline void hv_ivm_msr_write(u64 msr, u64 value) {}
 static inline void hv_ivm_msr_read(u64 msr, u64 *value) {}
 #endif
 
-static inline bool hv_is_synic_reg(unsigned int reg)
+static inline bool hv_is_synic_msr(unsigned int reg)
 {
-	return (reg >= HV_REGISTER_SCONTROL) &&
-	       (reg <= HV_REGISTER_SINT15);
+	return (reg >= HV_X64_MSR_SCONTROL) &&
+	       (reg <= HV_X64_MSR_SINT15);
 }
 
-static inline bool hv_is_sint_reg(unsigned int reg)
+static inline bool hv_is_sint_msr(unsigned int reg)
 {
-	return (reg >= HV_REGISTER_SINT0) &&
-	       (reg <= HV_REGISTER_SINT15);
+	return (reg >= HV_X64_MSR_SINT0) &&
+	       (reg <= HV_X64_MSR_SINT15);
 }
 
-u64 hv_get_register(unsigned int reg);
-void hv_set_register(unsigned int reg, u64 value);
-u64 hv_get_non_nested_register(unsigned int reg);
-void hv_set_non_nested_register(unsigned int reg, u64 value);
+u64 hv_get_msr(unsigned int reg);
+void hv_set_msr(unsigned int reg, u64 value);
+u64 hv_get_non_nested_msr(unsigned int reg);
+void hv_set_non_nested_msr(unsigned int reg, u64 value);
 
-static __always_inline u64 hv_raw_get_register(unsigned int reg)
+static __always_inline u64 hv_raw_get_msr(unsigned int reg)
 {
 	return __rdmsr(reg);
 }
@@ -330,10 +330,10 @@ static inline int hyperv_flush_guest_mapping_range(u64 as,
 {
 	return -1;
 }
-static inline void hv_set_register(unsigned int reg, u64 value) { }
-static inline u64 hv_get_register(unsigned int reg) { return 0; }
-static inline void hv_set_non_nested_register(unsigned int reg, u64 value) { }
-static inline u64 hv_get_non_nested_register(unsigned int reg) { return 0; }
+static inline void hv_set_msr(unsigned int reg, u64 value) { }
+static inline u64 hv_get_msr(unsigned int reg) { return 0; }
+static inline void hv_set_non_nested_msr(unsigned int reg, u64 value) { }
+static inline u64 hv_get_non_nested_msr(unsigned int reg) { return 0; }
 #endif /* CONFIG_HYPERV */
 
 
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index e709070eed708..fc692125d82f3 100644
--- a/arch/x86/kernel/cpu/mshyperv.c
+++ b/arch/x86/kernel/cpu/mshyperv.c
@@ -44,70 +44,70 @@ bool hyperv_paravisor_present __ro_after_init;
 EXPORT_SYMBOL_GPL(hyperv_paravisor_present);
 
 #if IS_ENABLED(CONFIG_HYPERV)
-static inline unsigned int hv_get_nested_reg(unsigned int reg)
+static inline unsigned int hv_get_nested_msr(unsigned int reg)
 {
-	if (hv_is_sint_reg(reg))
-		return reg - HV_REGISTER_SINT0 + HV_REGISTER_NESTED_SINT0;
+	if (hv_is_sint_msr(reg))
+		return reg - HV_X64_MSR_SINT0 + HV_X64_MSR_NESTED_SINT0;
 
 	switch (reg) {
-	case HV_REGISTER_SIMP:
-		return HV_REGISTER_NESTED_SIMP;
-	case HV_REGISTER_SIEFP:
-		return HV_REGISTER_NESTED_SIEFP;
-	case HV_REGISTER_SVERSION:
-		return HV_REGISTER_NESTED_SVERSION;
-	case HV_REGISTER_SCONTROL:
-		return HV_REGISTER_NESTED_SCONTROL;
-	case HV_REGISTER_EOM:
-		return HV_REGISTER_NESTED_EOM;
+	case HV_X64_MSR_SIMP:
+		return HV_X64_MSR_NESTED_SIMP;
+	case HV_X64_MSR_SIEFP:
+		return HV_X64_MSR_NESTED_SIEFP;
+	case HV_X64_MSR_SVERSION:
+		return HV_X64_MSR_NESTED_SVERSION;
+	case HV_X64_MSR_SCONTROL:
+		return HV_X64_MSR_NESTED_SCONTROL;
+	case HV_X64_MSR_EOM:
+		return HV_X64_MSR_NESTED_EOM;
 	default:
 		return reg;
 	}
 }
 
-u64 hv_get_non_nested_register(unsigned int reg)
+u64 hv_get_non_nested_msr(unsigned int reg)
 {
 	u64 value;
 
-	if (hv_is_synic_reg(reg) && ms_hyperv.paravisor_present)
+	if (hv_is_synic_msr(reg) && ms_hyperv.paravisor_present)
 		hv_ivm_msr_read(reg, &value);
 	else
 		rdmsrl(reg, value);
 	return value;
 }
-EXPORT_SYMBOL_GPL(hv_get_non_nested_register);
+EXPORT_SYMBOL_GPL(hv_get_non_nested_msr);
 
-void hv_set_non_nested_register(unsigned int reg, u64 value)
+void hv_set_non_nested_msr(unsigned int reg, u64 value)
 {
-	if (hv_is_synic_reg(reg) && ms_hyperv.paravisor_present) {
+	if (hv_is_synic_msr(reg) && ms_hyperv.paravisor_present) {
 		hv_ivm_msr_write(reg, value);
 
 		/* Write proxy bit via wrmsl instruction */
-		if (hv_is_sint_reg(reg))
+		if (hv_is_sint_msr(reg))
 			wrmsrl(reg, value | 1 << 20);
 	} else {
 		wrmsrl(reg, value);
 	}
 }
-EXPORT_SYMBOL_GPL(hv_set_non_nested_register);
+EXPORT_SYMBOL_GPL(hv_set_non_nested_msr);
 
-u64 hv_get_register(unsigned int reg)
+u64 hv_get_msr(unsigned int reg)
 {
 	if (hv_nested)
-		reg = hv_get_nested_reg(reg);
+		reg = hv_get_nested_msr(reg);
 
-	return hv_get_non_nested_register(reg);
+	return hv_get_non_nested_msr(reg);
 }
-EXPORT_SYMBOL_GPL(hv_get_register);
+EXPORT_SYMBOL_GPL(hv_get_msr);
 
-void hv_set_register(unsigned int reg, u64 value)
+void hv_set_msr(unsigned int reg, u64 value)
 {
 	if (hv_nested)
-		reg = hv_get_nested_reg(reg);
+		reg = hv_get_nested_msr(reg);
 
-	hv_set_non_nested_register(reg, value);
+	hv_set_non_nested_msr(reg, value);
 }
-EXPORT_SYMBOL_GPL(hv_set_register);
+EXPORT_SYMBOL_GPL(hv_set_msr);
 
 static void (*vmbus_handler)(void);
 static void (*hv_stimer0_handler)(void);
diff --git a/drivers/clocksource/hyperv_timer.c b/drivers/clocksource/hyperv_timer.c
index 5eec1457e1396..51ee0a7566812 100644
--- a/drivers/clocksource/hyperv_timer.c
+++ b/drivers/clocksource/hyperv_timer.c
@@ -82,14 +82,14 @@ static int hv_ce_set_next_event(unsigned long delta,
 
 	current_tick = hv_read_reference_counter();
 	current_tick += delta;
-	hv_set_register(HV_REGISTER_STIMER0_COUNT, current_tick);
+	hv_set_msr(HV_MSR_STIMER0_COUNT, current_tick);
 	return 0;
 }
 
 static int hv_ce_shutdown(struct clock_event_device *evt)
 {
-	hv_set_register(HV_REGISTER_STIMER0_COUNT, 0);
-	hv_set_register(HV_REGISTER_STIMER0_CONFIG, 0);
+	hv_set_msr(HV_MSR_STIMER0_COUNT, 0);
+	hv_set_msr(HV_MSR_STIMER0_CONFIG, 0);
 	if (direct_mode_enabled && stimer0_irq >= 0)
 		disable_percpu_irq(stimer0_irq);
 
@@ -120,7 +120,7 @@ static int hv_ce_set_oneshot(struct clock_event_device *evt)
 		timer_cfg.direct_mode = 0;
 		timer_cfg.sintx = stimer0_message_sint;
 	}
-	hv_set_register(HV_REGISTER_STIMER0_CONFIG, timer_cfg.as_uint64);
+	hv_set_msr(HV_MSR_STIMER0_CONFIG, timer_cfg.as_uint64);
 	return 0;
 }
 
@@ -373,11 +373,11 @@ static __always_inline u64 read_hv_clock_msr(void)
 	 * is set to 0 when the partition is created and is incremented in 100
 	 * nanosecond units.
 	 *
-	 * Use hv_raw_get_register() because this function is used from
-	 * noinstr. Notable; while HV_REGISTER_TIME_REF_COUNT is a synthetic
+	 * Use hv_raw_get_msr() because this function is used from
+	 * noinstr. Notable; while HV_MSR_TIME_REF_COUNT is a synthetic
 	 * register it doesn't need the GHCB path.
 	 */
-	return hv_raw_get_register(HV_REGISTER_TIME_REF_COUNT);
+	return hv_raw_get_msr(HV_MSR_TIME_REF_COUNT);
 }
 
 /*
@@ -440,9 +440,9 @@ static void suspend_hv_clock_tsc(struct clocksource *arg)
 	union hv_reference_tsc_msr tsc_msr;
 
 	/* Disable the TSC page */
-	tsc_msr.as_uint64 = hv_get_register(HV_REGISTER_REFERENCE_TSC);
+	tsc_msr.as_uint64 = hv_get_msr(HV_MSR_REFERENCE_TSC);
 	tsc_msr.enable = 0;
-	hv_set_register(HV_REGISTER_REFERENCE_TSC, tsc_msr.as_uint64);
+	hv_set_msr(HV_MSR_REFERENCE_TSC, tsc_msr.as_uint64);
 }
 
 
@@ -451,10 +451,10 @@ static void resume_hv_clock_tsc(struct clocksource *arg)
 	union hv_reference_tsc_msr tsc_msr;
 
 	/* Re-enable the TSC page */
-	tsc_msr.as_uint64 = hv_get_register(HV_REGISTER_REFERENCE_TSC);
+	tsc_msr.as_uint64 = hv_get_msr(HV_MSR_REFERENCE_TSC);
 	tsc_msr.enable = 1;
 	tsc_msr.pfn = tsc_pfn;
-	hv_set_register(HV_REGISTER_REFERENCE_TSC, tsc_msr.as_uint64);
+	hv_set_msr(HV_MSR_REFERENCE_TSC, tsc_msr.as_uint64);
 }
 
 /*
@@ -567,14 +567,14 @@ static void __init hv_init_tsc_clocksource(void)
 	 * thus TSC clocksource will work even without the real TSC page
 	 * mapped.
 	 */
-	tsc_msr.as_uint64 = hv_get_register(HV_REGISTER_REFERENCE_TSC);
+	tsc_msr.as_uint64 = hv_get_msr(HV_MSR_REFERENCE_TSC);
 	if (hv_root_partition)
 		tsc_pfn = tsc_msr.pfn;
 	else
 		tsc_pfn = HVPFN_DOWN(virt_to_phys(tsc_page));
 	tsc_msr.enable = 1;
 	tsc_msr.pfn = tsc_pfn;
-	hv_set_register(HV_REGISTER_REFERENCE_TSC, tsc_msr.as_uint64);
+	hv_set_msr(HV_MSR_REFERENCE_TSC, tsc_msr.as_uint64);
 
 	clocksource_register_hz(&hyperv_cs_tsc, NSEC_PER_SEC/100);
 
diff --git a/drivers/hv/hv.c b/drivers/hv/hv.c
index 51e5018ac9b26..a8ad728354cb0 100644
--- a/drivers/hv/hv.c
+++ b/drivers/hv/hv.c
@@ -270,7 +270,7 @@ void hv_synic_enable_regs(unsigned int cpu)
 	union hv_synic_scontrol sctrl;
 
 	/* Setup the Synic's message page */
-	simp.as_uint64 = hv_get_register(HV_REGISTER_SIMP);
+	simp.as_uint64 = hv_get_msr(HV_MSR_SIMP);
 	simp.simp_enabled = 1;
 
 	if (ms_hyperv.paravisor_present || hv_root_partition) {
@@ -286,10 +286,10 @@ void hv_synic_enable_regs(unsigned int cpu)
 			>> HV_HYP_PAGE_SHIFT;
 	}
 
-	hv_set_register(HV_REGISTER_SIMP, simp.as_uint64);
+	hv_set_msr(HV_MSR_SIMP, simp.as_uint64);
 
 	/* Setup the Synic's event page */
-	siefp.as_uint64 = hv_get_register(HV_REGISTER_SIEFP);
+	siefp.as_uint64 = hv_get_msr(HV_MSR_SIEFP);
 	siefp.siefp_enabled = 1;
 
 	if (ms_hyperv.paravisor_present || hv_root_partition) {
@@ -305,13 +305,12 @@ void hv_synic_enable_regs(unsigned int cpu)
 			>> HV_HYP_PAGE_SHIFT;
 	}
 
-	hv_set_register(HV_REGISTER_SIEFP, siefp.as_uint64);
+	hv_set_msr(HV_MSR_SIEFP, siefp.as_uint64);
 
 	/* Setup the shared SINT. */
 	if (vmbus_irq != -1)
 		enable_percpu_irq(vmbus_irq, 0);
-	shared_sint.as_uint64 = hv_get_register(HV_REGISTER_SINT0 +
-					VMBUS_MESSAGE_SINT);
+	shared_sint.as_uint64 = hv_get_msr(HV_MSR_SINT0 + VMBUS_MESSAGE_SINT);
 
 	shared_sint.vector = vmbus_interrupt;
 	shared_sint.masked = false;
@@ -326,14 +325,13 @@ void hv_synic_enable_regs(unsigned int cpu)
 #else
 	shared_sint.auto_eoi = 0;
 #endif
-	hv_set_register(HV_REGISTER_SINT0 + VMBUS_MESSAGE_SINT,
-				shared_sint.as_uint64);
+	hv_set_msr(HV_MSR_SINT0 + VMBUS_MESSAGE_SINT, shared_sint.as_uint64);
 
 	/* Enable the global synic bit */
-	sctrl.as_uint64 = hv_get_register(HV_REGISTER_SCONTROL);
+	sctrl.as_uint64 = hv_get_msr(HV_MSR_SCONTROL);
 	sctrl.enable = 1;
 
-	hv_set_register(HV_REGISTER_SCONTROL, sctrl.as_uint64);
+	hv_set_msr(HV_MSR_SCONTROL, sctrl.as_uint64);
 }
 
 int hv_synic_init(unsigned int cpu)
@@ -357,17 +355,15 @@ void hv_synic_disable_regs(unsigned int cpu)
 	union hv_synic_siefp siefp;
 	union hv_synic_scontrol sctrl;
 
-	shared_sint.as_uint64 = hv_get_register(HV_REGISTER_SINT0 +
-					VMBUS_MESSAGE_SINT);
+	shared_sint.as_uint64 = hv_get_msr(HV_MSR_SINT0 + VMBUS_MESSAGE_SINT);
 
 	shared_sint.masked = 1;
 
 	/* Need to correctly cleanup in the case of SMP!!! */
 	/* Disable the interrupt */
-	hv_set_register(HV_REGISTER_SINT0 + VMBUS_MESSAGE_SINT,
-				shared_sint.as_uint64);
+	hv_set_msr(HV_MSR_SINT0 + VMBUS_MESSAGE_SINT, shared_sint.as_uint64);
 
-	simp.as_uint64 = hv_get_register(HV_REGISTER_SIMP);
+	simp.as_uint64 = hv_get_msr(HV_MSR_SIMP);
 	/*
 	 * In Isolation VM, sim and sief pages are allocated by
 	 * paravisor. These pages also will be used by kdump
@@ -382,9 +378,9 @@ void hv_synic_disable_regs(unsigned int cpu)
 		simp.base_simp_gpa = 0;
 	}
 
-	hv_set_register(HV_REGISTER_SIMP, simp.as_uint64);
+	hv_set_msr(HV_MSR_SIMP, simp.as_uint64);
 
-	siefp.as_uint64 = hv_get_register(HV_REGISTER_SIEFP);
+	siefp.as_uint64 = hv_get_msr(HV_MSR_SIEFP);
 	siefp.siefp_enabled = 0;
 
 	if (ms_hyperv.paravisor_present || hv_root_partition) {
@@ -394,12 +390,12 @@ void hv_synic_disable_regs(unsigned int cpu)
 		siefp.base_siefp_gpa = 0;
 	}
 
-	hv_set_register(HV_REGISTER_SIEFP, siefp.as_uint64);
+	hv_set_msr(HV_MSR_SIEFP, siefp.as_uint64);
 
 	/* Disable the global synic bit */
-	sctrl.as_uint64 = hv_get_register(HV_REGISTER_SCONTROL);
+	sctrl.as_uint64 = hv_get_msr(HV_MSR_SCONTROL);
 	sctrl.enable = 0;
-	hv_set_register(HV_REGISTER_SCONTROL, sctrl.as_uint64);
+	hv_set_msr(HV_MSR_SCONTROL, sctrl.as_uint64);
 
 	if (vmbus_irq != -1)
 		disable_percpu_irq(vmbus_irq);
diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c
index ccad7bca3fd3d..65c0740484cb9 100644
--- a/drivers/hv/hv_common.c
+++ b/drivers/hv/hv_common.c
@@ -228,19 +228,19 @@ static void hv_kmsg_dump(struct kmsg_dumper *dumper,
 	 * contain the size of the panic data in that page. Rest of the
 	 * registers are no-op when the NOTIFY_MSG flag is set.
 	 */
-	hv_set_register(HV_REGISTER_CRASH_P0, 0);
-	hv_set_register(HV_REGISTER_CRASH_P1, 0);
-	hv_set_register(HV_REGISTER_CRASH_P2, 0);
-	hv_set_register(HV_REGISTER_CRASH_P3, virt_to_phys(hv_panic_page));
-	hv_set_register(HV_REGISTER_CRASH_P4, bytes_written);
+	hv_set_msr(HV_MSR_CRASH_P0, 0);
+	hv_set_msr(HV_MSR_CRASH_P1, 0);
+	hv_set_msr(HV_MSR_CRASH_P2, 0);
+	hv_set_msr(HV_MSR_CRASH_P3, virt_to_phys(hv_panic_page));
+	hv_set_msr(HV_MSR_CRASH_P4, bytes_written);
 
 	/*
 	 * Let Hyper-V know there is crash data available along with
 	 * the panic message.
 	 */
-	hv_set_register(HV_REGISTER_CRASH_CTL,
-			(HV_CRASH_CTL_CRASH_NOTIFY |
-			 HV_CRASH_CTL_CRASH_NOTIFY_MSG));
+	hv_set_msr(HV_MSR_CRASH_CTL,
+		   (HV_CRASH_CTL_CRASH_NOTIFY |
+		    HV_CRASH_CTL_CRASH_NOTIFY_MSG));
 }
 
 static struct kmsg_dumper hv_kmsg_dumper = {
@@ -311,7 +311,7 @@ int __init hv_common_init(void)
 		 * Register for panic kmsg callback only if the right
 		 * capability is supported by the hypervisor.
 		 */
-		hyperv_crash_ctl = hv_get_register(HV_REGISTER_CRASH_CTL);
+		hyperv_crash_ctl = hv_get_msr(HV_MSR_CRASH_CTL);
 		if (hyperv_crash_ctl & HV_CRASH_CTL_CRASH_NOTIFY_MSG)
 			hv_kmsg_dump_register();
 
@@ -410,7 +410,7 @@ int hv_common_cpu_init(unsigned int cpu)
 		*inputarg = mem;
 	}
 
-	msr_vp_index = hv_get_register(HV_REGISTER_VP_INDEX);
+	msr_vp_index = hv_get_msr(HV_MSR_VP_INDEX);
 
 	hv_vp_index[cpu] = msr_vp_index;
 
@@ -507,7 +507,7 @@ EXPORT_SYMBOL_GPL(hv_is_hibernation_supported);
  */
 static u64 __hv_read_ref_counter(void)
 {
-	return hv_get_register(HV_REGISTER_TIME_REF_COUNT);
+	return hv_get_msr(HV_MSR_TIME_REF_COUNT);
 }
 
 u64 (*hv_read_reference_counter)(void) = __hv_read_ref_counter;
diff --git a/include/asm-generic/hyperv-tlfs.h b/include/asm-generic/hyperv-tlfs.h
index fdac4a1714ec0..3d1b31f90ed60 100644
--- a/include/asm-generic/hyperv-tlfs.h
+++ b/include/asm-generic/hyperv-tlfs.h
@@ -625,6 +625,37 @@ struct hv_retarget_device_interrupt {
 	struct hv_device_interrupt_target int_target;
 } __packed __aligned(8);
 
+/*
+ * These Hyper-V registers provide information equivalent to the CPUID
+ * instruction on x86/x64.
+ */
+#define HV_REGISTER_HYPERVISOR_VERSION		0x00000100 /*CPUID 0x40000002 */
+#define HV_REGISTER_FEATURES			0x00000200 /*CPUID 0x40000003 */
+#define HV_REGISTER_ENLIGHTENMENTS		0x00000201 /*CPUID 0x40000004 */
+
+/*
+ * Synthetic register definitions equivalent to MSRs on x86/x64
+ */
+#define HV_REGISTER_CRASH_P0		0x00000210
+#define HV_REGISTER_CRASH_P1		0x00000211
+#define HV_REGISTER_CRASH_P2		0x00000212
+#define HV_REGISTER_CRASH_P3		0x00000213
+#define HV_REGISTER_CRASH_P4		0x00000214
+#define HV_REGISTER_CRASH_CTL		0x00000215
+
+#define HV_REGISTER_GUEST_OSID		0x00090002
+#define HV_REGISTER_VP_INDEX		0x00090003
+#define HV_REGISTER_TIME_REF_COUNT	0x00090004
+#define HV_REGISTER_REFERENCE_TSC	0x00090017
+
+#define HV_REGISTER_SINT0		0x000A0000
+#define HV_REGISTER_SCONTROL		0x000A0010
+#define HV_REGISTER_SIEFP		0x000A0012
+#define HV_REGISTER_SIMP		0x000A0013
+#define HV_REGISTER_EOM			0x000A0014
+
+#define HV_REGISTER_STIMER0_CONFIG	0x000B0000
+#define HV_REGISTER_STIMER0_COUNT	0x000B0001
 
 /* HvGetVpRegisters hypercall input with variable size reg name list*/
 struct hv_get_vp_registers_input {
@@ -640,7 +671,6 @@ struct hv_get_vp_registers_input {
 	} element[];
 } __packed;
 
-
 /* HvGetVpRegisters returns an array of these output elements */
 struct hv_get_vp_registers_output {
 	union {
diff --git a/include/asm-generic/mshyperv.h b/include/asm-generic/mshyperv.h
index 430f0ae0dde2d..04424a446bb73 100644
--- a/include/asm-generic/mshyperv.h
+++ b/include/asm-generic/mshyperv.h
@@ -157,7 +157,7 @@ static inline void vmbus_signal_eom(struct hv_message *msg, u32 old_msg_type)
 		 * possibly deliver another msg from the
 		 * hypervisor
 		 */
-		hv_set_register(HV_REGISTER_EOM, 0);
+		hv_set_msr(HV_MSR_EOM, 0);
 	}
 }
 
-- 
2.51.0




  parent reply	other threads:[~2026-01-28 15:32 UTC|newest]

Thread overview: 265+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-28 15:19 [PATCH 6.6 000/254] 6.6.122-rc1 review Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 001/254] firmware: imx: scu-irq: Set mu_resource_id before get handle Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 002/254] efi/cper: Fix cper_bits_to_str buffer handling and return value Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 003/254] Revert "gfs2: Fix use of bio_chain" Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 004/254] ASoC: codecs: wsa884x: fix codec initialisation Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 005/254] xfrm: Fix inner mode lookup in tunnel mode GSO segmentation Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 006/254] pnfs/flexfiles: Fix memory leak in nfs4_ff_alloc_deviceid_node() Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 007/254] can: etas_es58x: allow partial RX URB allocation to succeed Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 008/254] nvmet-tcp: remove boilerplate code Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 009/254] nvme-tcp: fix NULL pointer dereferences in nvmet_tcp_build_pdu_iovec Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 010/254] btrfs: send: check for inline extents in range_is_hole_in_parent() Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 011/254] net: bridge: Set BR_FDB_ADDED_BY_USER early in fdb_add_entry Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 012/254] net: bridge: annotate data-races around fdb->{updated,used} Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 013/254] ip6_tunnel: use skb_vlan_inet_prepare() in __ip6_tnl_rcv() Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 014/254] net: update netdev_lock_{type,name} Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 015/254] macvlan: fix possible UAF in macvlan_forward_source() Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 016/254] ipv4: ip_gre: make ipgre_header() robust Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 017/254] vsock/test: add a final full barrier after run all tests Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 018/254] net/mlx5e: Restore destroying state bit after profile cleanup Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 019/254] btrfs: store fs_info in space_info Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 020/254] btrfs: factor out init_space_info() from create_space_info() Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 021/254] btrfs: factor out check_removing_space_info() from btrfs_free_block_groups() Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 022/254] btrfs: introduce btrfs_space_info sub-group Greg Kroah-Hartman
2026-01-28 15:19 ` [PATCH 6.6 023/254] btrfs: fix memory leaks in create_space_info() error paths Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 024/254] net: hv_netvsc: reject RSS hash key programming without RX indirection table Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 025/254] ipv6: Fix use-after-free in inet6_addr_del() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 026/254] selftests: drv-net: fix RPS mask handling for high CPU numbers Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 027/254] net/sched: sch_qfq: do not free existing class in qfq_change_class() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 028/254] ASoC: tlv320adcx140: fix null pointer Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 029/254] ASoC: tlv320adcx140: fix word length Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 030/254] textsearch: describe @list member in ts_ops search Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 031/254] mm, kfence: describe @slab parameter in __kfence_obj_info() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 032/254] dmaengine: xilinx: xdma: Fix regmap max_register Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 033/254] dmaengine: tegra-adma: Fix use-after-free Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 034/254] dmaengine: xilinx_dma: Fix uninitialized addr_width when "xlnx,addrwidth" property is missing Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 035/254] phy: fsl-imx8mq-usb: Clear the PCS_TX_SWING_FULL field before using it Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 036/254] phy: phy-snps-eusb2: refactor constructs names Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 037/254] phy: drop probe registration printks Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 038/254] phy: qcom-qusb2: Fix NULL pointer dereference on early suspend Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 039/254] phy: stm32-usphyc: Fix off by one in probe() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 040/254] phy: broadcom: ns-usb3: Fix Wvoid-pointer-to-enum-cast warning (again) Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 041/254] dmaengine: omap-dma: fix dma_pool resource leak in error paths Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 042/254] i2c: qcom-geni: make sure I2C hub controllers cant use SE DMA Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 043/254] HID: usbhid: paper over wrong bNumDescriptor field Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 044/254] drm/amd/display: Check dce_hwseq before dereferencing it Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 045/254] scsi: core: Fix error handler encryption support Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 046/254] ALSA: pcm: Improve the fix for race of buffer access at PCM OSS layer Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 047/254] null_blk: fix kmemleak by releasing references to fault configfs items Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 048/254] can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 049/254] can: ctucanfd: fix SSP_SRC in cases when bit-rate is higher than 1 MBit Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 050/254] net: can: j1939: j1939_xtp_rx_rts_session_active(): deactivate session upon receiving the second rts Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 051/254] x86/kaslr: Recognize all ZONE_DEVICE users as physaddr consumers Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 052/254] phy: rockchip: inno-usb2: fix communication disruption in gadget mode Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 053/254] phy: freescale: imx8m-pcie: assert phy reset during power on Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 054/254] phy: rockchip: inno-usb2: fix disconnection in gadget mode Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 055/254] phy: tegra: xusb: Explicitly configure HS_DISCON_LEVEL to 0x7 Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 056/254] usb: dwc3: Check for USB4 IP_NAME Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 057/254] usb: core: add USB_QUIRK_NO_BOS for devices that hang on BOS descriptor Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 058/254] USB: OHCI/UHCI: Add soft dependencies on ehci_platform Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 059/254] USB: serial: option: add Telit LE910 MBIM composition Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 060/254] USB: serial: ftdi_sio: add support for PICAXE AXE027 cable Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 061/254] nvme-pci: disable secondary temp for Wodposit WPBSNM8 Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 062/254] ext4: fix iloc.bh leak in ext4_xattr_inode_update_ref Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 063/254] hrtimer: Fix softirq base check in update_needs_ipi() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 064/254] EDAC/x38: Fix a resource leak in x38_probe1() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 065/254] EDAC/i3200: Fix a resource leak in i3200_probe1() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 066/254] tcpm: allow looking for role_sw device in the main node Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 067/254] x86/resctrl: Add missing resctrl initialization for Hygon Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 068/254] x86/resctrl: Fix memory bandwidth counter width " Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 069/254] mm/page_alloc: make percpu_pagelist_high_fraction reads lock-free Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 070/254] mm/damon/sysfs: cleanup attrs subdirs on context dir setup failure Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 071/254] LoongArch: Fix PMU counter allocation for mixed-type event groups Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 072/254] drm/amd/display: Bump the HDMI clock to 340MHz Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 073/254] drm/amd: Clean up kfd node on surprise disconnect Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 074/254] drm/amdkfd: fix a memory leak in device_queue_manager_init() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 075/254] drm/nouveau/disp/nv50-: Set lock_core in curs507a_prepare Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 076/254] drm/panel-simple: fix connector type for DataImage SCF0700C48GGU18 panel Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 077/254] drm/vmwgfx: Fix an error return check in vmw_compat_shader_add() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 078/254] dmaengine: apple-admac: Add "apple,t8103-admac" compatible Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 079/254] dmaengine: at_hdmac: fix device leak on of_dma_xlate() Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 080/254] dmaengine: bcm-sba-raid: fix device leak on probe Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 081/254] dmaengine: dw: dmamux: fix OF node leak on route allocation failure Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 082/254] dmaengine: idxd: fix device leaks on compat bind and unbind Greg Kroah-Hartman
2026-01-28 15:20 ` [PATCH 6.6 083/254] dmaengine: lpc18xx-dmamux: fix device leak on route allocation Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 084/254] dmaengine: qcom: gpi: Fix memory leak in gpi_peripheral_config() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 085/254] dmaengine: sh: rz-dmac: Fix rz_dmac_terminate_all() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 086/254] dmaengine: ti: dma-crossbar: fix device leak on dra7x route allocation Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 087/254] dmaengine: ti: dma-crossbar: fix device leak on am335x " Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 088/254] dmaengine: ti: k3-udma: fix device leak on udma lookup Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 089/254] btrfs: fix deadlock in wait_current_trans() due to ignored transaction type Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 090/254] io_uring: move local task_work in exit cancel loop Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 091/254] posix-clock: introduce posix_clock_context concept Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 092/254] Fix memory leak in posix_clock_open() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 093/254] posix-clock: Store file pointer in struct posix_clock_context Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 094/254] ptp: Add PHC file mode checks. Allow RO adjtime() without FMODE_WRITE Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 095/254] ptp: add testptp mask test Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 096/254] selftest/ptp: update ptp selftest to exercise the gettimex options Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 097/254] testptp: Add option to open PHC in readonly mode Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 098/254] arm64: dts: qcom: sc8280xp: Add missing VDD_MXC links Greg Kroah-Hartman
2026-01-28 15:21 ` Greg Kroah-Hartman [this message]
2026-01-28 15:21 ` [PATCH 6.6 100/254] Drivers: hv: Always do Hyper-V panic notification in hv_kmsg_dump() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 101/254] btrfs: fix missing fields in superblock backup with BLOCK_GROUP_TREE Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 102/254] dt-bindings: power: qcom,rpmpd: Add SM7150 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 103/254] dt-bindings: power: rpmpd: Add MSM8917, MSM8937 and QM215 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 104/254] dt-bindings: power: qcom,rpmpd: document the SM8650 RPMh Power Domains Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 105/254] dt-bindings: power: rpmpd: Update part number to X1E80100 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 106/254] dt-bindings: power: qcom,rpmpd: document the SM8750 RPMh Power Domains Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 107/254] dt-bindings: power: qcom,rpmpd: add Turbo L5 corner Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 108/254] dt-bindings: power: qcom-rpmpd: split RPMh domains definitions Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 109/254] dt-bindings: power: qcom,rpmpd: Add SC8280XP_MXC_AO Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 110/254] pmdomain: qcom: rpmhpd: Add MXC to SC8280XP Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 111/254] ata: libata: Add cpr_log to ata_dev_print_features() early return Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 112/254] ata: libata-core: Introduce ata_dev_config_lpm() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 113/254] ata: libata: Call ata_dev_config_lpm() for ATAPI devices Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 114/254] ata: libata: Print features also " Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 115/254] ice: initialize ring_stats->syncp Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 116/254] ice: Avoid detrimental cleanup for bond during interface stop Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 117/254] igc: fix race condition in TX timestamp read for register 0 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 118/254] net: usb: dm9601: remove broken SR9700 support Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 119/254] bonding: limit BOND_MODE_8023AD to Ethernet devices Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 120/254] selftests/net: convert fib-onlink-tests.sh to run it in unique namespace Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 121/254] selftests: net: fib-onlink-tests: Convert to use namespaces by default Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 122/254] can: gs_usb: gs_usb_receive_bulk_callback(): unanchor URL on usb_submit_urb() error Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 123/254] sctp: move SCTP_CMD_ASSOC_SHKEY right after SCTP_CMD_PEER_INIT Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 124/254] amd-xgbe: avoid misleading per-packet error log Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 125/254] gue: Fix skb memleak with inner IP protocol 0 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 126/254] tools: ynl: Specify --no-line-number in ynl-regen.sh Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 127/254] fou: Dont allow 0 for FOU_ATTR_IPPROTO Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 128/254] veth: fix data race in veth_get_ethtool_stats Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 129/254] l2tp: avoid one data-race in l2tp_tunnel_del_work() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 130/254] ipvlan: Make the addrs_lock be per port Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 131/254] octeontx2: cn10k: fix RX flowid TCAM mask handling Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 132/254] net/sched: Enforce that teql can only be used as root qdisc Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 133/254] net/sched: qfq: Use cl_is_active to determine whether class is active in qfq_rm_from_ag Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 134/254] crypto: authencesn - reject too-short AAD (assoclen<8) to match ESP/ESN spec Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 135/254] serial: 8250_pci: Fix broken RS485 for F81504/508/512 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 136/254] comedi: dmm32at: serialize use of paged registers Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 137/254] w1: therm: Fix off-by-one buffer overflow in alarms_store Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 138/254] w1: fix redundant counter decrement in w1_attach_slave_device() Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 139/254] Revert "nfc/nci: Add the inconsistency check between the input data length and count" Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 140/254] Input: i8042 - add quirks for MECHREVO Wujie 15X Pro Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 141/254] Input: i8042 - add quirk for ASUS Zenbook UX425QA_UM425QA Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 142/254] scsi: storvsc: Process unsupported MODE_SENSE_10 Greg Kroah-Hartman
2026-01-28 15:21 ` [PATCH 6.6 143/254] scsi: xen: scsiback: Fix potential memory leak in scsiback_remove() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 144/254] arm64: dts: rockchip: remove dangerous max-link-speed from helios64 Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 145/254] arm64: dts: rockchip: Fix voltage threshold for volume keys for Pinephone Pro Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 146/254] x86/kfence: avoid writing L1TF-vulnerable PTEs Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 147/254] comedi: Fix getting range information for subdevices 16 to 255 Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 148/254] platform/x86: hp-bioscfg: Fix kobject warnings for empty attribute names Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 149/254] platform/x86: hp-bioscfg: Fix kernel panic in GET_INSTANCE_ID macro Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 150/254] io_uring/io-wq: check IO_WQ_BIT_EXIT inside work run loop Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 151/254] iio: imu: st_lsm6dsx: fix iio_chan_spec for sensors without event detection Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 152/254] iio: adc: ad7280a: handle spi_setup() errors in probe() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 153/254] interconnect: debugfs: initialize src_node and dst_node to empty strings Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 154/254] spi: sprd: adi: Use devm_register_restart_handler() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 155/254] spi: sprd-adi: switch to use spi_alloc_host() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 156/254] spi: spi-sprd-adi: Fix double free in probe error path Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 157/254] regmap: Fix race condition in hwspinlock irqsave routine Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 158/254] kconfig: fix static linking of nconf Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 159/254] riscv: clocksource: Fix stimecmp update hazard on RV32 Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 160/254] scsi: core: Wake up the error handler when final completions race against each other Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 161/254] scsi: qla2xxx: Sanitize payload size to prevent member overflow Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 162/254] ALSA: usb: Increase volume range that triggers a warning Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 163/254] netdevsim: fix a race issue related to the operation on bpf_bound_progs list Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 164/254] net: hns3: fix data race in hns3_fetch_stats Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 165/254] be2net: fix data race in be_get_new_eqd Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 166/254] net: hns3: fix wrong GENMASK() for HCLGE_FD_AD_COUNTER_NUM_M Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 167/254] net: hns3: fix the HCLGE_FD_AD_NXT_KEY error setting issue Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 168/254] mISDN: annotate data-race around dev->work Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 169/254] ipv6: annotate data-race in ndisc_router_discovery() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 170/254] usbnet: limit max_mtu based on devices hard_mtu Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 171/254] drm/amd/pm: Dont clear SI SMC table when setting power limit Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 172/254] drm/amd/pm: Workaround SI powertune issue on Radeon 430 (v2) Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 173/254] be2net: Fix NULL pointer dereference in be_cmd_get_mac_from_list Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 174/254] selftests: net: amt: wait longer for connection before sending packets Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 175/254] bonding: provide a net pointer to __skb_flow_dissect() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 176/254] net: dsa: fix off-by-one in maximum bridge ID determination Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 177/254] octeontx2-af: Fix error handling Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 178/254] net: openvswitch: fix data race in ovs_vport_get_upcall_stats Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 179/254] vsock/virtio: fix potential underflow in virtio_transport_get_credit() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 180/254] vsock/test: fix seqpacket message bounds test Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 181/254] vsock/virtio: cap TX credit to local buffer size Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 182/254] net/sched: act_ife: avoid possible NULL deref Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 183/254] x86: make page fault handling disable interrupts properly Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 184/254] leds: led-class: Only Add LED to leds_list when it is fully ready Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 185/254] of: fix reference count leak in of_alias_scan() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 186/254] of: platform: Use default match table for /firmware Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 187/254] iio: accel: iis328dq: fix gain values Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 188/254] iio: adc: ad9467: fix ad9434 vref mask Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 189/254] iio: adc: at91-sama5d2_adc: Fix potential use-after-free in sama5d2_adc driver Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 190/254] iio: chemical: scd4x: fix reported channel endianness Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 191/254] iio: dac: ad5686: add AD5695R to ad5686_chip_info_tbl Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 192/254] ALSA: ctxfi: Fix potential OOB access in audio mixer handling Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 193/254] ALSA: usb-audio: Fix use-after-free in snd_usb_mixer_free() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 194/254] mmc: rtsx_pci_sdmmc: implement sdmmc_card_busy function Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 195/254] mmc: sdhci-of-dwcmshc: Prevent illegal clock reduction in HS200/HS400 mode Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 196/254] wifi: ath10k: fix dma_free_coherent() pointer Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 197/254] wifi: ath12k: " Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 198/254] wifi: mwifiex: Fix a loop in mwifiex_update_ampdu_rxwinsize() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 199/254] wifi: rsi: Fix memory corruption due to not set vif driver data size Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 200/254] arm64/fpsimd: signal: Allocate SSVE storage when restoring ZA Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 201/254] arm64: Set __nocfi on swsusp_arch_resume() Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 202/254] octeontx2: Fix otx2_dma_map_page() error return code Greg Kroah-Hartman
2026-01-28 15:22 ` [PATCH 6.6 203/254] slimbus: core: fix runtime PM imbalance on report present Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 204/254] slimbus: core: fix device reference leak " Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 205/254] tracing: Fix crash on synthetic stacktrace field usage Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 206/254] intel_th: fix device leak on output open() Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 207/254] uacce: fix cdev handling in the cleanup path Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 208/254] uacce: fix isolate sysfs check condition Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 209/254] uacce: implement mremap in uacce_vm_ops to return -EPERM Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 210/254] uacce: ensure safe queue release with state management Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 211/254] netrom: fix double-free in nr_route_frame() Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 212/254] platform/x86: hp-bioscfg: Fix automatic module loading Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 213/254] pmdomain: imx8m-blk-ctrl: Remove separate rst and clk mask for 8mq vpu Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 214/254] perf/x86/intel: Do not enable BTS for guests Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 215/254] irqchip/gic-v3-its: Avoid truncating memory addresses Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 216/254] can: ems_usb: ems_usb_read_bulk_callback(): fix URB memory leak Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 217/254] can: kvaser_usb: kvaser_usb_read_bulk_callback(): " Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 218/254] can: mcba_usb: mcba_usb_read_bulk_callback(): " Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 219/254] can: usb_8dev: usb_8dev_read_bulk_callback(): " Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 220/254] migrate: correct lock ordering for hugetlb file folios Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 221/254] selftests/bpf: Check for timeout in perf_link test Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 222/254] bpf: Do not let BPF test infra emit invalid GSO types to stack Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 223/254] bridge: mcast: Fix use-after-free during router port configuration Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 224/254] can: esd_usb: esd_usb_read_bulk_callback(): fix URB memory leak Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 225/254] mm/damon/sysfs-scheme: cleanup access_pattern subdirs on scheme dir setup failure Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 226/254] mm/damon/sysfs-scheme: cleanup quotas " Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 227/254] iio: core: add missing mutex_destroy in iio_dev_release() Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 228/254] iio: core: add separate lockdep class for info_exist_lock Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 229/254] mm/rmap: fix two comments related to huge_pmd_unshare() Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 230/254] arm64: dts: rockchip: remove redundant max-link-speed from nanopi-r4s Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 231/254] ALSA: scarlett2: Fix buffer overflow in config retrieval Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 232/254] iio: adc: exynos_adc: fix OF populate on driver rebind Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 233/254] dmaengine: stm32: dmamux: fix device leak on route allocation Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 234/254] dmaengine: stm32: dmamux: fix OF node leak on route allocation failure Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 235/254] mm/page_alloc: prevent pcp corruption with SMP=n Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 236/254] mm: kmsan: fix poisoning of high-order non-compound pages Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 237/254] phy: phy-rockchip-inno-usb2: Use dev_err_probe() in the probe path Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 238/254] phy: rockchip: inno-usb2: Fix a double free bug in rockchip_usb2phy_probe() Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 239/254] ASoC: codecs: wsa881x: Drop unused version readout Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 240/254] ASoC: codecs: wsa881x: fix unnecessary initialisation Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 241/254] ASoC: codecs: wsa883x: " Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 242/254] nvme-fc: rename free_ctrl callback to match name pattern Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 243/254] nvme-pci: do not directly handle subsys reset fallout Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 244/254] nvme: fix PCIe subsystem reset controller state transition Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 245/254] NFSD: fix race between nfsd registration and exports_proc Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 246/254] usbnet: Fix using smp_processor_id() in preemptible code warnings Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 247/254] ksmbd: fix use-after-free in ksmbd_session_rpc_open Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 248/254] fs/ntfs3: Initialize allocated memory before use Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 249/254] drm/amdgpu: csa unmap use uninterruptible lock Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 250/254] wifi: ath11k: fix RCU stall while reaping monitor destination ring Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 251/254] x86/fpu: Clear XSTATE_BV[i] in guest XSAVE state whenever XFD[i]=1 Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 252/254] net: phy: move phy_link_change() prior to mdio_bus_phy_may_suspend() Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 253/254] net: phy: allow MDIO bus PM ops to start/stop state machine for phylink-controlled PHY Greg Kroah-Hartman
2026-01-28 15:23 ` [PATCH 6.6 254/254] net: phy: fix phy_uses_state_machine() Greg Kroah-Hartman
2026-01-28 19:38 ` [PATCH 6.6 000/254] 6.6.122-rc1 review Brett A C Sheffield
2026-01-28 19:58 ` Florian Fainelli
2026-01-29  2:10 ` Shung-Hsi Yu
2026-01-29  5:12 ` Peter Schneider
2026-01-29  6:54 ` Slade Watkins
2026-01-29  7:35 ` Francesco Dolcini
2026-01-29  9:48 ` Jon Hunter
2026-01-29 10:24 ` Ron Economos
2026-01-29 17:50 ` Mark Brown
2026-01-29 20:34 ` Miguel Ojeda

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=20260128145348.388896193@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=mhklinux@outlook.com \
    --cc=nunodasneves@linux.microsoft.com \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=wei.liu@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.