From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Zqiang <qiang.zhang1211@gmail.com>,
Zhixu Liu <zhixu.liu@gmail.com>,
Neeraj Upadhyay <neeraj.upadhyay@kernel.org>,
Sasha Levin <sashal@kernel.org>,
paulmck@kernel.org, frederic@kernel.org, joel@joelfernandes.org,
josh@joshtriplett.org, boqun.feng@gmail.com, urezki@gmail.com,
rcu@vger.kernel.org
Subject: [PATCH AUTOSEL 6.10 096/197] rcu-tasks: Fix access non-existent percpu rtpcp variable in rcu_tasks_need_gpcb()
Date: Wed, 25 Sep 2024 07:51:55 -0400 [thread overview]
Message-ID: <20240925115823.1303019-96-sashal@kernel.org> (raw)
In-Reply-To: <20240925115823.1303019-1-sashal@kernel.org>
From: Zqiang <qiang.zhang1211@gmail.com>
[ Upstream commit fd70e9f1d85f5323096ad313ba73f5fe3d15ea41 ]
For kernels built with CONFIG_FORCE_NR_CPUS=y, the nr_cpu_ids is
defined as NR_CPUS instead of the number of possible cpus, this
will cause the following system panic:
smpboot: Allowing 4 CPUs, 0 hotplug CPUs
...
setup_percpu: NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:512 nr_node_ids:1
...
BUG: unable to handle page fault for address: ffffffff9911c8c8
Oops: 0000 [#1] PREEMPT SMP PTI
CPU: 0 PID: 15 Comm: rcu_tasks_trace Tainted: G W
6.6.21 #1 5dc7acf91a5e8e9ac9dcfc35bee0245691283ea6
RIP: 0010:rcu_tasks_need_gpcb+0x25d/0x2c0
RSP: 0018:ffffa371c00a3e60 EFLAGS: 00010082
CR2: ffffffff9911c8c8 CR3: 000000040fa20005 CR4: 00000000001706f0
Call Trace:
<TASK>
? __die+0x23/0x80
? page_fault_oops+0xa4/0x180
? exc_page_fault+0x152/0x180
? asm_exc_page_fault+0x26/0x40
? rcu_tasks_need_gpcb+0x25d/0x2c0
? __pfx_rcu_tasks_kthread+0x40/0x40
rcu_tasks_one_gp+0x69/0x180
rcu_tasks_kthread+0x94/0xc0
kthread+0xe8/0x140
? __pfx_kthread+0x40/0x40
ret_from_fork+0x34/0x80
? __pfx_kthread+0x40/0x40
ret_from_fork_asm+0x1b/0x80
</TASK>
Considering that there may be holes in the CPU numbers, use the
maximum possible cpu number, instead of nr_cpu_ids, for configuring
enqueue and dequeue limits.
[ neeraj.upadhyay: Fix htmldocs build error reported by Stephen Rothwell ]
Closes: https://lore.kernel.org/linux-input/CALMA0xaTSMN+p4xUXkzrtR5r6k7hgoswcaXx7baR_z9r5jjskw@mail.gmail.com/T/#u
Reported-by: Zhixu Liu <zhixu.liu@gmail.com>
Signed-off-by: Zqiang <qiang.zhang1211@gmail.com>
Signed-off-by: Neeraj Upadhyay <neeraj.upadhyay@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
kernel/rcu/tasks.h | 82 ++++++++++++++++++++++++++++++----------------
1 file changed, 53 insertions(+), 29 deletions(-)
diff --git a/kernel/rcu/tasks.h b/kernel/rcu/tasks.h
index ba3440a45b6dd..bc8429ada7a51 100644
--- a/kernel/rcu/tasks.h
+++ b/kernel/rcu/tasks.h
@@ -34,6 +34,7 @@ typedef void (*postgp_func_t)(struct rcu_tasks *rtp);
* @rtp_blkd_tasks: List of tasks blocked as readers.
* @rtp_exit_list: List of tasks in the latter portion of do_exit().
* @cpu: CPU number corresponding to this entry.
+ * @index: Index of this CPU in rtpcp_array of the rcu_tasks structure.
* @rtpp: Pointer to the rcu_tasks structure.
*/
struct rcu_tasks_percpu {
@@ -49,6 +50,7 @@ struct rcu_tasks_percpu {
struct list_head rtp_blkd_tasks;
struct list_head rtp_exit_list;
int cpu;
+ int index;
struct rcu_tasks *rtpp;
};
@@ -76,6 +78,7 @@ struct rcu_tasks_percpu {
* @call_func: This flavor's call_rcu()-equivalent function.
* @wait_state: Task state for synchronous grace-period waits (default TASK_UNINTERRUPTIBLE).
* @rtpcpu: This flavor's rcu_tasks_percpu structure.
+ * @rtpcp_array: Array of pointers to rcu_tasks_percpu structure of CPUs in cpu_possible_mask.
* @percpu_enqueue_shift: Shift down CPU ID this much when enqueuing callbacks.
* @percpu_enqueue_lim: Number of per-CPU callback queues in use for enqueuing.
* @percpu_dequeue_lim: Number of per-CPU callback queues in use for dequeuing.
@@ -110,6 +113,7 @@ struct rcu_tasks {
call_rcu_func_t call_func;
unsigned int wait_state;
struct rcu_tasks_percpu __percpu *rtpcpu;
+ struct rcu_tasks_percpu **rtpcp_array;
int percpu_enqueue_shift;
int percpu_enqueue_lim;
int percpu_dequeue_lim;
@@ -182,6 +186,8 @@ module_param(rcu_task_collapse_lim, int, 0444);
static int rcu_task_lazy_lim __read_mostly = 32;
module_param(rcu_task_lazy_lim, int, 0444);
+static int rcu_task_cpu_ids;
+
/* RCU tasks grace-period state for debugging. */
#define RTGS_INIT 0
#define RTGS_WAIT_WAIT_CBS 1
@@ -245,6 +251,8 @@ static void cblist_init_generic(struct rcu_tasks *rtp)
int cpu;
int lim;
int shift;
+ int maxcpu;
+ int index = 0;
if (rcu_task_enqueue_lim < 0) {
rcu_task_enqueue_lim = 1;
@@ -254,14 +262,9 @@ static void cblist_init_generic(struct rcu_tasks *rtp)
}
lim = rcu_task_enqueue_lim;
- if (lim > nr_cpu_ids)
- lim = nr_cpu_ids;
- shift = ilog2(nr_cpu_ids / lim);
- if (((nr_cpu_ids - 1) >> shift) >= lim)
- shift++;
- WRITE_ONCE(rtp->percpu_enqueue_shift, shift);
- WRITE_ONCE(rtp->percpu_dequeue_lim, lim);
- smp_store_release(&rtp->percpu_enqueue_lim, lim);
+ rtp->rtpcp_array = kcalloc(num_possible_cpus(), sizeof(struct rcu_tasks_percpu *), GFP_KERNEL);
+ BUG_ON(!rtp->rtpcp_array);
+
for_each_possible_cpu(cpu) {
struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
@@ -273,14 +276,29 @@ static void cblist_init_generic(struct rcu_tasks *rtp)
INIT_WORK(&rtpcp->rtp_work, rcu_tasks_invoke_cbs_wq);
rtpcp->cpu = cpu;
rtpcp->rtpp = rtp;
+ rtpcp->index = index;
+ rtp->rtpcp_array[index] = rtpcp;
+ index++;
if (!rtpcp->rtp_blkd_tasks.next)
INIT_LIST_HEAD(&rtpcp->rtp_blkd_tasks);
if (!rtpcp->rtp_exit_list.next)
INIT_LIST_HEAD(&rtpcp->rtp_exit_list);
+ maxcpu = cpu;
}
- pr_info("%s: Setting shift to %d and lim to %d rcu_task_cb_adjust=%d.\n", rtp->name,
- data_race(rtp->percpu_enqueue_shift), data_race(rtp->percpu_enqueue_lim), rcu_task_cb_adjust);
+ rcu_task_cpu_ids = maxcpu + 1;
+ if (lim > rcu_task_cpu_ids)
+ lim = rcu_task_cpu_ids;
+ shift = ilog2(rcu_task_cpu_ids / lim);
+ if (((rcu_task_cpu_ids - 1) >> shift) >= lim)
+ shift++;
+ WRITE_ONCE(rtp->percpu_enqueue_shift, shift);
+ WRITE_ONCE(rtp->percpu_dequeue_lim, lim);
+ smp_store_release(&rtp->percpu_enqueue_lim, lim);
+
+ pr_info("%s: Setting shift to %d and lim to %d rcu_task_cb_adjust=%d rcu_task_cpu_ids=%d.\n",
+ rtp->name, data_race(rtp->percpu_enqueue_shift), data_race(rtp->percpu_enqueue_lim),
+ rcu_task_cb_adjust, rcu_task_cpu_ids);
}
// Compute wakeup time for lazy callback timer.
@@ -348,7 +366,7 @@ static void call_rcu_tasks_generic(struct rcu_head *rhp, rcu_callback_t func,
rtpcp->rtp_n_lock_retries = 0;
}
if (rcu_task_cb_adjust && ++rtpcp->rtp_n_lock_retries > rcu_task_contend_lim &&
- READ_ONCE(rtp->percpu_enqueue_lim) != nr_cpu_ids)
+ READ_ONCE(rtp->percpu_enqueue_lim) != rcu_task_cpu_ids)
needadjust = true; // Defer adjustment to avoid deadlock.
}
// Queuing callbacks before initialization not yet supported.
@@ -368,10 +386,10 @@ static void call_rcu_tasks_generic(struct rcu_head *rhp, rcu_callback_t func,
raw_spin_unlock_irqrestore_rcu_node(rtpcp, flags);
if (unlikely(needadjust)) {
raw_spin_lock_irqsave(&rtp->cbs_gbl_lock, flags);
- if (rtp->percpu_enqueue_lim != nr_cpu_ids) {
+ if (rtp->percpu_enqueue_lim != rcu_task_cpu_ids) {
WRITE_ONCE(rtp->percpu_enqueue_shift, 0);
- WRITE_ONCE(rtp->percpu_dequeue_lim, nr_cpu_ids);
- smp_store_release(&rtp->percpu_enqueue_lim, nr_cpu_ids);
+ WRITE_ONCE(rtp->percpu_dequeue_lim, rcu_task_cpu_ids);
+ smp_store_release(&rtp->percpu_enqueue_lim, rcu_task_cpu_ids);
pr_info("Switching %s to per-CPU callback queuing.\n", rtp->name);
}
raw_spin_unlock_irqrestore(&rtp->cbs_gbl_lock, flags);
@@ -444,6 +462,8 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
dequeue_limit = smp_load_acquire(&rtp->percpu_dequeue_lim);
for (cpu = 0; cpu < dequeue_limit; cpu++) {
+ if (!cpu_possible(cpu))
+ continue;
struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
/* Advance and accelerate any new callbacks. */
@@ -481,7 +501,7 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
if (rcu_task_cb_adjust && ncbs <= rcu_task_collapse_lim) {
raw_spin_lock_irqsave(&rtp->cbs_gbl_lock, flags);
if (rtp->percpu_enqueue_lim > 1) {
- WRITE_ONCE(rtp->percpu_enqueue_shift, order_base_2(nr_cpu_ids));
+ WRITE_ONCE(rtp->percpu_enqueue_shift, order_base_2(rcu_task_cpu_ids));
smp_store_release(&rtp->percpu_enqueue_lim, 1);
rtp->percpu_dequeue_gpseq = get_state_synchronize_rcu();
gpdone = false;
@@ -496,7 +516,9 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
pr_info("Completing switch %s to CPU-0 callback queuing.\n", rtp->name);
}
if (rtp->percpu_dequeue_lim == 1) {
- for (cpu = rtp->percpu_dequeue_lim; cpu < nr_cpu_ids; cpu++) {
+ for (cpu = rtp->percpu_dequeue_lim; cpu < rcu_task_cpu_ids; cpu++) {
+ if (!cpu_possible(cpu))
+ continue;
struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
WARN_ON_ONCE(rcu_segcblist_n_cbs(&rtpcp->cblist));
@@ -511,30 +533,32 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
// Advance callbacks and invoke any that are ready.
static void rcu_tasks_invoke_cbs(struct rcu_tasks *rtp, struct rcu_tasks_percpu *rtpcp)
{
- int cpu;
- int cpunext;
int cpuwq;
unsigned long flags;
int len;
+ int index;
struct rcu_head *rhp;
struct rcu_cblist rcl = RCU_CBLIST_INITIALIZER(rcl);
struct rcu_tasks_percpu *rtpcp_next;
- cpu = rtpcp->cpu;
- cpunext = cpu * 2 + 1;
- if (cpunext < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
- rtpcp_next = per_cpu_ptr(rtp->rtpcpu, cpunext);
- cpuwq = rcu_cpu_beenfullyonline(cpunext) ? cpunext : WORK_CPU_UNBOUND;
- queue_work_on(cpuwq, system_wq, &rtpcp_next->rtp_work);
- cpunext++;
- if (cpunext < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
- rtpcp_next = per_cpu_ptr(rtp->rtpcpu, cpunext);
- cpuwq = rcu_cpu_beenfullyonline(cpunext) ? cpunext : WORK_CPU_UNBOUND;
+ index = rtpcp->index * 2 + 1;
+ if (index < num_possible_cpus()) {
+ rtpcp_next = rtp->rtpcp_array[index];
+ if (rtpcp_next->cpu < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
+ cpuwq = rcu_cpu_beenfullyonline(rtpcp_next->cpu) ? rtpcp_next->cpu : WORK_CPU_UNBOUND;
queue_work_on(cpuwq, system_wq, &rtpcp_next->rtp_work);
+ index++;
+ if (index < num_possible_cpus()) {
+ rtpcp_next = rtp->rtpcp_array[index];
+ if (rtpcp_next->cpu < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
+ cpuwq = rcu_cpu_beenfullyonline(rtpcp_next->cpu) ? rtpcp_next->cpu : WORK_CPU_UNBOUND;
+ queue_work_on(cpuwq, system_wq, &rtpcp_next->rtp_work);
+ }
+ }
}
}
- if (rcu_segcblist_empty(&rtpcp->cblist) || !cpu_possible(cpu))
+ if (rcu_segcblist_empty(&rtpcp->cblist))
return;
raw_spin_lock_irqsave_rcu_node(rtpcp, flags);
rcu_segcblist_advance(&rtpcp->cblist, rcu_seq_current(&rtp->tasks_gp_seq));
--
2.43.0
next prev parent reply other threads:[~2024-09-25 12:03 UTC|newest]
Thread overview: 199+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-25 11:50 [PATCH AUTOSEL 6.10 001/197] wifi: ath9k: fix possible integer overflow in ath9k_get_et_stats() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 002/197] wifi: rtw89: avoid to add interface to list twice when SER Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 003/197] wifi: ath9k_htc: Use __skb_set_length() for resetting urb before resubmit Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 004/197] crypto: x86/sha256 - Add parentheses around macros' single arguments Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 005/197] crypto: octeontx - Fix authenc setkey Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 006/197] crypto: octeontx2 " Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 007/197] ice: Adjust over allocation of memory in ice_sched_add_root_node() and ice_sched_add_node() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 008/197] wifi: iwlwifi: mvm: Fix a race in scan abort flow Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 009/197] wifi: iwlwifi: mvm: drop wrong STA selection in TX Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 010/197] wifi: cfg80211: Set correct chandef when starting CAC Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 011/197] net/xen-netback: prevent UAF in xenvif_flush_hash() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 012/197] net: hisilicon: hip04: fix OF node leak in probe() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 013/197] net: hisilicon: hns_dsaf_mac: fix OF node leak in hns_mac_get_info() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 014/197] net: hisilicon: hns_mdio: fix OF node leak in probe() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 015/197] ACPI: PAD: fix crash in exit_round_robin() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 016/197] ACPICA: Fix memory leak if acpi_ps_get_next_namepath() fails Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 017/197] ACPICA: Fix memory leak if acpi_ps_get_next_field() fails Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 018/197] fs/inode: Prevent dump_mapping() accessing invalid dentry.d_name.name Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 019/197] e1000e: avoid failing the system during pm_suspend Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 020/197] ACPI: resource: Skip IRQ override on Asus Vivobook Go E1404GAB Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 021/197] wifi: mt76: mt7915: disable tx worker during tx BA session enable/disable Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 022/197] net: sched: consistently use rcu_replace_pointer() in taprio_change() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 023/197] Bluetooth: btusb: Add Realtek RTL8852C support ID 0x0489:0xe122 Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 024/197] Bluetooth: btrtl: Set msft ext address filter quirk for RTL8852B Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 025/197] ACPI: video: Add force_vendor quirk for Panasonic Toughbook CF-18 Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 026/197] ACPI: CPPC: Add support for setting EPP register in FFH Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 027/197] blk_iocost: fix more out of bound shifts Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 028/197] nvme-pci: qdepth 1 quirk Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 029/197] wifi: ath12k: fix array out-of-bound access in SoC stats Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 030/197] wifi: ath11k: " Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 031/197] wifi: rtw88: select WANT_DEV_COREDUMP Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 032/197] l2tp: don't use tunnel socket sk_user_data in ppp procfs output Sasha Levin
2024-09-25 14:12 ` James Chapman
2024-10-06 0:30 ` Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 033/197] ACPI: EC: Do not release locks during operation region accesses Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 034/197] ACPICA: check null return of ACPI_ALLOCATE_ZEROED() in acpi_db_convert_to_package() Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 035/197] tipc: guard against string buffer overrun Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 036/197] net: mvpp2: Increase size of queue_name buffer Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 037/197] bnxt_en: Extend maximum length of version string by 1 byte Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 038/197] ipv4: Check !in_dev earlier for ioctl(SIOCSIFADDR) Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 039/197] wifi: rtw89: correct base HT rate mask for firmware Sasha Levin
2024-09-25 11:50 ` [PATCH AUTOSEL 6.10 040/197] netfilter: nf_tables: don't initialize registers in nft_do_chain() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 041/197] ipv4: Mask upper DSCP bits and ECN bits in NETLINK_FIB_LOOKUP family Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 042/197] nvme-keyring: restrict match length for version '1' identifiers Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 043/197] nvme-tcp: sanitize TLS key handling Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 044/197] nvme-tcp: check for invalidated or revoked key Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 045/197] net: atlantic: Avoid warning about potential string truncation Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 046/197] crypto: simd - Do not call crypto_alloc_tfm during registration Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 047/197] netpoll: Ensure clean state on setup failures Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 048/197] tcp: avoid reusing FIN_WAIT2 when trying to find port in connect() process Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 049/197] wifi: iwlwifi: mvm: use correct key iteration Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 050/197] wifi: iwlwifi: allow only CN mcc from WRDD Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 051/197] wifi: iwlwifi: mvm: avoid NULL pointer dereference Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 052/197] wifi: mac80211: fix RCU list iterations Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 053/197] ACPICA: iasl: handle empty connection_node Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 054/197] proc: add config & param to block forcing mem writes Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 055/197] drivers/perf: arm_spe: Use perf_allow_kernel() for permissions Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 056/197] can: netlink: avoid call to do_set_data_bittiming callback with stale can_priv::ctrlmode Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 057/197] netdev-genl: Set extack and fix error on napi-get Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 058/197] block: fix integer overflow in BLKSECDISCARD Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 059/197] arm64: trans_pgd: mark PTEs entries as valid to avoid dead kexec() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 060/197] net: phy: Check for read errors in SIOCGMIIREG Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 061/197] wifi: rtw89: avoid reading out of bounds when loading TX power FW elements Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 062/197] x86/bugs: Add missing NO_SSB flag Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 063/197] x86/bugs: Fix handling when SRSO mitigation is disabled Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 064/197] net: napi: Prevent overflow of napi_defer_hard_irqs Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 065/197] crypto: hisilicon - fix missed error branch Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 066/197] crypto: hisilicon/qm - reset device before enabling it Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 067/197] wifi: mt76: mt7915: add dummy HW offload of IEEE 802.11 fragmentation Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 068/197] wifi: mt76: mt7915: hold dev->mt76.mutex while disabling tx worker Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 069/197] net: tls: wait for async completion on last message Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 070/197] wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_cmd_802_11_scan_ext() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 071/197] netfs: Cancel dirty folios that have no storage destination Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 072/197] nfp: Use IRQF_NO_AUTOEN flag in request_irq() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 073/197] ALSA: usb-audio: Add input value sanity checks for standard types Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 074/197] x86/ioapic: Handle allocation failures gracefully Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 075/197] x86/apic: Remove logical destination mode for 64-bit Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 076/197] ALSA: usb-audio: Support multiple control interfaces Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 077/197] ALSA: usb-audio: Define macros for quirk table entries Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 078/197] ALSA: usb-audio: Replace complex quirk lines with macros Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 079/197] ALSA: usb-audio: Add quirk for RME Digiface USB Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 080/197] ALSA: usb-audio: Add mixer " Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 081/197] ALSA: usb-audio: Add logitech Audio profile quirk Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 082/197] ASoC: codecs: wsa883x: Handle reading version failure Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 083/197] ALSA: control: Take power_ref lock primarily Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 084/197] tools/x86/kcpuid: Protect against faulty "max subleaf" values Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 085/197] x86/pkeys: Add PKRU as a parameter in signal handling functions Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 086/197] x86/pkeys: Restore altstack access in sigreturn() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 087/197] x86/kexec: Add EFI config table identity mapping for kexec kernel Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 088/197] x86/mm/ident_map: Use gbpages only where full GB page should be mapped Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 089/197] ALSA: asihpi: Fix potential OOB array access Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 090/197] ALSA: hdsp: Break infinite MIDI input flush loop Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 091/197] tools/nolibc: powerpc: limit stack-protector workaround to GCC Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 092/197] selftests/nolibc: avoid passing NULL to printf("%s") Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 093/197] ASoC: soc-pcm: Indicate warning if dpcm_playback/capture were used for availability limition Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 094/197] x86/syscall: Avoid memcpy() for ia32 syscall_get_arguments() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 095/197] ASoC: Intel: boards: always check the result of acpi_dev_get_first_match_dev() Sasha Levin
2024-09-25 11:51 ` Sasha Levin [this message]
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 097/197] hwmon: (nct6775) add G15CF to ASUS WMI monitoring list Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 098/197] fbdev: efifb: Register sysfs groups through driver core Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 099/197] fbdev: pxafb: Fix possible use after free in pxafb_task() Sasha Levin
2024-09-25 11:51 ` [PATCH AUTOSEL 6.10 100/197] pmdomain: core: Don't hold the genpd-lock when calling dev_pm_domain_set() Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 101/197] coredump: Standartize and fix logging Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 102/197] rcuscale: Provide clear error when async specified without primitives Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 103/197] iommu/arm-smmu-qcom: hide last LPASS SMMU context bank from linux Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 104/197] iommu/arm-smmu-qcom: Work around SDM845 Adreno SMMU w/ 16K pages Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 105/197] power: reset: brcmstb: Do not go into infinite loop if reset fails Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 106/197] iommu/arm-smmu-v3: Match Stall behaviour for S2 Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 107/197] iommu/vt-d: Always reserve a domain ID for identity setup Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 108/197] iommu/vt-d: Fix potential lockup if qi_submit_sync called with 0 count Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 109/197] iommu/vt-d: Unconditionally flush device TLB for pasid table updates Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 110/197] iommu/arm-smmu-v3: Do not use devm for the cd table allocations Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 111/197] cgroup: Disallow mounting v1 hierarchies without controller implementation Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 112/197] drm/stm: Avoid use-after-free issues with crtc and plane Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 113/197] drm/amd/display: Pass non-null to dcn20_validate_apply_pipe_split_flags Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 114/197] drm/amd/display: Check null pointers before using them Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 115/197] drm/amdgpu: disallow multiple BO_HANDLES chunks in one submit Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 116/197] drm/amdkfd: amdkfd_free_gtt_mem clear the correct pointer Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 117/197] drm/amd/display: Add null check for head_pipe in dcn201_acquire_free_pipe_for_layer Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 118/197] drm/amd/display: Add null check for head_pipe in dcn32_acquire_idle_pipe_for_head_pipe_in_layer Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 119/197] drm/amd/display: Add NULL check for clk_mgr and clk_mgr->funcs in dcn30_init_hw Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 120/197] drm/amd/display: Add NULL check for clk_mgr in dcn32_init_hw Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 121/197] drm/xe/hdcp: Check GSC structure validity Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 122/197] drm/amd/display: Add null check for top_pipe_to_program in commit_planes_for_stream Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 123/197] drm/amd/display: Use gpuvm_min_page_size_kbytes for DML2 surfaces Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 124/197] ata: pata_serverworks: Do not use the term blacklist Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 125/197] ata: sata_sil: Rename sil_blacklist to sil_quirks Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 126/197] scsi: smartpqi: Add new controller PCI IDs Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 127/197] HID: Ignore battery for all ELAN I2C-HID devices Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 128/197] drm/amd/display: Handle null 'stream_status' in 'planes_changed_for_existing_stream' Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 129/197] drm/amd/display: Add NULL check for function pointer in dcn20_set_output_transfer_func Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 130/197] drm/amd/display: Add NULL check for function pointer in dcn32_set_output_transfer_func Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 131/197] drm/amd/display: Check null pointers before using dc->clk_mgr Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 132/197] drm/amd/display: Add null check for 'afb' in amdgpu_dm_plane_handle_cursor_update (v2) Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 133/197] drm/amd/display: fix double free issue during amdgpu module unload Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 134/197] drm/amdgpu: add list empty check to avoid null pointer issue Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 135/197] jfs: UBSAN: shift-out-of-bounds in dbFindBits Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 136/197] jfs: Fix uaf in dbFreeBits Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 137/197] jfs: check if leafidx greater than num leaves per dmap tree Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 138/197] scsi: smartpqi: correct stream detection Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 139/197] scsi: smartpqi: add new controller PCI IDs Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 140/197] drm/msm/adreno: Assign msm_gpu->pdev earlier to avoid nullptrs Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 141/197] jfs: Fix uninit-value access of new_ea in ea_buffer Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 142/197] drm/amdgpu: add raven1 gfxoff quirk Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 143/197] drm/amdgpu: enable gfxoff quirk on HP 705G4 Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 144/197] drm/amdkfd: Fix resource leak in criu restore queue Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 145/197] HID: multitouch: Add support for Thinkpad X12 Gen 2 Kbd Portfolio Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 146/197] platform/x86: touchscreen_dmi: add nanote-next quirk Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 147/197] platform/x86/amd: pmf: Add quirk for TUF Gaming A14 Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 148/197] drm/stm: ltdc: reset plane transparency after plane disable Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 149/197] drm/amd/display: Check null-initialized variables Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 150/197] drm/amd/display: Check phantom_stream before it is used Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 151/197] drm/amd/display: Check stream before comparing them Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 152/197] drm/amd/display: Check link_res->hpo_dp_link_enc before using it Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 153/197] drm/amd/display: Fix index out of bounds in DCN30 degamma hardware format translation Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 154/197] drm/amd/display: Fix index out of bounds in " Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 155/197] drm/amd/display: Fix index out of bounds in DCN30 color transformation Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 156/197] drm/amdgpu/gfx9: properly handle error ints on all pipes Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 157/197] drm/amd/display: Avoid overflow assignment in link_dp_cts Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 158/197] drm/amd/display: Initialize get_bytes_per_element's default to 1 Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 159/197] drm/printer: Allow NULL data in devcoredump printer Sasha Levin
2024-09-25 11:52 ` [PATCH AUTOSEL 6.10 160/197] perf,x86: avoid missing caller address in stack traces captured in uprobe Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 161/197] scsi: aacraid: Rearrange order of struct aac_srb_unit Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 162/197] scsi: lpfc: Validate hdwq pointers before dereferencing in reset/errata paths Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 163/197] scsi: lpfc: Fix unsolicited FLOGI kref imbalance when in direct attached topology Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 164/197] scsi: lpfc: Update PRLO handling " Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 165/197] drm/amdgpu: fix unchecked return value warning for amdgpu_gfx Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 166/197] drm/amdgpu: fix unchecked return value warning for amdgpu_atombios Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 167/197] perf: Fix event_function_call() locking Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 168/197] scsi: NCR5380: Initialize buffer for MSG IN and STATUS transfers Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 169/197] drm/radeon/r100: Handle unknown family in r100_cp_init_microcode() Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 170/197] drm/amdgpu: Block MMR_READ IOCTL in reset Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 171/197] drm/amdgpu/gfx9: use rlc safe mode for soft recovery Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 172/197] drm/amdgpu/gfx11: enter safe mode before touching CP_INT_CNTL Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 173/197] drm/xe: Use topology to determine page fault queue size Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 174/197] drm/amd/pm: ensure the fw_info is not null before using it Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 175/197] drm/amdkfd: Check int source id for utcl2 poison event Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 176/197] drm/xe: Drop warn on xe_guc_pc_gucrc_disable in guc pc fini Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 177/197] of/irq: Refer to actual buffer size in of_irq_parse_one() Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 178/197] powerpc/pseries: Use correct data types from pseries_hp_errorlog struct Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 179/197] ovl: fsync after metadata copy-up Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 180/197] drm/amdgpu/gfx11: use rlc safe mode for soft recovery Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 181/197] drm/amdgpu/gfx10: " Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 182/197] platform/x86: lenovo-ymc: Ignore the 0x0 state Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 183/197] tools/hv: Add memory allocation check in hv_fcopy_start Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 184/197] HID: i2c-hid: ensure various commands do not interfere with each other Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 185/197] ksmbd: add refcnt to ksmbd_conn struct Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 186/197] platform/mellanox: mlxbf-pmc: fix lockdep warning Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 187/197] platform/x86: x86-android-tablets: Adjust Xiaomi Pad 2 bottom bezel touch buttons LED Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 188/197] ext4: don't set SB_RDONLY after filesystem errors Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 189/197] bpf: Make the pointer returned by iter next method valid Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 190/197] iomap: fix iomap_dio_zero() for fs bs > system page size Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 191/197] ext4: ext4_search_dir should return a proper error Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 192/197] ext4: avoid use-after-free in ext4_ext_show_leaf() Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 193/197] ext4: fix i_data_sem unlock order in ext4_ind_migrate() Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 194/197] bpftool: Fix undefined behavior caused by shifting into the sign bit Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 195/197] iomap: handle a post-direct I/O invalidate race in iomap_write_delalloc_release Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 196/197] bpftool: Fix undefined behavior in qsort(NULL, 0, ...) Sasha Levin
2024-09-25 11:53 ` [PATCH AUTOSEL 6.10 197/197] bpf: Fix a sdiv overflow issue Sasha Levin
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=20240925115823.1303019-96-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=boqun.feng@gmail.com \
--cc=frederic@kernel.org \
--cc=joel@joelfernandes.org \
--cc=josh@joshtriplett.org \
--cc=linux-kernel@vger.kernel.org \
--cc=neeraj.upadhyay@kernel.org \
--cc=paulmck@kernel.org \
--cc=qiang.zhang1211@gmail.com \
--cc=rcu@vger.kernel.org \
--cc=stable@vger.kernel.org \
--cc=urezki@gmail.com \
--cc=zhixu.liu@gmail.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