public inbox for patches@lists.linux.dev
 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, Waiman Long <longman@redhat.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	Yang Shi <yang.shi@linux.alibaba.com>,
	"Joel Fernandes (Google)" <joel@joelfernandes.org>,
	Qian Cai <cai@gmx.us>, Zhong Jiang <zhongjiang@huawei.com>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 4.19 045/191] debugobjects: Add percpu free pools
Date: Mon, 15 May 2023 18:24:42 +0200	[thread overview]
Message-ID: <20230515161708.841675721@linuxfoundation.org> (raw)
In-Reply-To: <20230515161707.203549282@linuxfoundation.org>

From: Waiman Long <longman@redhat.com>

[ Upstream commit d86998b17a01050c0232231fa481e65ef8171ca6 ]

When a multi-threaded workload does a lot of small memory object
allocations and deallocations, it may cause the allocation and freeing of
many debug objects. This will make the global pool_lock a bottleneck in the
performance of the workload.  Since interrupts are disabled when acquiring
the pool_lock, it may even cause hard lockups to happen.

To reduce contention of the global pool_lock, add a percpu debug object
free pool that can be used to buffer some of the debug object allocation
and freeing requests without acquiring the pool_lock.  Each CPU will now
have a percpu free pool that can hold up to a maximum of 64 debug
objects. Allocation and freeing requests will go to the percpu free pool
first. If that fails, the pool_lock will be taken and the global free pool
will be used.

The presence or absence of obj_cache is used as a marker to see if the
percpu cache should be used.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Yang Shi <yang.shi@linux.alibaba.com>
Cc: "Joel Fernandes (Google)" <joel@joelfernandes.org>
Cc: Qian Cai <cai@gmx.us>
Cc: Zhong Jiang <zhongjiang@huawei.com>
Link: https://lkml.kernel.org/r/20190520141450.7575-2-longman@redhat.com
Stable-dep-of: 63a759694eed ("debugobject: Prevent init race with static objects")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 lib/debugobjects.c | 115 +++++++++++++++++++++++++++++++++++----------
 1 file changed, 91 insertions(+), 24 deletions(-)

diff --git a/lib/debugobjects.c b/lib/debugobjects.c
index 14afeeb7d6ef5..6e2baf9e9eb27 100644
--- a/lib/debugobjects.c
+++ b/lib/debugobjects.c
@@ -25,6 +25,7 @@
 
 #define ODEBUG_POOL_SIZE	1024
 #define ODEBUG_POOL_MIN_LEVEL	256
+#define ODEBUG_POOL_PERCPU_SIZE	64
 
 #define ODEBUG_CHUNK_SHIFT	PAGE_SHIFT
 #define ODEBUG_CHUNK_SIZE	(1 << ODEBUG_CHUNK_SHIFT)
@@ -35,6 +36,17 @@ struct debug_bucket {
 	raw_spinlock_t		lock;
 };
 
+/*
+ * Debug object percpu free list
+ * Access is protected by disabling irq
+ */
+struct debug_percpu_free {
+	struct hlist_head	free_objs;
+	int			obj_free;
+};
+
+static DEFINE_PER_CPU(struct debug_percpu_free, percpu_obj_pool);
+
 static struct debug_bucket	obj_hash[ODEBUG_HASH_SIZE];
 
 static struct debug_obj		obj_static_pool[ODEBUG_POOL_SIZE] __initdata;
@@ -44,13 +56,19 @@ static DEFINE_RAW_SPINLOCK(pool_lock);
 static HLIST_HEAD(obj_pool);
 static HLIST_HEAD(obj_to_free);
 
+/*
+ * Because of the presence of percpu free pools, obj_pool_free will
+ * under-count those in the percpu free pools. Similarly, obj_pool_used
+ * will over-count those in the percpu free pools. Adjustments will be
+ * made at debug_stats_show(). Both obj_pool_min_free and obj_pool_max_used
+ * can be off.
+ */
 static int			obj_pool_min_free = ODEBUG_POOL_SIZE;
 static int			obj_pool_free = ODEBUG_POOL_SIZE;
 static int			obj_pool_used;
 static int			obj_pool_max_used;
 /* The number of objs on the global free list */
 static int			obj_nr_tofree;
-static struct kmem_cache	*obj_cache;
 
 static int			debug_objects_maxchain __read_mostly;
 static int __maybe_unused	debug_objects_maxchecked __read_mostly;
@@ -63,6 +81,7 @@ static int			debug_objects_pool_size __read_mostly
 static int			debug_objects_pool_min_level __read_mostly
 				= ODEBUG_POOL_MIN_LEVEL;
 static struct debug_obj_descr	*descr_test  __read_mostly;
+static struct kmem_cache	*obj_cache __read_mostly;
 
 /*
  * Track numbers of kmem_cache_alloc()/free() calls done.
@@ -162,6 +181,21 @@ static struct debug_obj *lookup_object(void *addr, struct debug_bucket *b)
 	return NULL;
 }
 
+/*
+ * Allocate a new object from the hlist
+ */
+static struct debug_obj *__alloc_object(struct hlist_head *list)
+{
+	struct debug_obj *obj = NULL;
+
+	if (list->first) {
+		obj = hlist_entry(list->first, typeof(*obj), node);
+		hlist_del(&obj->node);
+	}
+
+	return obj;
+}
+
 /*
  * Allocate a new object. If the pool is empty, switch off the debugger.
  * Must be called with interrupts disabled.
@@ -169,20 +203,21 @@ static struct debug_obj *lookup_object(void *addr, struct debug_bucket *b)
 static struct debug_obj *
 alloc_object(void *addr, struct debug_bucket *b, struct debug_obj_descr *descr)
 {
-	struct debug_obj *obj = NULL;
-
-	raw_spin_lock(&pool_lock);
-	if (obj_pool.first) {
-		obj	    = hlist_entry(obj_pool.first, typeof(*obj), node);
-
-		obj->object = addr;
-		obj->descr  = descr;
-		obj->state  = ODEBUG_STATE_NONE;
-		obj->astate = 0;
-		hlist_del(&obj->node);
+	struct debug_percpu_free *percpu_pool;
+	struct debug_obj *obj;
 
-		hlist_add_head(&obj->node, &b->list);
+	if (likely(obj_cache)) {
+		percpu_pool = this_cpu_ptr(&percpu_obj_pool);
+		obj = __alloc_object(&percpu_pool->free_objs);
+		if (obj) {
+			percpu_pool->obj_free--;
+			goto init_obj;
+		}
+	}
 
+	raw_spin_lock(&pool_lock);
+	obj = __alloc_object(&obj_pool);
+	if (obj) {
 		obj_pool_used++;
 		if (obj_pool_used > obj_pool_max_used)
 			obj_pool_max_used = obj_pool_used;
@@ -193,6 +228,14 @@ alloc_object(void *addr, struct debug_bucket *b, struct debug_obj_descr *descr)
 	}
 	raw_spin_unlock(&pool_lock);
 
+init_obj:
+	if (obj) {
+		obj->object = addr;
+		obj->descr  = descr;
+		obj->state  = ODEBUG_STATE_NONE;
+		obj->astate = 0;
+		hlist_add_head(&obj->node, &b->list);
+	}
 	return obj;
 }
 
@@ -247,8 +290,21 @@ static bool __free_object(struct debug_obj *obj)
 {
 	unsigned long flags;
 	bool work;
+	struct debug_percpu_free *percpu_pool;
 
-	raw_spin_lock_irqsave(&pool_lock, flags);
+	local_irq_save(flags);
+	/*
+	 * Try to free it into the percpu pool first.
+	 */
+	percpu_pool = this_cpu_ptr(&percpu_obj_pool);
+	if (obj_cache && percpu_pool->obj_free < ODEBUG_POOL_PERCPU_SIZE) {
+		hlist_add_head(&obj->node, &percpu_pool->free_objs);
+		percpu_pool->obj_free++;
+		local_irq_restore(flags);
+		return false;
+	}
+
+	raw_spin_lock(&pool_lock);
 	work = (obj_pool_free > debug_objects_pool_size) && obj_cache;
 	obj_pool_used--;
 
@@ -259,7 +315,8 @@ static bool __free_object(struct debug_obj *obj)
 		obj_pool_free++;
 		hlist_add_head(&obj->node, &obj_pool);
 	}
-	raw_spin_unlock_irqrestore(&pool_lock, flags);
+	raw_spin_unlock(&pool_lock);
+	local_irq_restore(flags);
 	return work;
 }
 
@@ -822,13 +879,19 @@ void debug_check_no_obj_freed(const void *address, unsigned long size)
 
 static int debug_stats_show(struct seq_file *m, void *v)
 {
+	int cpu, obj_percpu_free = 0;
+
+	for_each_possible_cpu(cpu)
+		obj_percpu_free += per_cpu(percpu_obj_pool.obj_free, cpu);
+
 	seq_printf(m, "max_chain     :%d\n", debug_objects_maxchain);
 	seq_printf(m, "max_checked   :%d\n", debug_objects_maxchecked);
 	seq_printf(m, "warnings      :%d\n", debug_objects_warnings);
 	seq_printf(m, "fixups        :%d\n", debug_objects_fixups);
-	seq_printf(m, "pool_free     :%d\n", obj_pool_free);
+	seq_printf(m, "pool_free     :%d\n", obj_pool_free + obj_percpu_free);
+	seq_printf(m, "pool_pcp_free :%d\n", obj_percpu_free);
 	seq_printf(m, "pool_min_free :%d\n", obj_pool_min_free);
-	seq_printf(m, "pool_used     :%d\n", obj_pool_used);
+	seq_printf(m, "pool_used     :%d\n", obj_pool_used - obj_percpu_free);
 	seq_printf(m, "pool_max_used :%d\n", obj_pool_max_used);
 	seq_printf(m, "on_free_list  :%d\n", obj_nr_tofree);
 	seq_printf(m, "objs_allocated:%d\n", debug_objects_allocated);
@@ -1177,9 +1240,20 @@ static int __init debug_objects_replace_static_objects(void)
  */
 void __init debug_objects_mem_init(void)
 {
+	int cpu;
+
 	if (!debug_objects_enabled)
 		return;
 
+	/*
+	 * Initialize the percpu object pools
+	 *
+	 * Initialization is not strictly necessary, but was done for
+	 * completeness.
+	 */
+	for_each_possible_cpu(cpu)
+		INIT_HLIST_HEAD(&per_cpu(percpu_obj_pool.free_objs, cpu));
+
 	obj_cache = kmem_cache_create("debug_objects_cache",
 				      sizeof (struct debug_obj), 0,
 				      SLAB_DEBUG_OBJECTS | SLAB_NOLEAKTRACE,
@@ -1191,11 +1265,4 @@ void __init debug_objects_mem_init(void)
 		pr_warn("out of memory.\n");
 	} else
 		debug_objects_selftest();
-
-	/*
-	 * Increase the thresholds for allocating and freeing objects
-	 * according to the number of possible CPUs available in the system.
-	 */
-	debug_objects_pool_size += num_possible_cpus() * 32;
-	debug_objects_pool_min_level += num_possible_cpus() * 4;
 }
-- 
2.39.2




  parent reply	other threads:[~2023-05-15 16:40 UTC|newest]

Thread overview: 201+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-15 16:23 [PATCH 4.19 000/191] 4.19.283-rc1 review Greg Kroah-Hartman
2023-05-15 16:23 ` [PATCH 4.19 001/191] wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies() Greg Kroah-Hartman
2023-05-15 16:23 ` [PATCH 4.19 002/191] bluetooth: Perform careful capability checks in hci_sock_ioctl() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 003/191] USB: serial: option: add UNISOC vendor and TOZED LT70C product Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 004/191] iio: adc: palmas_gpadc: fix NULL dereference on rmmod Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 005/191] ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750 Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 006/191] stmmac: debugfs entry name is not be changed when udev rename device name Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 007/191] IMA: allow/fix UML builds Greg Kroah-Hartman
2023-05-16  8:47   ` Geert Uytterhoeven
2023-05-16  9:18     ` Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 008/191] USB: dwc3: fix runtime pm imbalance on unbind Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 009/191] perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE) Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 010/191] staging: iio: resolver: ads1210: fix config mode Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 011/191] debugfs: regset32: Add Runtime PM support Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 012/191] xhci: fix debugfs register accesses while suspended Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 013/191] MIPS: fw: Allow firmware to pass a empty env Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 014/191] pwm: meson: Fix axg ao mux parents Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 015/191] ring-buffer: Sync IRQ works before buffer destruction Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 016/191] reiserfs: Add security prefix to xattr name in reiserfs_security_write() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 017/191] KVM: nVMX: Emulate NOPs in L2, and PAUSE if its not intercepted Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 018/191] i2c: omap: Fix standard mode false ACK readings Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 019/191] Revert "ubifs: dirty_cow_znode: Fix memleak in error handling path" Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 020/191] ubifs: Fix memleak when insert_old_idx() failed Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 021/191] ubi: Fix return value overwrite issue in try_write_vid_and_data() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 022/191] ubifs: Free memory for tmpfile name Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 023/191] selinux: fix Makefile dependencies of flask.h Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 024/191] selinux: ensure av_permissions.h is built when needed Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 025/191] drm/rockchip: Drop unbalanced obj unref Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 026/191] drm/vgem: add missing mutex_destroy Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 027/191] drm/probe-helper: Cancel previous job before starting new one Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 028/191] EDAC, skx: Move debugfs node under EDACs hierarchy Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 029/191] EDAC/skx: Fix overflows on the DRAM row address mapping arrays Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 030/191] ARM: dts: qcom: ipq4019: Fix the PCI I/O port range Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 031/191] media: bdisp: Add missing check for create_workqueue Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 032/191] media: uapi: add MEDIA_BUS_FMT_METADATA_FIXED media bus format Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 033/191] media: av7110: prevent underflow in write_ts_to_decoder() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 034/191] firmware: qcom_scm: Clear download bit during reboot Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 035/191] drm/msm/adreno: Defer enabling runpm until hw_init() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 036/191] drm/msm/adreno: drop bogus pm_runtime_set_active() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 037/191] x86/apic: Fix atomic update of offset in reserve_eilvt_offset() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 038/191] media: dm1105: Fix use after free bug in dm1105_remove due to race condition Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 039/191] media: saa7134: fix use after free bug in saa7134_finidev " Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 040/191] media: rcar_fdp1: Fix the correct variable assignments Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 041/191] media: rcar_fdp1: Fix refcount leak in probe and remove function Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 042/191] media: rc: gpio-ir-recv: Fix support for wake-up Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 043/191] x86/ioapic: Dont return 0 from arch_dynirq_lower_bound() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 044/191] arm64: kgdb: Set PSTATE.SS to 1 to re-enable single-step Greg Kroah-Hartman
2023-05-15 16:24 ` Greg Kroah-Hartman [this message]
2023-05-15 16:24 ` [PATCH 4.19 046/191] debugobjects: Move printk out of db->lock critical sections Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 047/191] debugobject: Prevent init race with static objects Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 048/191] wifi: ath6kl: minor fix for allocation size Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 049/191] wifi: ath9k: hif_usb: fix memory leak of remain_skbs Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 050/191] wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list() Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 051/191] wifi: ath6kl: reduce WARN to dev_dbg() in callback Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 052/191] tools: bpftool: Remove invalid \ json escape Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 053/191] scm: fix MSG_CTRUNC setting condition for SO_PASSSEC Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 054/191] vlan: partially enable SIOCSHWTSTAMP in container Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 055/191] net/packet: convert po->origdev to an atomic flag Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 056/191] net/packet: convert po->auxdata " Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 057/191] scsi: target: iscsit: Fix TAS handling during conn cleanup Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 058/191] scsi: megaraid: Fix mega_cmd_done() CMDID_INT_CMDS Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 059/191] rtlwifi: rtl_pci: Fix memory leak when hardware init fails Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 060/191] rtlwifi: Start changing RT_TRACE into rtl_dbg Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 061/191] rtlwifi: Replace RT_TRACE with rtl_dbg Greg Kroah-Hartman
2023-05-15 16:24 ` [PATCH 4.19 062/191] wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 063/191] wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 064/191] bpftool: Fix bug for long instructions in program CFG dumps Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 065/191] crypto: drbg - make drbg_prepare_hrng() handle jent instantiation errors Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 066/191] crypto: drbg - Only fail when jent is unavailable in FIPS mode Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 067/191] md/raid10: fix leak of r10bio->remaining for recovery Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 068/191] md/raid10: fix memleak for conf->bio_split Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 069/191] md: update the optimal I/O size on reshape Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 070/191] md/raid10: fix memleak of md thread Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 071/191] wifi: iwlwifi: make the loop for card preparation effective Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 072/191] wifi: iwlwifi: mvm: check firmware response size Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 073/191] ixgbe: Allow flow hash to be set via ethtool Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 074/191] ixgbe: Enable setting RSS table to default values Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 075/191] netfilter: nf_tables: dont write table validation state without mutex Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 076/191] ipv4: Fix potential uninit variable access bug in __ip_make_skb() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 077/191] Revert "Bluetooth: btsdio: fix use after free bug in btsdio_remove due to unfinished work" Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 078/191] netlink: Use copy_to_user() for optval in netlink_getsockopt() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 079/191] net: amd: Fix link leak when verifying config failed Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 080/191] tcp/udp: Fix memleaks of sk and zerocopy skbs with TX timestamp Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 081/191] pstore: Revert pmsg_lock back to a normal mutex Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 082/191] usb: host: xhci-rcar: remove leftover quirk handling Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 083/191] fpga: bridge: fix kernel-doc parameter description Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 084/191] usb: gadget: udc: renesas_usb3: Fix use after free bug in renesas_usb3_remove due to race condition Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 085/191] linux/vt_buffer.h: allow either builtin or modular for macros Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 086/191] spi: qup: fix PM reference leak in spi_qup_remove() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 087/191] spi: qup: Dont skip cleanup in removes error path Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 088/191] spi: fsl-spi: Fix CPM/QE mode Litte Endian Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 089/191] vmci_host: fix a race condition in vmci_host_poll() causing GPF Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 090/191] of: Fix modalias string generation Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 091/191] ia64: mm/contig: fix section mismatch warning/error Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 092/191] ia64: salinfo: placate defined-but-not-used warning Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 093/191] mtd: spi-nor: cadence-quadspi: Make driver independent of flash geometry Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 094/191] mtd: spi-nor: cadence-quadspi: Dont initialize rx_dma_complete on failure Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 095/191] mtd: spi-nor: cadence-quadspi: Handle probe deferral while requesting DMA channel Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 096/191] spi: cadence-quadspi: fix suspend-resume implementations Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 097/191] uapi/linux/const.h: prefer ISO-friendly __typeof__ Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 098/191] sh: sq: Fix incorrect element size for allocating bitmap buffer Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 099/191] usb: chipidea: fix missing goto in `ci_hdrc_probe` Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 100/191] tty: serial: fsl_lpuart: adjust buffer length to the intended size Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 101/191] serial: 8250: Add missing wakeup event reporting Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 102/191] staging: rtl8192e: Fix W_DISABLE# does not work after stop/start Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 103/191] spmi: Add a check for remove callback when removing a SPMI driver Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 104/191] macintosh/windfarm_smu_sat: Add missing of_node_put() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 105/191] powerpc/mpc512x: fix resource printk format warning Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 106/191] powerpc/wii: fix resource printk format warnings Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 107/191] powerpc/sysdev/tsi108: " Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 108/191] macintosh: via-pmu-led: requires ATA to be set Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 109/191] powerpc/rtas: use memmove for potentially overlapping buffer copy Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 110/191] perf/core: Fix hardlockup failure caused by perf throttle Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 111/191] RDMA/rdmavt: Delete unnecessary NULL check Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 112/191] RDMA/mlx4: Prevent shift wrapping in set_user_sq_size() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 113/191] power: supply: generic-adc-battery: fix unit scaling Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 114/191] clk: add missing of_node_put() in "assigned-clocks" property parsing Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 115/191] IB/hfi1: Fix SDMA mmu_rb_node not being evicted in LRU order Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 116/191] NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 117/191] SUNRPC: remove the maximum number of retries in call_bind_status Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 118/191] RDMA/mlx5: Use correct device num_ports when modify DC Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 119/191] openrisc: Properly store r31 to pt_regs on unhandled exceptions Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 120/191] pwm: mtk-disp: Dont check the return code of pwmchip_remove() Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 121/191] pwm: mtk-disp: Adjust the clocks to avoid them mismatch Greg Kroah-Hartman
2023-05-15 16:25 ` [PATCH 4.19 122/191] pwm: mtk-disp: Disable shadow registers before setting backlight values Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 123/191] phy: tegra: xusb: Add missing tegra_xusb_port_unregister for usb2_port and ulpi_port Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 124/191] dmaengine: at_xdmac: do not enable all cyclic channels Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 125/191] parisc: Fix argument pointer in real64_call_asm() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 126/191] nilfs2: do not write dirty data after degenerating to read-only Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 127/191] nilfs2: fix infinite loop in nilfs_mdt_get_block() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 128/191] md/raid10: fix null-ptr-deref in raid10_sync_request Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 129/191] wifi: rtl8xxxu: RTL8192EU always needs full init Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 130/191] clk: rockchip: rk3399: allow clk_cifout to force clk_cifout_src to reparent Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 131/191] btrfs: scrub: reject unsupported scrub flags Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 132/191] s390/dasd: fix hanging blockdevice after request requeue Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 133/191] dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 134/191] dm flakey: fix a crash with invalid table line Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 135/191] dm ioctl: fix nested locking in table_clear() to remove deadlock concern Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 136/191] perf auxtrace: Fix address filter entire kernel size Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 137/191] debugobject: Ensure pool refill (again) Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 138/191] netfilter: nf_tables: deactivate anonymous set from preparation phase Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 139/191] nohz: Add TICK_DEP_BIT_RCU Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 140/191] tick/nohz: Fix cpu_is_hotpluggable() by checking with nohz subsystem Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 141/191] ipmi: Fix SSIF flag requests Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 142/191] ipmi: Fix how the lower layers are told to watch for messages Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 143/191] ipmi_ssif: Rename idle state and check Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 144/191] ipmi: fix SSIF not responding under certain cond Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 145/191] dm verity: skip redundant verity_handle_err() on I/O errors Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 146/191] dm verity: fix error handling for check_at_most_once on FEC Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 147/191] kernel/relay.c: fix read_pos error when multiple readers Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 148/191] relayfs: fix out-of-bounds access in relay_file_read Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 149/191] sit: update dev->needed_headroom in ipip6_tunnel_bind_dev() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 150/191] net: dsa: mv88e6xxx: Add missing watchdog ops for 6320 family Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 151/191] net: dsa: mv88e6xxx: add mv88e6321 rsvd2cpu Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 152/191] writeback: fix call of incorrect macro Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 153/191] net/sched: act_mirred: Add carrier check Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 154/191] rxrpc: Fix hard call timeout units Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 155/191] af_packet: Dont send zero-byte data in packet_sendmsg_spkt() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 156/191] drm/amdgpu: Add amdgpu_gfx_off_ctrl function Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 157/191] drm/amdgpu: Put enable gfx off feature to a delay thread Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 158/191] drm/amdgpu: Add command to override the context priority Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 159/191] drm/amdgpu: add a missing lock for AMDGPU_SCHED Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 160/191] ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init` Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 161/191] virtio_net: split free_unused_bufs() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 162/191] virtio_net: suppress cpu stall when free_unused_bufs Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 163/191] net: bcmgenet: Remove phy_stop() from bcmgenet_netif_stop() Greg Kroah-Hartman
2023-05-16  2:59   ` Florian Fainelli
2023-05-15 16:26 ` [PATCH 4.19 164/191] perf vendor events power9: Remove UTF-8 characters from JSON files Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 165/191] perf map: Delete two variable initialisations before null pointer checks in sort__sym_from_cmp() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 166/191] perf symbols: Fix return incorrect build_id size in elf_read_build_id() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 167/191] btrfs: fix btrfs_prev_leaf() to not return the same key twice Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 168/191] btrfs: print-tree: parent bytenr must be aligned to sector size Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 169/191] cifs: fix pcchunk length type in smb2_copychunk_range Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 170/191] platform/x86: touchscreen_dmi: Add info for the Dexp Ursus KX210i Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 171/191] sh: math-emu: fix macro redefined warning Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 172/191] sh: init: use OF_EARLY_FLATTREE for early init Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 173/191] sh: nmi_debug: fix return value of __setup handler Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 174/191] ARM: dts: exynos: fix WM8960 clock name in Itop Elite Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 175/191] ARM: dts: s5pv210: correct MIPI CSIS clock name Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 176/191] drm/panel: otm8009a: Set backlight parent to panel device Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 177/191] HID: wacom: Set a default resolution for older tablets Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 178/191] ext4: fix WARNING in mb_find_extent Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 179/191] ext4: avoid a potential slab-out-of-bounds in ext4_group_desc_csum Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 180/191] ext4: improve error recovery code paths in __ext4_remount() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 181/191] ext4: add bounds checking in get_max_inline_xattr_value_size() Greg Kroah-Hartman
2023-05-15 16:26 ` [PATCH 4.19 182/191] ext4: bail out of ext4_xattr_ibody_get() fails for any reason Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 183/191] ext4: remove a BUG_ON in ext4_mb_release_group_pa() Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 184/191] ext4: fix invalid free tracking in ext4_xattr_move_to_block() Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 185/191] tty: Prevent writing chars during tcsetattr TCSADRAIN/FLUSH Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 186/191] serial: 8250: Fix serial8250_tx_empty() race with DMA Tx Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 187/191] drbd: correctly submit flush bio on barrier Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 188/191] PCI: pciehp: Use down_read/write_nested(reset_lock) to fix lockdep errors Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 189/191] PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 190/191] printk: declare printk_deferred_{enter,safe}() in include/linux/printk.h Greg Kroah-Hartman
2023-05-15 16:27 ` [PATCH 4.19 191/191] mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock Greg Kroah-Hartman
2023-05-15 20:30 ` [PATCH 4.19 000/191] 4.19.283-rc1 review Chris Paterson
2023-05-16  1:33 ` Shuah Khan
2023-05-16  9:10 ` Sudip Mukherjee (Codethink)
2023-05-16 19:39 ` Naresh Kamboju
2023-05-17  2:47 ` Guenter Roeck
2023-05-17  7:55 ` Jon Hunter

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=20230515161708.841675721@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=akpm@linux-foundation.org \
    --cc=cai@gmx.us \
    --cc=joel@joelfernandes.org \
    --cc=longman@redhat.com \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=yang.shi@linux.alibaba.com \
    --cc=zhongjiang@huawei.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox