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, Arnd Bergmann <arnd@arndb.de>,
	Alexander Potapenko <glider@google.com>,
	Andrey Konovalov <andreyknvl@gmail.com>,
	Andrey Ryabinin <ryabinin.a.a@gmail.com>,
	Dmitry Vyukov <dvyukov@google.com>,
	Marco Elver <elver@google.com>,
	Vincenzo Frascino <vincenzo.frascino@arm.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: [PATCH 6.4 137/292] kasan: use internal prototypes matching gcc-13 builtins
Date: Fri, 21 Jul 2023 18:04:06 +0200	[thread overview]
Message-ID: <20230721160534.733450725@linuxfoundation.org> (raw)
In-Reply-To: <20230721160528.800311148@linuxfoundation.org>

From: Arnd Bergmann <arnd@arndb.de>

commit bb6e04a173f06e51819a4bb512e127dfbc50dcfa upstream.

gcc-13 warns about function definitions for builtin interfaces that have a
different prototype, e.g.:

In file included from kasan_test.c:31:
kasan.h:574:6: error: conflicting types for built-in function '__asan_register_globals'; expected 'void(void *, long int)' [-Werror=builtin-declaration-mismatch]
  574 | void __asan_register_globals(struct kasan_global *globals, size_t size);
kasan.h:577:6: error: conflicting types for built-in function '__asan_alloca_poison'; expected 'void(void *, long int)' [-Werror=builtin-declaration-mismatch]
  577 | void __asan_alloca_poison(unsigned long addr, size_t size);
kasan.h:580:6: error: conflicting types for built-in function '__asan_load1'; expected 'void(void *)' [-Werror=builtin-declaration-mismatch]
  580 | void __asan_load1(unsigned long addr);
kasan.h:581:6: error: conflicting types for built-in function '__asan_store1'; expected 'void(void *)' [-Werror=builtin-declaration-mismatch]
  581 | void __asan_store1(unsigned long addr);
kasan.h:643:6: error: conflicting types for built-in function '__hwasan_tag_memory'; expected 'void(void *, unsigned char,  long int)' [-Werror=builtin-declaration-mismatch]
  643 | void __hwasan_tag_memory(unsigned long addr, u8 tag, unsigned long size);

The two problems are:

 - Addresses are passes as 'unsigned long' in the kernel, but gcc-13
   expects a 'void *'.

 - sizes meant to use a signed ssize_t rather than size_t.

Change all the prototypes to match these.  Using 'void *' consistently for
addresses gets rid of a couple of type casts, so push that down to the
leaf functions where possible.

This now passes all randconfig builds on arm, arm64 and x86, but I have
not tested it on the other architectures that support kasan, since they
tend to fail randconfig builds in other ways.  This might fail if any of
the 32-bit architectures expect a 'long' instead of 'int' for the size
argument.

The __asan_allocas_unpoison() function prototype is somewhat weird, since
it uses a pointer for 'stack_top' and an size_t for 'stack_bottom'.  This
looks like it is meant to be 'addr' and 'size' like the others, but the
implementation clearly treats them as 'top' and 'bottom'.

Link: https://lkml.kernel.org/r/20230509145735.9263-2-arnd@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Konovalov <andreyknvl@gmail.com>
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Marco Elver <elver@google.com>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 arch/arm64/kernel/traps.c |    2 
 arch/arm64/mm/fault.c     |    2 
 include/linux/kasan.h     |    2 
 mm/kasan/common.c         |    2 
 mm/kasan/generic.c        |   72 ++++++++++-----------
 mm/kasan/kasan.h          |  156 +++++++++++++++++++++++-----------------------
 mm/kasan/report.c         |   17 ++---
 mm/kasan/report_generic.c |   12 +--
 mm/kasan/report_hw_tags.c |    2 
 mm/kasan/report_sw_tags.c |    2 
 mm/kasan/shadow.c         |   36 +++++-----
 mm/kasan/sw_tags.c        |   20 ++---
 12 files changed, 162 insertions(+), 163 deletions(-)

--- a/arch/arm64/kernel/traps.c
+++ b/arch/arm64/kernel/traps.c
@@ -1044,7 +1044,7 @@ static int kasan_handler(struct pt_regs
 	bool recover = esr & KASAN_ESR_RECOVER;
 	bool write = esr & KASAN_ESR_WRITE;
 	size_t size = KASAN_ESR_SIZE(esr);
-	u64 addr = regs->regs[0];
+	void *addr = (void *)regs->regs[0];
 	u64 pc = regs->pc;
 
 	kasan_report(addr, size, write, pc);
--- a/arch/arm64/mm/fault.c
+++ b/arch/arm64/mm/fault.c
@@ -317,7 +317,7 @@ static void report_tag_fault(unsigned lo
 	 * find out access size.
 	 */
 	bool is_write = !!(esr & ESR_ELx_WNR);
-	kasan_report(addr, 0, is_write, regs->pc);
+	kasan_report((void *)addr, 0, is_write, regs->pc);
 }
 #else
 /* Tag faults aren't enabled without CONFIG_KASAN_HW_TAGS. */
--- a/include/linux/kasan.h
+++ b/include/linux/kasan.h
@@ -343,7 +343,7 @@ static inline void *kasan_reset_tag(cons
  * @is_write: whether the bad access is a write or a read
  * @ip: instruction pointer for the accessibility check or the bad access itself
  */
-bool kasan_report(unsigned long addr, size_t size,
+bool kasan_report(const void *addr, size_t size,
 		bool is_write, unsigned long ip);
 
 #else /* CONFIG_KASAN_SW_TAGS || CONFIG_KASAN_HW_TAGS */
--- a/mm/kasan/common.c
+++ b/mm/kasan/common.c
@@ -445,7 +445,7 @@ void * __must_check __kasan_krealloc(con
 bool __kasan_check_byte(const void *address, unsigned long ip)
 {
 	if (!kasan_byte_accessible(address)) {
-		kasan_report((unsigned long)address, 1, false, ip);
+		kasan_report(address, 1, false, ip);
 		return false;
 	}
 	return true;
--- a/mm/kasan/generic.c
+++ b/mm/kasan/generic.c
@@ -40,39 +40,39 @@
  * depending on memory access size X.
  */
 
-static __always_inline bool memory_is_poisoned_1(unsigned long addr)
+static __always_inline bool memory_is_poisoned_1(const void *addr)
 {
-	s8 shadow_value = *(s8 *)kasan_mem_to_shadow((void *)addr);
+	s8 shadow_value = *(s8 *)kasan_mem_to_shadow(addr);
 
 	if (unlikely(shadow_value)) {
-		s8 last_accessible_byte = addr & KASAN_GRANULE_MASK;
+		s8 last_accessible_byte = (unsigned long)addr & KASAN_GRANULE_MASK;
 		return unlikely(last_accessible_byte >= shadow_value);
 	}
 
 	return false;
 }
 
-static __always_inline bool memory_is_poisoned_2_4_8(unsigned long addr,
+static __always_inline bool memory_is_poisoned_2_4_8(const void *addr,
 						unsigned long size)
 {
-	u8 *shadow_addr = (u8 *)kasan_mem_to_shadow((void *)addr);
+	u8 *shadow_addr = (u8 *)kasan_mem_to_shadow(addr);
 
 	/*
 	 * Access crosses 8(shadow size)-byte boundary. Such access maps
 	 * into 2 shadow bytes, so we need to check them both.
 	 */
-	if (unlikely(((addr + size - 1) & KASAN_GRANULE_MASK) < size - 1))
+	if (unlikely((((unsigned long)addr + size - 1) & KASAN_GRANULE_MASK) < size - 1))
 		return *shadow_addr || memory_is_poisoned_1(addr + size - 1);
 
 	return memory_is_poisoned_1(addr + size - 1);
 }
 
-static __always_inline bool memory_is_poisoned_16(unsigned long addr)
+static __always_inline bool memory_is_poisoned_16(const void *addr)
 {
-	u16 *shadow_addr = (u16 *)kasan_mem_to_shadow((void *)addr);
+	u16 *shadow_addr = (u16 *)kasan_mem_to_shadow(addr);
 
 	/* Unaligned 16-bytes access maps into 3 shadow bytes. */
-	if (unlikely(!IS_ALIGNED(addr, KASAN_GRANULE_SIZE)))
+	if (unlikely(!IS_ALIGNED((unsigned long)addr, KASAN_GRANULE_SIZE)))
 		return *shadow_addr || memory_is_poisoned_1(addr + 15);
 
 	return *shadow_addr;
@@ -120,26 +120,25 @@ static __always_inline unsigned long mem
 	return bytes_is_nonzero(start, (end - start) % 8);
 }
 
-static __always_inline bool memory_is_poisoned_n(unsigned long addr,
-						size_t size)
+static __always_inline bool memory_is_poisoned_n(const void *addr, size_t size)
 {
 	unsigned long ret;
 
-	ret = memory_is_nonzero(kasan_mem_to_shadow((void *)addr),
-			kasan_mem_to_shadow((void *)addr + size - 1) + 1);
+	ret = memory_is_nonzero(kasan_mem_to_shadow(addr),
+			kasan_mem_to_shadow(addr + size - 1) + 1);
 
 	if (unlikely(ret)) {
-		unsigned long last_byte = addr + size - 1;
-		s8 *last_shadow = (s8 *)kasan_mem_to_shadow((void *)last_byte);
+		const void *last_byte = addr + size - 1;
+		s8 *last_shadow = (s8 *)kasan_mem_to_shadow(last_byte);
 
 		if (unlikely(ret != (unsigned long)last_shadow ||
-			((long)(last_byte & KASAN_GRANULE_MASK) >= *last_shadow)))
+			(((long)last_byte & KASAN_GRANULE_MASK) >= *last_shadow)))
 			return true;
 	}
 	return false;
 }
 
-static __always_inline bool memory_is_poisoned(unsigned long addr, size_t size)
+static __always_inline bool memory_is_poisoned(const void *addr, size_t size)
 {
 	if (__builtin_constant_p(size)) {
 		switch (size) {
@@ -159,7 +158,7 @@ static __always_inline bool memory_is_po
 	return memory_is_poisoned_n(addr, size);
 }
 
-static __always_inline bool check_region_inline(unsigned long addr,
+static __always_inline bool check_region_inline(const void *addr,
 						size_t size, bool write,
 						unsigned long ret_ip)
 {
@@ -172,7 +171,7 @@ static __always_inline bool check_region
 	if (unlikely(addr + size < addr))
 		return !kasan_report(addr, size, write, ret_ip);
 
-	if (unlikely(!addr_has_metadata((void *)addr)))
+	if (unlikely(!addr_has_metadata(addr)))
 		return !kasan_report(addr, size, write, ret_ip);
 
 	if (likely(!memory_is_poisoned(addr, size)))
@@ -181,7 +180,7 @@ static __always_inline bool check_region
 	return !kasan_report(addr, size, write, ret_ip);
 }
 
-bool kasan_check_range(unsigned long addr, size_t size, bool write,
+bool kasan_check_range(const void *addr, size_t size, bool write,
 					unsigned long ret_ip)
 {
 	return check_region_inline(addr, size, write, ret_ip);
@@ -221,36 +220,37 @@ static void register_global(struct kasan
 		     KASAN_GLOBAL_REDZONE, false);
 }
 
-void __asan_register_globals(struct kasan_global *globals, size_t size)
+void __asan_register_globals(void *ptr, ssize_t size)
 {
 	int i;
+	struct kasan_global *globals = ptr;
 
 	for (i = 0; i < size; i++)
 		register_global(&globals[i]);
 }
 EXPORT_SYMBOL(__asan_register_globals);
 
-void __asan_unregister_globals(struct kasan_global *globals, size_t size)
+void __asan_unregister_globals(void *ptr, ssize_t size)
 {
 }
 EXPORT_SYMBOL(__asan_unregister_globals);
 
 #define DEFINE_ASAN_LOAD_STORE(size)					\
-	void __asan_load##size(unsigned long addr)			\
+	void __asan_load##size(void *addr)				\
 	{								\
 		check_region_inline(addr, size, false, _RET_IP_);	\
 	}								\
 	EXPORT_SYMBOL(__asan_load##size);				\
 	__alias(__asan_load##size)					\
-	void __asan_load##size##_noabort(unsigned long);		\
+	void __asan_load##size##_noabort(void *);			\
 	EXPORT_SYMBOL(__asan_load##size##_noabort);			\
-	void __asan_store##size(unsigned long addr)			\
+	void __asan_store##size(void *addr)				\
 	{								\
 		check_region_inline(addr, size, true, _RET_IP_);	\
 	}								\
 	EXPORT_SYMBOL(__asan_store##size);				\
 	__alias(__asan_store##size)					\
-	void __asan_store##size##_noabort(unsigned long);		\
+	void __asan_store##size##_noabort(void *);			\
 	EXPORT_SYMBOL(__asan_store##size##_noabort)
 
 DEFINE_ASAN_LOAD_STORE(1);
@@ -259,24 +259,24 @@ DEFINE_ASAN_LOAD_STORE(4);
 DEFINE_ASAN_LOAD_STORE(8);
 DEFINE_ASAN_LOAD_STORE(16);
 
-void __asan_loadN(unsigned long addr, size_t size)
+void __asan_loadN(void *addr, ssize_t size)
 {
 	kasan_check_range(addr, size, false, _RET_IP_);
 }
 EXPORT_SYMBOL(__asan_loadN);
 
 __alias(__asan_loadN)
-void __asan_loadN_noabort(unsigned long, size_t);
+void __asan_loadN_noabort(void *, ssize_t);
 EXPORT_SYMBOL(__asan_loadN_noabort);
 
-void __asan_storeN(unsigned long addr, size_t size)
+void __asan_storeN(void *addr, ssize_t size)
 {
 	kasan_check_range(addr, size, true, _RET_IP_);
 }
 EXPORT_SYMBOL(__asan_storeN);
 
 __alias(__asan_storeN)
-void __asan_storeN_noabort(unsigned long, size_t);
+void __asan_storeN_noabort(void *, ssize_t);
 EXPORT_SYMBOL(__asan_storeN_noabort);
 
 /* to shut up compiler complaints */
@@ -284,7 +284,7 @@ void __asan_handle_no_return(void) {}
 EXPORT_SYMBOL(__asan_handle_no_return);
 
 /* Emitted by compiler to poison alloca()ed objects. */
-void __asan_alloca_poison(unsigned long addr, size_t size)
+void __asan_alloca_poison(void *addr, ssize_t size)
 {
 	size_t rounded_up_size = round_up(size, KASAN_GRANULE_SIZE);
 	size_t padding_size = round_up(size, KASAN_ALLOCA_REDZONE_SIZE) -
@@ -295,7 +295,7 @@ void __asan_alloca_poison(unsigned long
 			KASAN_ALLOCA_REDZONE_SIZE);
 	const void *right_redzone = (const void *)(addr + rounded_up_size);
 
-	WARN_ON(!IS_ALIGNED(addr, KASAN_ALLOCA_REDZONE_SIZE));
+	WARN_ON(!IS_ALIGNED((unsigned long)addr, KASAN_ALLOCA_REDZONE_SIZE));
 
 	kasan_unpoison((const void *)(addr + rounded_down_size),
 			size - rounded_down_size, false);
@@ -307,18 +307,18 @@ void __asan_alloca_poison(unsigned long
 EXPORT_SYMBOL(__asan_alloca_poison);
 
 /* Emitted by compiler to unpoison alloca()ed areas when the stack unwinds. */
-void __asan_allocas_unpoison(const void *stack_top, const void *stack_bottom)
+void __asan_allocas_unpoison(void *stack_top, ssize_t stack_bottom)
 {
-	if (unlikely(!stack_top || stack_top > stack_bottom))
+	if (unlikely(!stack_top || stack_top > (void *)stack_bottom))
 		return;
 
-	kasan_unpoison(stack_top, stack_bottom - stack_top, false);
+	kasan_unpoison(stack_top, (void *)stack_bottom - stack_top, false);
 }
 EXPORT_SYMBOL(__asan_allocas_unpoison);
 
 /* Emitted by the compiler to [un]poison local variables. */
 #define DEFINE_ASAN_SET_SHADOW(byte) \
-	void __asan_set_shadow_##byte(const void *addr, size_t size)	\
+	void __asan_set_shadow_##byte(const void *addr, ssize_t size)	\
 	{								\
 		__memset((void *)addr, 0x##byte, size);			\
 	}								\
--- a/mm/kasan/kasan.h
+++ b/mm/kasan/kasan.h
@@ -198,13 +198,13 @@ enum kasan_report_type {
 struct kasan_report_info {
 	/* Filled in by kasan_report_*(). */
 	enum kasan_report_type type;
-	void *access_addr;
+	const void *access_addr;
 	size_t access_size;
 	bool is_write;
 	unsigned long ip;
 
 	/* Filled in by the common reporting code. */
-	void *first_bad_addr;
+	const void *first_bad_addr;
 	struct kmem_cache *cache;
 	void *object;
 	size_t alloc_size;
@@ -311,7 +311,7 @@ static __always_inline bool addr_has_met
  * @ret_ip: return address
  * @return: true if access was valid, false if invalid
  */
-bool kasan_check_range(unsigned long addr, size_t size, bool write,
+bool kasan_check_range(const void *addr, size_t size, bool write,
 				unsigned long ret_ip);
 
 #else /* CONFIG_KASAN_GENERIC || CONFIG_KASAN_SW_TAGS */
@@ -323,7 +323,7 @@ static __always_inline bool addr_has_met
 
 #endif /* CONFIG_KASAN_GENERIC || CONFIG_KASAN_SW_TAGS */
 
-void *kasan_find_first_bad_addr(void *addr, size_t size);
+const void *kasan_find_first_bad_addr(const void *addr, size_t size);
 size_t kasan_get_alloc_size(void *object, struct kmem_cache *cache);
 void kasan_complete_mode_report_info(struct kasan_report_info *info);
 void kasan_metadata_fetch_row(char *buffer, void *row);
@@ -346,7 +346,7 @@ void kasan_print_aux_stacks(struct kmem_
 static inline void kasan_print_aux_stacks(struct kmem_cache *cache, const void *object) { }
 #endif
 
-bool kasan_report(unsigned long addr, size_t size,
+bool kasan_report(const void *addr, size_t size,
 		bool is_write, unsigned long ip);
 void kasan_report_invalid_free(void *object, unsigned long ip, enum kasan_report_type type);
 
@@ -571,82 +571,82 @@ void kasan_restore_multi_shot(bool enabl
  */
 
 asmlinkage void kasan_unpoison_task_stack_below(const void *watermark);
-void __asan_register_globals(struct kasan_global *globals, size_t size);
-void __asan_unregister_globals(struct kasan_global *globals, size_t size);
+void __asan_register_globals(void *globals, ssize_t size);
+void __asan_unregister_globals(void *globals, ssize_t size);
 void __asan_handle_no_return(void);
-void __asan_alloca_poison(unsigned long addr, size_t size);
-void __asan_allocas_unpoison(const void *stack_top, const void *stack_bottom);
+void __asan_alloca_poison(void *, ssize_t size);
+void __asan_allocas_unpoison(void *stack_top, ssize_t stack_bottom);
 
-void __asan_load1(unsigned long addr);
-void __asan_store1(unsigned long addr);
-void __asan_load2(unsigned long addr);
-void __asan_store2(unsigned long addr);
-void __asan_load4(unsigned long addr);
-void __asan_store4(unsigned long addr);
-void __asan_load8(unsigned long addr);
-void __asan_store8(unsigned long addr);
-void __asan_load16(unsigned long addr);
-void __asan_store16(unsigned long addr);
-void __asan_loadN(unsigned long addr, size_t size);
-void __asan_storeN(unsigned long addr, size_t size);
-
-void __asan_load1_noabort(unsigned long addr);
-void __asan_store1_noabort(unsigned long addr);
-void __asan_load2_noabort(unsigned long addr);
-void __asan_store2_noabort(unsigned long addr);
-void __asan_load4_noabort(unsigned long addr);
-void __asan_store4_noabort(unsigned long addr);
-void __asan_load8_noabort(unsigned long addr);
-void __asan_store8_noabort(unsigned long addr);
-void __asan_load16_noabort(unsigned long addr);
-void __asan_store16_noabort(unsigned long addr);
-void __asan_loadN_noabort(unsigned long addr, size_t size);
-void __asan_storeN_noabort(unsigned long addr, size_t size);
-
-void __asan_report_load1_noabort(unsigned long addr);
-void __asan_report_store1_noabort(unsigned long addr);
-void __asan_report_load2_noabort(unsigned long addr);
-void __asan_report_store2_noabort(unsigned long addr);
-void __asan_report_load4_noabort(unsigned long addr);
-void __asan_report_store4_noabort(unsigned long addr);
-void __asan_report_load8_noabort(unsigned long addr);
-void __asan_report_store8_noabort(unsigned long addr);
-void __asan_report_load16_noabort(unsigned long addr);
-void __asan_report_store16_noabort(unsigned long addr);
-void __asan_report_load_n_noabort(unsigned long addr, size_t size);
-void __asan_report_store_n_noabort(unsigned long addr, size_t size);
-
-void __asan_set_shadow_00(const void *addr, size_t size);
-void __asan_set_shadow_f1(const void *addr, size_t size);
-void __asan_set_shadow_f2(const void *addr, size_t size);
-void __asan_set_shadow_f3(const void *addr, size_t size);
-void __asan_set_shadow_f5(const void *addr, size_t size);
-void __asan_set_shadow_f8(const void *addr, size_t size);
-
-void *__asan_memset(void *addr, int c, size_t len);
-void *__asan_memmove(void *dest, const void *src, size_t len);
-void *__asan_memcpy(void *dest, const void *src, size_t len);
-
-void __hwasan_load1_noabort(unsigned long addr);
-void __hwasan_store1_noabort(unsigned long addr);
-void __hwasan_load2_noabort(unsigned long addr);
-void __hwasan_store2_noabort(unsigned long addr);
-void __hwasan_load4_noabort(unsigned long addr);
-void __hwasan_store4_noabort(unsigned long addr);
-void __hwasan_load8_noabort(unsigned long addr);
-void __hwasan_store8_noabort(unsigned long addr);
-void __hwasan_load16_noabort(unsigned long addr);
-void __hwasan_store16_noabort(unsigned long addr);
-void __hwasan_loadN_noabort(unsigned long addr, size_t size);
-void __hwasan_storeN_noabort(unsigned long addr, size_t size);
-
-void __hwasan_tag_memory(unsigned long addr, u8 tag, unsigned long size);
-
-void *__hwasan_memset(void *addr, int c, size_t len);
-void *__hwasan_memmove(void *dest, const void *src, size_t len);
-void *__hwasan_memcpy(void *dest, const void *src, size_t len);
+void __asan_load1(void *);
+void __asan_store1(void *);
+void __asan_load2(void *);
+void __asan_store2(void *);
+void __asan_load4(void *);
+void __asan_store4(void *);
+void __asan_load8(void *);
+void __asan_store8(void *);
+void __asan_load16(void *);
+void __asan_store16(void *);
+void __asan_loadN(void *, ssize_t size);
+void __asan_storeN(void *, ssize_t size);
+
+void __asan_load1_noabort(void *);
+void __asan_store1_noabort(void *);
+void __asan_load2_noabort(void *);
+void __asan_store2_noabort(void *);
+void __asan_load4_noabort(void *);
+void __asan_store4_noabort(void *);
+void __asan_load8_noabort(void *);
+void __asan_store8_noabort(void *);
+void __asan_load16_noabort(void *);
+void __asan_store16_noabort(void *);
+void __asan_loadN_noabort(void *, ssize_t size);
+void __asan_storeN_noabort(void *, ssize_t size);
+
+void __asan_report_load1_noabort(void *);
+void __asan_report_store1_noabort(void *);
+void __asan_report_load2_noabort(void *);
+void __asan_report_store2_noabort(void *);
+void __asan_report_load4_noabort(void *);
+void __asan_report_store4_noabort(void *);
+void __asan_report_load8_noabort(void *);
+void __asan_report_store8_noabort(void *);
+void __asan_report_load16_noabort(void *);
+void __asan_report_store16_noabort(void *);
+void __asan_report_load_n_noabort(void *, ssize_t size);
+void __asan_report_store_n_noabort(void *, ssize_t size);
+
+void __asan_set_shadow_00(const void *addr, ssize_t size);
+void __asan_set_shadow_f1(const void *addr, ssize_t size);
+void __asan_set_shadow_f2(const void *addr, ssize_t size);
+void __asan_set_shadow_f3(const void *addr, ssize_t size);
+void __asan_set_shadow_f5(const void *addr, ssize_t size);
+void __asan_set_shadow_f8(const void *addr, ssize_t size);
+
+void *__asan_memset(void *addr, int c, ssize_t len);
+void *__asan_memmove(void *dest, const void *src, ssize_t len);
+void *__asan_memcpy(void *dest, const void *src, ssize_t len);
+
+void __hwasan_load1_noabort(void *);
+void __hwasan_store1_noabort(void *);
+void __hwasan_load2_noabort(void *);
+void __hwasan_store2_noabort(void *);
+void __hwasan_load4_noabort(void *);
+void __hwasan_store4_noabort(void *);
+void __hwasan_load8_noabort(void *);
+void __hwasan_store8_noabort(void *);
+void __hwasan_load16_noabort(void *);
+void __hwasan_store16_noabort(void *);
+void __hwasan_loadN_noabort(void *, ssize_t size);
+void __hwasan_storeN_noabort(void *, ssize_t size);
+
+void __hwasan_tag_memory(void *, u8 tag, ssize_t size);
+
+void *__hwasan_memset(void *addr, int c, ssize_t len);
+void *__hwasan_memmove(void *dest, const void *src, ssize_t len);
+void *__hwasan_memcpy(void *dest, const void *src, ssize_t len);
 
-void kasan_tag_mismatch(unsigned long addr, unsigned long access_info,
+void kasan_tag_mismatch(void *addr, unsigned long access_info,
 			unsigned long ret_ip);
 
 #endif /* __MM_KASAN_KASAN_H */
--- a/mm/kasan/report.c
+++ b/mm/kasan/report.c
@@ -211,7 +211,7 @@ static void start_report(unsigned long *
 	pr_err("==================================================================\n");
 }
 
-static void end_report(unsigned long *flags, void *addr)
+static void end_report(unsigned long *flags, const void *addr)
 {
 	if (addr)
 		trace_error_report_end(ERROR_DETECTOR_KASAN,
@@ -450,8 +450,8 @@ static void print_memory_metadata(const
 
 static void print_report(struct kasan_report_info *info)
 {
-	void *addr = kasan_reset_tag(info->access_addr);
-	u8 tag = get_tag(info->access_addr);
+	void *addr = kasan_reset_tag((void *)info->access_addr);
+	u8 tag = get_tag((void *)info->access_addr);
 
 	print_error_description(info);
 	if (addr_has_metadata(addr))
@@ -468,12 +468,12 @@ static void print_report(struct kasan_re
 
 static void complete_report_info(struct kasan_report_info *info)
 {
-	void *addr = kasan_reset_tag(info->access_addr);
+	void *addr = kasan_reset_tag((void *)info->access_addr);
 	struct slab *slab;
 
 	if (info->type == KASAN_REPORT_ACCESS)
 		info->first_bad_addr = kasan_find_first_bad_addr(
-					info->access_addr, info->access_size);
+					(void *)info->access_addr, info->access_size);
 	else
 		info->first_bad_addr = addr;
 
@@ -544,11 +544,10 @@ void kasan_report_invalid_free(void *ptr
  * user_access_save/restore(): kasan_report_invalid_free() cannot be called
  * from a UACCESS region, and kasan_report_async() is not used on x86.
  */
-bool kasan_report(unsigned long addr, size_t size, bool is_write,
+bool kasan_report(const void *addr, size_t size, bool is_write,
 			unsigned long ip)
 {
 	bool ret = true;
-	void *ptr = (void *)addr;
 	unsigned long ua_flags = user_access_save();
 	unsigned long irq_flags;
 	struct kasan_report_info info;
@@ -562,7 +561,7 @@ bool kasan_report(unsigned long addr, si
 
 	memset(&info, 0, sizeof(info));
 	info.type = KASAN_REPORT_ACCESS;
-	info.access_addr = ptr;
+	info.access_addr = addr;
 	info.access_size = size;
 	info.is_write = is_write;
 	info.ip = ip;
@@ -571,7 +570,7 @@ bool kasan_report(unsigned long addr, si
 
 	print_report(&info);
 
-	end_report(&irq_flags, ptr);
+	end_report(&irq_flags, (void *)addr);
 
 out:
 	user_access_restore(ua_flags);
--- a/mm/kasan/report_generic.c
+++ b/mm/kasan/report_generic.c
@@ -30,9 +30,9 @@
 #include "kasan.h"
 #include "../slab.h"
 
-void *kasan_find_first_bad_addr(void *addr, size_t size)
+const void *kasan_find_first_bad_addr(const void *addr, size_t size)
 {
-	void *p = addr;
+	const void *p = addr;
 
 	if (!addr_has_metadata(p))
 		return p;
@@ -362,14 +362,14 @@ void kasan_print_address_stack_frame(con
 #endif /* CONFIG_KASAN_STACK */
 
 #define DEFINE_ASAN_REPORT_LOAD(size)                     \
-void __asan_report_load##size##_noabort(unsigned long addr) \
+void __asan_report_load##size##_noabort(void *addr) \
 {                                                         \
 	kasan_report(addr, size, false, _RET_IP_);	  \
 }                                                         \
 EXPORT_SYMBOL(__asan_report_load##size##_noabort)
 
 #define DEFINE_ASAN_REPORT_STORE(size)                     \
-void __asan_report_store##size##_noabort(unsigned long addr) \
+void __asan_report_store##size##_noabort(void *addr) \
 {                                                          \
 	kasan_report(addr, size, true, _RET_IP_);	   \
 }                                                          \
@@ -386,13 +386,13 @@ DEFINE_ASAN_REPORT_STORE(4);
 DEFINE_ASAN_REPORT_STORE(8);
 DEFINE_ASAN_REPORT_STORE(16);
 
-void __asan_report_load_n_noabort(unsigned long addr, size_t size)
+void __asan_report_load_n_noabort(void *addr, ssize_t size)
 {
 	kasan_report(addr, size, false, _RET_IP_);
 }
 EXPORT_SYMBOL(__asan_report_load_n_noabort);
 
-void __asan_report_store_n_noabort(unsigned long addr, size_t size)
+void __asan_report_store_n_noabort(void *addr, ssize_t size)
 {
 	kasan_report(addr, size, true, _RET_IP_);
 }
--- a/mm/kasan/report_hw_tags.c
+++ b/mm/kasan/report_hw_tags.c
@@ -15,7 +15,7 @@
 
 #include "kasan.h"
 
-void *kasan_find_first_bad_addr(void *addr, size_t size)
+const void *kasan_find_first_bad_addr(const void *addr, size_t size)
 {
 	/*
 	 * Hardware Tag-Based KASAN only calls this function for normal memory
--- a/mm/kasan/report_sw_tags.c
+++ b/mm/kasan/report_sw_tags.c
@@ -30,7 +30,7 @@
 #include "kasan.h"
 #include "../slab.h"
 
-void *kasan_find_first_bad_addr(void *addr, size_t size)
+const void *kasan_find_first_bad_addr(const void *addr, size_t size)
 {
 	u8 tag = get_tag(addr);
 	void *p = kasan_reset_tag(addr);
--- a/mm/kasan/shadow.c
+++ b/mm/kasan/shadow.c
@@ -28,13 +28,13 @@
 
 bool __kasan_check_read(const volatile void *p, unsigned int size)
 {
-	return kasan_check_range((unsigned long)p, size, false, _RET_IP_);
+	return kasan_check_range((void *)p, size, false, _RET_IP_);
 }
 EXPORT_SYMBOL(__kasan_check_read);
 
 bool __kasan_check_write(const volatile void *p, unsigned int size)
 {
-	return kasan_check_range((unsigned long)p, size, true, _RET_IP_);
+	return kasan_check_range((void *)p, size, true, _RET_IP_);
 }
 EXPORT_SYMBOL(__kasan_check_write);
 
@@ -50,7 +50,7 @@ EXPORT_SYMBOL(__kasan_check_write);
 #undef memset
 void *memset(void *addr, int c, size_t len)
 {
-	if (!kasan_check_range((unsigned long)addr, len, true, _RET_IP_))
+	if (!kasan_check_range(addr, len, true, _RET_IP_))
 		return NULL;
 
 	return __memset(addr, c, len);
@@ -60,8 +60,8 @@ void *memset(void *addr, int c, size_t l
 #undef memmove
 void *memmove(void *dest, const void *src, size_t len)
 {
-	if (!kasan_check_range((unsigned long)src, len, false, _RET_IP_) ||
-	    !kasan_check_range((unsigned long)dest, len, true, _RET_IP_))
+	if (!kasan_check_range(src, len, false, _RET_IP_) ||
+	    !kasan_check_range(dest, len, true, _RET_IP_))
 		return NULL;
 
 	return __memmove(dest, src, len);
@@ -71,17 +71,17 @@ void *memmove(void *dest, const void *sr
 #undef memcpy
 void *memcpy(void *dest, const void *src, size_t len)
 {
-	if (!kasan_check_range((unsigned long)src, len, false, _RET_IP_) ||
-	    !kasan_check_range((unsigned long)dest, len, true, _RET_IP_))
+	if (!kasan_check_range(src, len, false, _RET_IP_) ||
+	    !kasan_check_range(dest, len, true, _RET_IP_))
 		return NULL;
 
 	return __memcpy(dest, src, len);
 }
 #endif
 
-void *__asan_memset(void *addr, int c, size_t len)
+void *__asan_memset(void *addr, int c, ssize_t len)
 {
-	if (!kasan_check_range((unsigned long)addr, len, true, _RET_IP_))
+	if (!kasan_check_range(addr, len, true, _RET_IP_))
 		return NULL;
 
 	return __memset(addr, c, len);
@@ -89,10 +89,10 @@ void *__asan_memset(void *addr, int c, s
 EXPORT_SYMBOL(__asan_memset);
 
 #ifdef __HAVE_ARCH_MEMMOVE
-void *__asan_memmove(void *dest, const void *src, size_t len)
+void *__asan_memmove(void *dest, const void *src, ssize_t len)
 {
-	if (!kasan_check_range((unsigned long)src, len, false, _RET_IP_) ||
-	    !kasan_check_range((unsigned long)dest, len, true, _RET_IP_))
+	if (!kasan_check_range(src, len, false, _RET_IP_) ||
+	    !kasan_check_range(dest, len, true, _RET_IP_))
 		return NULL;
 
 	return __memmove(dest, src, len);
@@ -100,10 +100,10 @@ void *__asan_memmove(void *dest, const v
 EXPORT_SYMBOL(__asan_memmove);
 #endif
 
-void *__asan_memcpy(void *dest, const void *src, size_t len)
+void *__asan_memcpy(void *dest, const void *src, ssize_t len)
 {
-	if (!kasan_check_range((unsigned long)src, len, false, _RET_IP_) ||
-	    !kasan_check_range((unsigned long)dest, len, true, _RET_IP_))
+	if (!kasan_check_range(src, len, false, _RET_IP_) ||
+	    !kasan_check_range(dest, len, true, _RET_IP_))
 		return NULL;
 
 	return __memcpy(dest, src, len);
@@ -111,13 +111,13 @@ void *__asan_memcpy(void *dest, const vo
 EXPORT_SYMBOL(__asan_memcpy);
 
 #ifdef CONFIG_KASAN_SW_TAGS
-void *__hwasan_memset(void *addr, int c, size_t len) __alias(__asan_memset);
+void *__hwasan_memset(void *addr, int c, ssize_t len) __alias(__asan_memset);
 EXPORT_SYMBOL(__hwasan_memset);
 #ifdef __HAVE_ARCH_MEMMOVE
-void *__hwasan_memmove(void *dest, const void *src, size_t len) __alias(__asan_memmove);
+void *__hwasan_memmove(void *dest, const void *src, ssize_t len) __alias(__asan_memmove);
 EXPORT_SYMBOL(__hwasan_memmove);
 #endif
-void *__hwasan_memcpy(void *dest, const void *src, size_t len) __alias(__asan_memcpy);
+void *__hwasan_memcpy(void *dest, const void *src, ssize_t len) __alias(__asan_memcpy);
 EXPORT_SYMBOL(__hwasan_memcpy);
 #endif
 
--- a/mm/kasan/sw_tags.c
+++ b/mm/kasan/sw_tags.c
@@ -70,8 +70,8 @@ u8 kasan_random_tag(void)
 	return (u8)(state % (KASAN_TAG_MAX + 1));
 }
 
-bool kasan_check_range(unsigned long addr, size_t size, bool write,
-				unsigned long ret_ip)
+bool kasan_check_range(const void *addr, size_t size, bool write,
+			unsigned long ret_ip)
 {
 	u8 tag;
 	u8 *shadow_first, *shadow_last, *shadow;
@@ -133,12 +133,12 @@ bool kasan_byte_accessible(const void *a
 }
 
 #define DEFINE_HWASAN_LOAD_STORE(size)					\
-	void __hwasan_load##size##_noabort(unsigned long addr)		\
+	void __hwasan_load##size##_noabort(void *addr)			\
 	{								\
-		kasan_check_range(addr, size, false, _RET_IP_);	\
+		kasan_check_range(addr, size, false, _RET_IP_);		\
 	}								\
 	EXPORT_SYMBOL(__hwasan_load##size##_noabort);			\
-	void __hwasan_store##size##_noabort(unsigned long addr)		\
+	void __hwasan_store##size##_noabort(void *addr)			\
 	{								\
 		kasan_check_range(addr, size, true, _RET_IP_);		\
 	}								\
@@ -150,25 +150,25 @@ DEFINE_HWASAN_LOAD_STORE(4);
 DEFINE_HWASAN_LOAD_STORE(8);
 DEFINE_HWASAN_LOAD_STORE(16);
 
-void __hwasan_loadN_noabort(unsigned long addr, unsigned long size)
+void __hwasan_loadN_noabort(void *addr, ssize_t size)
 {
 	kasan_check_range(addr, size, false, _RET_IP_);
 }
 EXPORT_SYMBOL(__hwasan_loadN_noabort);
 
-void __hwasan_storeN_noabort(unsigned long addr, unsigned long size)
+void __hwasan_storeN_noabort(void *addr, ssize_t size)
 {
 	kasan_check_range(addr, size, true, _RET_IP_);
 }
 EXPORT_SYMBOL(__hwasan_storeN_noabort);
 
-void __hwasan_tag_memory(unsigned long addr, u8 tag, unsigned long size)
+void __hwasan_tag_memory(void *addr, u8 tag, ssize_t size)
 {
-	kasan_poison((void *)addr, size, tag, false);
+	kasan_poison(addr, size, tag, false);
 }
 EXPORT_SYMBOL(__hwasan_tag_memory);
 
-void kasan_tag_mismatch(unsigned long addr, unsigned long access_info,
+void kasan_tag_mismatch(void *addr, unsigned long access_info,
 			unsigned long ret_ip)
 {
 	kasan_report(addr, 1 << (access_info & 0xf), access_info & 0x10,



  parent reply	other threads:[~2023-07-21 16:18 UTC|newest]

Thread overview: 327+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-21 16:01 [PATCH 6.4 000/292] 6.4.5-rc1 review Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 001/292] net/ncsi: change from ndo_set_mac_address to dev_set_mac_address Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 002/292] security/integrity: fix pointer to ESL data and its size on pseries Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 003/292] HID: input: fix mapping for camera access keys Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 004/292] HID: amd_sfh: Rename the float32 variable Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 005/292] HID: amd_sfh: Fix for shift-out-of-bounds Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 006/292] net: lan743x: Dont sleep in atomic context Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 007/292] net: lan743x: select FIXED_PHY Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 008/292] ksmbd: add missing compound request handing in some commands Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 009/292] ksmbd: fix out of bounds read in smb2_sess_setup Greg Kroah-Hartman
2023-07-21 16:01 ` [PATCH 6.4 010/292] drm/panel: simple: Add connector_type for innolux_at043tn24 Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 011/292] drm: bridge: dw_hdmi: fix connector access for scdc Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 012/292] drm/bridge: ti-sn65dsi86: Fix auxiliary bus lifetime Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 013/292] swiotlb: always set the number of areas before allocating the pool Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 014/292] swiotlb: reduce the number of areas to match actual memory pool size Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 015/292] drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 016/292] xen/virtio: Fix NULL deref when a bridge of PCI root bus has no parent Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 017/292] netfilter: nf_tables: report use refcount overflow Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 018/292] netfilter: conntrack: dont fold port numbers into addresses before hashing Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 019/292] ice: Fix max_rate check while configuring TX rate limits Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 020/292] ice: Fix tx queue rate limit when TCs are configured Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 021/292] igc: Add condition for qbv_config_change_errors counter Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 022/292] igc: Remove delay during TX ring configuration Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 023/292] igc: Add igc_xdp_buff wrapper for xdp_buff in driver Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 024/292] igc: Add XDP hints kfuncs for RX hash Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 025/292] igc: Fix TX Hang issue when QBV Gate is closed Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 026/292] net/mlx5e: fix double free in mlx5e_destroy_flow_table Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 027/292] net/mlx5e: fix memory leak in mlx5e_fs_tt_redirect_any_create Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 028/292] net/mlx5e: fix memory leak in mlx5e_ptp_open Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 029/292] net/mlx5e: RX, Fix flush and close release flow of regular rq for legacy rq Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 030/292] net/mlx5: Register a unique thermal zone per device Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 031/292] net/mlx5e: Check for NOT_READY flag state after locking Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 032/292] net/mlx5e: TC, CT: Offload ct clear only once Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 033/292] net/mlx5: Query hca_cap_2 only when supported Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 034/292] net/mlx5e: RX, Fix page_pool page fragment tracking for XDP Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 035/292] igc: set TP bit in supported and advertising fields of ethtool_link_ksettings Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 036/292] igc: Include the length/type field and VLAN tag in queueMaxSDU Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 037/292] igc: Handle PPS start time programming for past time values Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 038/292] blk-crypto: use dynamic lock class for blk_crypto_profile::lock Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 039/292] scsi: qla2xxx: Fix error code in qla2x00_start_sp() Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 040/292] scsi: ufs: ufs-mediatek: Add dependency for RESET_CONTROLLER Greg Kroah-Hartman
2023-07-21 16:02   ` Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 041/292] bpf: Fix max stack depth check for async callbacks Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 042/292] net: mvneta: fix txq_map in case of txq_number==1 Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 043/292] net: dsa: felix: make vsc9959_tas_guard_bands_update() visible to ocelot->ops Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 044/292] net: mscc: ocelot: fix oversize frame dropping for preemptible TCs Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 045/292] net/sched: cls_fw: Fix improper refcount update leads to use-after-free Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 046/292] gve: Set default duplex configuration to full Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 047/292] drm/fbdev-dma: Fix documented default preferred_bpp value Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 048/292] octeontx2-af: Promisc enable/disable through mbox Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 049/292] octeontx2-af: Move validation of ptp pointer before its usage Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 050/292] ionic: remove WARN_ON to prevent panic_on_warn Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 051/292] udp6: add a missing call into udp_fail_queue_rcv_skb tracepoint Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 052/292] net: bgmac: postpone turning IRQs off to avoid SoC hangs Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 053/292] net: prevent skb corruption on frag list segmentation Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 054/292] s390/ism: Fix locking for forwarding of IRQs and events to clients Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 055/292] s390/ism: Fix and simplify add()/remove() callback handling Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 056/292] s390/ism: Do not unregister clients with registered DMBs Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 057/292] icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev() Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 058/292] udp6: fix udp6_ehashfn() typo Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 059/292] ntb: idt: Fix error handling in idt_pci_driver_init() Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 060/292] NTB: amd: Fix error handling in amd_ntb_pci_driver_init() Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 061/292] ntb: intel: Fix error handling in intel_ntb_pci_driver_init() Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 062/292] NTB: ntb_transport: fix possible memory leak while device_register() fails Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 063/292] NTB: ntb_tool: Add check for devm_kcalloc Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 064/292] ipv6/addrconf: fix a potential refcount underflow for idev Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 065/292] HID: hyperv: avoid struct memcpy overrun warning Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 066/292] net: dsa: qca8k: Add check for skb_copy Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 067/292] x86/fineibt: Poison ENDBR at +0 Greg Kroah-Hartman
2023-07-21 18:51   ` Peter Zijlstra
2023-07-22 11:42     ` Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 068/292] platform/x86: wmi: Break possible infinite loop when parsing GUID Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 069/292] net/sched: taprio: replace tc_taprio_qopt_offload :: enable with a "cmd" enum Greg Kroah-Hartman
2023-07-21 16:02 ` [PATCH 6.4 070/292] igc: Rename qbv_enable to taprio_offload_enable Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 071/292] igc: Do not enable taprio offload for invalid arguments Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 072/292] igc: Handle already enabled taprio offload for basetime 0 Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 073/292] kernel/trace: Fix cleanup logic of enable_trace_eprobe Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 074/292] fprobe: add unlock to match a succeeded ftrace_test_recursion_trylock Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 075/292] igc: No strict mode in pure launchtime/CBS offload Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 076/292] igc: Fix launchtime before start of cycle Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 077/292] igc: Fix inserting of empty frame for launchtime Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 078/292] nvme: fix the NVME_ID_NS_NVM_STS_MASK definition Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 079/292] openrisc: Union fpcsr and oldmask in sigcontext to unbreak userspace ABI Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 080/292] riscv, bpf: Fix inconsistent JIT image generation Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 081/292] net: fec: remove useless fec_enet_reset_skb() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 082/292] net: fec: remove last_bdp from fec_enet_txq_xmit_frame() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 083/292] net: fec: recycle pages for transmitted XDP frames Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 084/292] net: fec: increase the size of tx ring and update tx_wake_threshold Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 085/292] drm/i915: Dont preserve dpll_hw_state for slave crtc in Bigjoiner Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 086/292] drm/i915: Fix one wrong caching mode enum usage Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 087/292] net: dsa: Removed unneeded of_node_put in felix_parse_ports_node Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 088/292] octeontx2-pf: Add additional check for MCAM rules Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 089/292] erofs: avoid useless loops in z_erofs_pcluster_readmore() when reading beyond EOF Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 090/292] erofs: avoid infinite loop in z_erofs_do_read_page() " Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 091/292] erofs: fix fsdax unavailability for chunk-based regular files Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 092/292] wifi: airo: avoid uninitialized warning in airo_get_rate() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 093/292] bpf: cpumap: Fix memory leak in cpu_map_update_elem Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 094/292] xdp: use trusted arguments in XDP hints kfuncs Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 095/292] net/sched: flower: Ensure both minimum and maximum ports are specified Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 096/292] riscv: mm: fix truncation warning on RV32 Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 097/292] drm/nouveau/disp: fix HDMI on gt215+ Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 098/292] drm/nouveau/disp/g94: enable HDMI Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 099/292] netdevsim: fix uninitialized data in nsim_dev_trap_fa_cookie_write() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 100/292] drm/nouveau/acr: Abort loading ACR if no firmware was found Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 101/292] drm/nouveau: bring back blit subchannel for pre nv50 GPUs Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 102/292] net/sched: make psched_mtu() RTNL-less safe Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 103/292] net: txgbe: fix eeprom calculation error Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 104/292] wifi: rtw89: debug: fix error code in rtw89_debug_priv_send_h2c_set() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 105/292] net/sched: sch_qfq: reintroduce lmax bound check for MTU Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 106/292] net/sched: sch_qfq: account for stab overhead in qfq_enqueue Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 107/292] nvme-pci: fix DMA direction of unmapping integrity data Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 108/292] smb: client: improve DFS mount check Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 109/292] cifs: fix session state check in smb2_find_smb_ses Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 110/292] smb: client: fix parsing of source mount option Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 111/292] drm/client: Send hotplug event after registering a client Greg Kroah-Hartman
2023-07-21 16:03   ` Greg Kroah-Hartman
2023-07-21 16:03   ` Greg Kroah-Hartman
2023-07-21 16:03   ` Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 112/292] f2fs: dont reset unchangable mount option in f2fs_remount() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 113/292] f2fs: fix deadlock in i_xattr_sem and inode page lock Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 114/292] kbuild: make modules_install copy modules.builtin(.modinfo) Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 115/292] pinctrl: amd: Detect internal GPIO0 debounce handling Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 116/292] pinctrl: amd: Fix mistake in handling clearing pins at startup Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 117/292] pinctrl: amd: Detect and mask spurious interrupts Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 118/292] pinctrl: amd: Revert "pinctrl: amd: disable and mask interrupts on probe" Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 119/292] pinctrl: amd: Only use special debounce behavior for GPIO 0 Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 120/292] pinctrl: amd: Use amd_pinconf_set() for all config options Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 121/292] pinctrl: amd: Drop pull up select configuration Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 122/292] pinctrl: amd: Unify debounce handling into amd_pinconf_set() Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 123/292] tpm: Do not remap from ACPI resources again for Pluton TPM Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 124/292] tpm: tpm_vtpm_proxy: fix a race condition in /dev/vtpmx creation Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 125/292] tpm: tpm_tis: Disable interrupts *only* for AEON UPX-i11 Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 126/292] tpm: tis_i2c: Limit read bursts to I2C_SMBUS_BLOCK_MAX (32) bytes Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 127/292] tpm/tpm_tis: Disable interrupts for Framework Laptop Intel 12th gen Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 128/292] tpm: tis_i2c: Limit write bursts to I2C_SMBUS_BLOCK_MAX (32) bytes Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 129/292] tpm: return false from tpm_amd_is_rng_defective on non-x86 platforms Greg Kroah-Hartman
2023-07-21 16:03 ` [PATCH 6.4 130/292] tpm/tpm_tis: Disable interrupts for Framework Laptop Intel 13th gen Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 131/292] tpm,tpm_tis: Disable interrupts after 1000 unhandled IRQs Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 132/292] tpm/tpm_tis: Disable interrupts for Lenovo L590 devices Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 133/292] mtd: rawnand: meson: fix unaligned DMA buffers handling Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 134/292] net: bcmgenet: Ensure MDIO unregistration has clocks enabled Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 135/292] net: phy: dp83td510: fix kernel stall during netboot in DP83TD510E PHY driver Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 136/292] kasan: add kasan_tag_mismatch prototype Greg Kroah-Hartman
2023-07-21 16:04 ` Greg Kroah-Hartman [this message]
2023-07-21 16:04 ` [PATCH 6.4 138/292] kasan, slub: fix HW_TAGS zeroing with slub_debug Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 139/292] kasan: fix type cast in memory_is_poisoned_n Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 140/292] tracing/user_events: Fix incorrect return value for writing operation when events are disabled Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 141/292] powerpc: Fail build if using recordmcount with binutils v2.37 Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 142/292] misc: fastrpc: Create fastrpc scalar with correct buffer count Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 143/292] powerpc/security: Fix Speculation_Store_Bypass reporting on Power10 Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 144/292] powerpc/64s: Fix native_hpte_remove() to be irq-safe Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 145/292] drm/amd/display: perform a bounds check before filling dirty rectangles Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 146/292] MIPS: cpu-features: Use boot_cpu_type for CPU type based features Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 147/292] MIPS: Loongson: Fix cpu_probe_loongson() again Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 148/292] MIPS: Loongson: Fix build error when make modules_install Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 149/292] MIPS: KVM: Fix NULL pointer dereference Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 150/292] ext4: Fix reusing stale buffer heads from last failed mounting Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 151/292] ext4: fix wrong unit use in ext4_mb_clear_bb Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 152/292] ext4: get block from bh in ext4_free_blocks for fast commit replay Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 153/292] ext4: fix wrong unit use in ext4_mb_new_blocks Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 154/292] ext4: avoid updating the superblock on a r/o mount if not needed Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 155/292] ext4: fix to check return value of freeze_bdev() in ext4_shutdown() Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 156/292] ext4: turn quotas off if mount failed after enabling quotas Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 157/292] ext4: only update i_reserved_data_blocks on successful block allocation Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 158/292] fs: dlm: revert check required context while close Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 159/292] mm/mmap: Fix error return in do_vmi_align_munmap() Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 160/292] soc: qcom: mdt_loader: Fix unconditional call to scm_pas_mem_setup Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 161/292] ext2/dax: Fix ext2_setsize when len is page aligned Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 162/292] jfs: jfs_dmap: Validate db_l2nbperpage while mounting Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 163/292] arm64: dts: mt7986: use size of reserved partition for bl2 Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 164/292] arm64: dts: ti: k3-j721s2: Fix wkup pinmux range Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 165/292] hwrng: imx-rngc - fix the timeout for init and self check Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 166/292] dm integrity: reduce vmalloc space footprint on 32-bit architectures Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 167/292] scsi: mpi3mr: Propagate sense data for admin queue SCSI I/O Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 168/292] s390/zcrypt: do not retry administrative requests Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 169/292] PCI/PM: Avoid putting EloPOS E2/S2/H2 PCIe Ports in D3cold Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 170/292] PCI: Release resource invalidated by coalescing Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 171/292] PCI: Add function 1 DMA alias quirk for Marvell 88SE9235 Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 172/292] PCI: acpiphp: Reassign resources on bridge if necessary Greg Kroah-Hartman
2023-07-23  9:17   ` Thorsten Leemhuis
2023-07-23  9:25     ` Linux regression tracking (Thorsten Leemhuis)
2023-07-23 11:08       ` Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 173/292] PCI: qcom: Disable write access to read only registers for IP v2.3.3 Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 174/292] PCI: epf-test: Fix DMA transfer completion initialization Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 175/292] PCI: epf-test: Fix DMA transfer completion detection Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 176/292] PCI: rockchip: Assert PCI Configuration Enable bit after probe Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 177/292] PCI: rockchip: Write PCI Device ID to correct register Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 178/292] PCI: rockchip: Add poll and timeout to wait for PHY PLLs to be locked Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 179/292] PCI: rockchip: Fix legacy IRQ generation for RK3399 PCIe endpoint core Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 180/292] PCI: rockchip: Use u32 variable to access 32-bit registers Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 181/292] PCI: rockchip: Set address alignment for endpoint mode Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 182/292] misc: pci_endpoint_test: Free IRQs before removing the device Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 183/292] misc: pci_endpoint_test: Re-init completion for every test Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 184/292] mfd: pm8008: Fix module autoloading Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 185/292] md/raid0: add discard support for the original layout Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 186/292] fs: dlm: return positive pid value for F_GETLK Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 187/292] fs: dlm: fix cleanup pending ops when interrupted Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 188/292] fs: dlm: interrupt posix locks only when process is killed Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 189/292] fs: dlm: make F_SETLK use unkillable wait_event Greg Kroah-Hartman
2023-07-21 16:04 ` [PATCH 6.4 190/292] fs: dlm: fix mismatch of plock results from userspace Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 191/292] fs: dlm: clear pending bit when queue was empty Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 192/292] fs: dlm: fix missing pending to false Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 193/292] scsi: lpfc: Fix double free in lpfc_cmpl_els_logo_acc() caused by lpfc_nlp_not_used() Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 194/292] drm/atomic: Allow vblank-enabled + self-refresh "disable" Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 195/292] drm/rockchip: vop: Leave vblank enabled in self-refresh Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 196/292] drm/dp_mst: Clear MSG_RDY flag before sending new message Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 197/292] drm/amd/display: Limit DCN32 8 channel or less parts to DPM1 for FPO Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 198/292] drm/amd/display: Fix in secure display context creation Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 199/292] drm/amd/display: fix seamless odm transitions Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 200/292] drm/amd/display: edp do not add non-edid timings Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 201/292] drm/amd/display: Remove Phantom Pipe Check When Calculating K1 and K2 Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 202/292] drm/amd/display: disable seamless boot if force_odm_combine is enabled Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 203/292] drm/amdgpu: fix clearing mappings for BOs that are always valid in VM Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 204/292] drm/amd: Disable PSR-SU on Parade 0803 TCON Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 205/292] drm/amd/display: add a NULL pointer check Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 206/292] drm/amd/display: Fix 128b132b link loss handling Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 207/292] drm/amd/display: Correct `DMUB_FW_VERSION` macro Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 208/292] drm/amd/display: Add monitor specific edid quirk Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 209/292] drm/amdgpu: avoid restore process run into dead loop Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 210/292] drm/amd/pm: fix smu i2c data read risk Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 211/292] drm/ttm: Dont leak a resource on eviction error Greg Kroah-Hartman
2023-07-21 16:05   ` Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 212/292] drm/ttm: Dont leak a resource on swapout move error Greg Kroah-Hartman
2023-07-21 16:05   ` Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 213/292] drm/ttm: never consider pinned BOs for eviction&swap Greg Kroah-Hartman
2023-07-21 16:05   ` Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 214/292] serial: atmel: dont enable IRQs prematurely Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 215/292] tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() in case of error Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 216/292] tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() when iterating clk Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 217/292] tty: serial: imx: fix rs485 rx after tx Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 218/292] tty: fix hang on tty device with no_room set Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 219/292] firmware: stratix10-svc: Fix a potential resource leak in svc_create_memory_pool() Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 220/292] libceph: harden msgr2.1 frame segment length checks Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 221/292] ceph: add a dedicated private data for netfs rreq Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 222/292] ceph: fix blindly expanding the readahead windows Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 223/292] ceph: dont let check_caps skip sending responses for revoke msgs Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 224/292] nfp: clean mc addresses in application firmware when closing port Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 225/292] arm64: errata: Mitigate Ampere1 erratum AC03_CPU_38 at stage-2 Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 226/292] xhci: Fix resume issue of some ZHAOXIN hosts Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 227/292] xhci: Fix TRB prefetch issue of " Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 228/292] xhci: Show ZHAOXIN xHCI root hub speed correctly Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 229/292] meson saradc: fix clock divider mask length Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 230/292] opp: Fix use-after-free in lazy_opp_tables after probe deferral Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 231/292] soundwire: qcom: fix storing port config out-of-bounds Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 232/292] media: uapi: Fix [GS]_ROUTING ACTIVE flag value Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 233/292] Revert "8250: add support for ASIX devices with a FIFO bug" Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 234/292] bus: ixp4xx: fix IXP4XX_EXP_T1_MASK Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 235/292] s390/decompressor: fix misaligned symbol build error Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 236/292] dm: verity-loadpin: Add NULL pointer check for bdev parameter Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 237/292] tracing/histograms: Add histograms to hist_vars if they have referenced variables Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 238/292] tracing: Fix memory leak of iter->temp when reading trace_pipe Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 239/292] nvme: dont reject probe due to duplicate IDs for single-ported PCIe devices Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 240/292] samples: ftrace: Save required argument registers in sample trampolines Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 241/292] perf: RISC-V: Remove PERF_HES_STOPPED flag checking in riscv_pmu_start() Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 242/292] regmap-irq: Fix out-of-bounds access when allocating config buffers Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 243/292] net: ena: fix shift-out-of-bounds in exponential backoff Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 244/292] ring-buffer: Fix deadloop issue on reading trace_pipe Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 245/292] ftrace: Fix possible warning on checking all pages used in ftrace_process_locs() Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 246/292] drm/amd/pm: share the code around SMU13 pcie parameters update Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 247/292] drm/amd/pm: conditionally disable pcie lane/speed switching for SMU13 Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 248/292] cifs: if deferred close is disabled then close files immediately Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 249/292] xtensa: ISS: fix call to split_if_spec Greg Kroah-Hartman
2023-07-21 16:05 ` [PATCH 6.4 250/292] perf/x86: Fix lockdep warning in for_each_sibling_event() on SPR Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 251/292] PM: QoS: Restore support for default value on frequency QoS Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 252/292] pwm: meson: modify and simplify calculation in meson_pwm_get_state Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 253/292] pwm: meson: fix handling of period/duty if greater than UINT_MAX Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 254/292] accel/ivpu: Fix VPU register access in irq disable Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 255/292] accel/ivpu: Clear specific interrupt status bits on C0 Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 256/292] fprobe: Release rethook after the ftrace_ops is unregistered Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 257/292] fprobe: Ensure running fprobe_exit_handler() finished before calling rethook_free() Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 258/292] tracing: Fix null pointer dereference in tracing_err_log_open() Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 259/292] mptcp: do not rely on implicit state check in mptcp_listen() Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 260/292] mptcp: ensure subflow is unhashed before cleaning the backlog Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 261/292] selftests: mptcp: sockopt: use iptables-legacy if available Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 262/292] selftests: mptcp: connect: fail if nft supposed to work Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 263/292] selftests: mptcp: sockopt: return error if wrong mark Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 264/292] selftests: mptcp: userspace_pm: use correct server port Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 265/292] selftests: mptcp: userspace_pm: report errors with remove tests Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 266/292] selftests: mptcp: depend on SYN_COOKIES Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 267/292] selftests: mptcp: pm_nl_ctl: fix 32-bit support Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 268/292] smb: client: Fix -Wstringop-overflow issues Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 269/292] tracing/probes: Fix to avoid double count of the string length on the array Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 270/292] tracing/probes: Fix not to count error code to total length Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 271/292] tracing/probes: Fix to update dynamic data counter if fetcharg uses it Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 272/292] Revert "tracing: Add "(fault)" name injection to kernel probes" Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 273/292] tracing/probes: Fix to record 0-length data_loc in fetch_store_string*() if fails Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 274/292] tracing/user_events: Fix struct arg size match check Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 275/292] scsi: qla2xxx: Multi-que support for TMF Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 276/292] scsi: qla2xxx: Fix task management cmd failure Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 277/292] scsi: qla2xxx: Fix task management cmd fail due to unavailable resource Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 278/292] scsi: qla2xxx: Fix hang in task management Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 279/292] scsi: qla2xxx: Wait for io return on terminate rport Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 280/292] scsi: qla2xxx: Fix mem access after free Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 281/292] scsi: qla2xxx: Array index may go out of bound Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 282/292] scsi: qla2xxx: Avoid fcport pointer dereference Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 283/292] scsi: qla2xxx: Fix buffer overrun Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 284/292] scsi: qla2xxx: Fix potential NULL pointer dereference Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 285/292] scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport() Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 286/292] scsi: qla2xxx: Correct the index of array Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 287/292] scsi: qla2xxx: Pointer may be dereferenced Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 288/292] scsi: qla2xxx: Remove unused nvme_ls_waitq wait queue Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 289/292] scsi: qla2xxx: Fix end of loop test Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 290/292] net: dsa: ocelot: unlock on error in vsc9959_qos_port_tas_set() Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 291/292] MIPS: kvm: Fix build error with KVM_MIPS_DEBUG_COP0_COUNTERS enabled Greg Kroah-Hartman
2023-07-21 16:06 ` [PATCH 6.4 292/292] Revert "drm/amd: Disable PSR-SU on Parade 0803 TCON" Greg Kroah-Hartman
2023-07-21 16:56 ` [PATCH 6.4 000/292] 6.4.5-rc1 review SeongJae Park
2023-07-21 17:54 ` Takeshi Ogasawara
2023-07-21 23:14 ` Justin Forbes
2023-07-22  4:21 ` Ron Economos
2023-07-22  6:50 ` Bagas Sanjaya
2023-07-22  8:06 ` Naresh Kamboju
2023-07-22 16:36   ` Linus Torvalds
2023-07-24 10:19     ` Alexander Potapenko
2023-07-24 12:10       ` Naresh Kamboju
2023-07-25  9:13         ` Naresh Kamboju
2023-07-25  9:59         ` Alexander Potapenko
2023-07-25 11:52           ` Alexander Potapenko
2023-07-25 13:39             ` Naresh Kamboju
2023-07-25 16:21               ` Alexander Potapenko
2023-07-26 16:52                 ` Alexander Potapenko
2023-07-27  7:02                   ` Muchun Song
2023-07-27  7:26                     ` Muchun Song
2023-07-25 13:36           ` Naresh Kamboju
2023-07-22 14:49 ` Florian Fainelli
2023-07-22 20:40 ` Guenter Roeck
2023-07-23  9:08 ` Jon Hunter
2023-07-23 10:41 ` Conor Dooley

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=20230721160534.733450725@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=akpm@linux-foundation.org \
    --cc=andreyknvl@gmail.com \
    --cc=arnd@arndb.de \
    --cc=dvyukov@google.com \
    --cc=elver@google.com \
    --cc=glider@google.com \
    --cc=patches@lists.linux.dev \
    --cc=ryabinin.a.a@gmail.com \
    --cc=stable@vger.kernel.org \
    --cc=vincenzo.frascino@arm.com \
    /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.