From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev, Pauli Virtanen <pav@iki.fi>,
Luiz Augusto von Dentz <luiz.von.dentz@intel.com>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.4 200/227] Bluetooth: use RCU for hci_conn_params and iterate safely in hci_sync
Date: Tue, 25 Jul 2023 12:46:07 +0200 [thread overview]
Message-ID: <20230725104523.073988223@linuxfoundation.org> (raw)
In-Reply-To: <20230725104514.821564989@linuxfoundation.org>
From: Pauli Virtanen <pav@iki.fi>
[ Upstream commit 195ef75e19287b4bc413da3e3e3722b030ac881e ]
hci_update_accept_list_sync iterates over hdev->pend_le_conns and
hdev->pend_le_reports, and waits for controller events in the loop body,
without holding hdev lock.
Meanwhile, these lists and the items may be modified e.g. by
le_scan_cleanup. This can invalidate the list cursor or any other item
in the list, resulting to invalid behavior (eg use-after-free).
Use RCU for the hci_conn_params action lists. Since the loop bodies in
hci_sync block and we cannot use RCU or hdev->lock for the whole loop,
copy list items first and then iterate on the copy. Only the flags field
is written from elsewhere, so READ_ONCE/WRITE_ONCE should guarantee we
read valid values.
Free params everywhere with hci_conn_params_free so the cleanup is
guaranteed to be done properly.
This fixes the following, which can be triggered e.g. by BlueZ new
mgmt-tester case "Add + Remove Device Nowait - Success", or by changing
hci_le_set_cig_params to always return false, and running iso-tester:
==================================================================
BUG: KASAN: slab-use-after-free in hci_update_passive_scan_sync (net/bluetooth/hci_sync.c:2536 net/bluetooth/hci_sync.c:2723 net/bluetooth/hci_sync.c:2841)
Read of size 8 at addr ffff888001265018 by task kworker/u3:0/32
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-1.fc38 04/01/2014
Workqueue: hci0 hci_cmd_sync_work
Call Trace:
<TASK>
dump_stack_lvl (./arch/x86/include/asm/irqflags.h:134 lib/dump_stack.c:107)
print_report (mm/kasan/report.c:320 mm/kasan/report.c:430)
? __virt_addr_valid (./include/linux/mmzone.h:1915 ./include/linux/mmzone.h:2011 arch/x86/mm/physaddr.c:65)
? hci_update_passive_scan_sync (net/bluetooth/hci_sync.c:2536 net/bluetooth/hci_sync.c:2723 net/bluetooth/hci_sync.c:2841)
kasan_report (mm/kasan/report.c:538)
? hci_update_passive_scan_sync (net/bluetooth/hci_sync.c:2536 net/bluetooth/hci_sync.c:2723 net/bluetooth/hci_sync.c:2841)
hci_update_passive_scan_sync (net/bluetooth/hci_sync.c:2536 net/bluetooth/hci_sync.c:2723 net/bluetooth/hci_sync.c:2841)
? __pfx_hci_update_passive_scan_sync (net/bluetooth/hci_sync.c:2780)
? mutex_lock (kernel/locking/mutex.c:282)
? __pfx_mutex_lock (kernel/locking/mutex.c:282)
? __pfx_mutex_unlock (kernel/locking/mutex.c:538)
? __pfx_update_passive_scan_sync (net/bluetooth/hci_sync.c:2861)
hci_cmd_sync_work (net/bluetooth/hci_sync.c:306)
process_one_work (./arch/x86/include/asm/preempt.h:27 kernel/workqueue.c:2399)
worker_thread (./include/linux/list.h:292 kernel/workqueue.c:2538)
? __pfx_worker_thread (kernel/workqueue.c:2480)
kthread (kernel/kthread.c:376)
? __pfx_kthread (kernel/kthread.c:331)
ret_from_fork (arch/x86/entry/entry_64.S:314)
</TASK>
Allocated by task 31:
kasan_save_stack (mm/kasan/common.c:46)
kasan_set_track (mm/kasan/common.c:52)
__kasan_kmalloc (mm/kasan/common.c:374 mm/kasan/common.c:383)
hci_conn_params_add (./include/linux/slab.h:580 ./include/linux/slab.h:720 net/bluetooth/hci_core.c:2277)
hci_connect_le_scan (net/bluetooth/hci_conn.c:1419 net/bluetooth/hci_conn.c:1589)
hci_connect_cis (net/bluetooth/hci_conn.c:2266)
iso_connect_cis (net/bluetooth/iso.c:390)
iso_sock_connect (net/bluetooth/iso.c:899)
__sys_connect (net/socket.c:2003 net/socket.c:2020)
__x64_sys_connect (net/socket.c:2027)
do_syscall_64 (arch/x86/entry/common.c:50 arch/x86/entry/common.c:80)
entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:120)
Freed by task 15:
kasan_save_stack (mm/kasan/common.c:46)
kasan_set_track (mm/kasan/common.c:52)
kasan_save_free_info (mm/kasan/generic.c:523)
__kasan_slab_free (mm/kasan/common.c:238 mm/kasan/common.c:200 mm/kasan/common.c:244)
__kmem_cache_free (mm/slub.c:1807 mm/slub.c:3787 mm/slub.c:3800)
hci_conn_params_del (net/bluetooth/hci_core.c:2323)
le_scan_cleanup (net/bluetooth/hci_conn.c:202)
process_one_work (./arch/x86/include/asm/preempt.h:27 kernel/workqueue.c:2399)
worker_thread (./include/linux/list.h:292 kernel/workqueue.c:2538)
kthread (kernel/kthread.c:376)
ret_from_fork (arch/x86/entry/entry_64.S:314)
==================================================================
Fixes: e8907f76544f ("Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 3")
Signed-off-by: Pauli Virtanen <pav@iki.fi>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
include/net/bluetooth/hci_core.h | 5 ++
net/bluetooth/hci_conn.c | 10 +--
net/bluetooth/hci_core.c | 38 ++++++++--
net/bluetooth/hci_event.c | 12 ++--
net/bluetooth/hci_sync.c | 117 ++++++++++++++++++++++++++++---
net/bluetooth/mgmt.c | 26 +++----
6 files changed, 164 insertions(+), 44 deletions(-)
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index 9654567cfae37..870b6d3c5146b 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -822,6 +822,7 @@ struct hci_conn_params {
struct hci_conn *conn;
bool explicit_connect;
+ /* Accessed without hdev->lock: */
hci_conn_flags_t flags;
u8 privacy_mode;
};
@@ -1573,7 +1574,11 @@ struct hci_conn_params *hci_conn_params_add(struct hci_dev *hdev,
bdaddr_t *addr, u8 addr_type);
void hci_conn_params_del(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type);
void hci_conn_params_clear_disabled(struct hci_dev *hdev);
+void hci_conn_params_free(struct hci_conn_params *param);
+void hci_pend_le_list_del_init(struct hci_conn_params *param);
+void hci_pend_le_list_add(struct hci_conn_params *param,
+ struct list_head *list);
struct hci_conn_params *hci_pend_le_action_lookup(struct list_head *list,
bdaddr_t *addr,
u8 addr_type);
diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c
index 2275e0d9f8419..7b0c74ef93296 100644
--- a/net/bluetooth/hci_conn.c
+++ b/net/bluetooth/hci_conn.c
@@ -118,7 +118,7 @@ static void hci_connect_le_scan_cleanup(struct hci_conn *conn, u8 status)
*/
params->explicit_connect = false;
- list_del_init(¶ms->action);
+ hci_pend_le_list_del_init(params);
switch (params->auto_connect) {
case HCI_AUTO_CONN_EXPLICIT:
@@ -127,10 +127,10 @@ static void hci_connect_le_scan_cleanup(struct hci_conn *conn, u8 status)
return;
case HCI_AUTO_CONN_DIRECT:
case HCI_AUTO_CONN_ALWAYS:
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
break;
case HCI_AUTO_CONN_REPORT:
- list_add(¶ms->action, &hdev->pend_le_reports);
+ hci_pend_le_list_add(params, &hdev->pend_le_reports);
break;
default:
break;
@@ -1426,8 +1426,8 @@ static int hci_explicit_conn_params_set(struct hci_dev *hdev,
if (params->auto_connect == HCI_AUTO_CONN_DISABLED ||
params->auto_connect == HCI_AUTO_CONN_REPORT ||
params->auto_connect == HCI_AUTO_CONN_EXPLICIT) {
- list_del_init(¶ms->action);
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_del_init(params);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
}
params->explicit_connect = true;
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index 48917c68358de..b421e196f60c3 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -2249,21 +2249,45 @@ struct hci_conn_params *hci_conn_params_lookup(struct hci_dev *hdev,
return NULL;
}
-/* This function requires the caller holds hdev->lock */
+/* This function requires the caller holds hdev->lock or rcu_read_lock */
struct hci_conn_params *hci_pend_le_action_lookup(struct list_head *list,
bdaddr_t *addr, u8 addr_type)
{
struct hci_conn_params *param;
- list_for_each_entry(param, list, action) {
+ rcu_read_lock();
+
+ list_for_each_entry_rcu(param, list, action) {
if (bacmp(¶m->addr, addr) == 0 &&
- param->addr_type == addr_type)
+ param->addr_type == addr_type) {
+ rcu_read_unlock();
return param;
+ }
}
+ rcu_read_unlock();
+
return NULL;
}
+/* This function requires the caller holds hdev->lock */
+void hci_pend_le_list_del_init(struct hci_conn_params *param)
+{
+ if (list_empty(¶m->action))
+ return;
+
+ list_del_rcu(¶m->action);
+ synchronize_rcu();
+ INIT_LIST_HEAD(¶m->action);
+}
+
+/* This function requires the caller holds hdev->lock */
+void hci_pend_le_list_add(struct hci_conn_params *param,
+ struct list_head *list)
+{
+ list_add_rcu(¶m->action, list);
+}
+
/* This function requires the caller holds hdev->lock */
struct hci_conn_params *hci_conn_params_add(struct hci_dev *hdev,
bdaddr_t *addr, u8 addr_type)
@@ -2297,14 +2321,15 @@ struct hci_conn_params *hci_conn_params_add(struct hci_dev *hdev,
return params;
}
-static void hci_conn_params_free(struct hci_conn_params *params)
+void hci_conn_params_free(struct hci_conn_params *params)
{
+ hci_pend_le_list_del_init(params);
+
if (params->conn) {
hci_conn_drop(params->conn);
hci_conn_put(params->conn);
}
- list_del(¶ms->action);
list_del(¶ms->list);
kfree(params);
}
@@ -2342,8 +2367,7 @@ void hci_conn_params_clear_disabled(struct hci_dev *hdev)
continue;
}
- list_del(¶ms->list);
- kfree(params);
+ hci_conn_params_free(params);
}
BT_DBG("All LE disabled connection parameters were removed");
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index 21e26d3b286cc..72b6d189d3de2 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -1564,7 +1564,7 @@ static u8 hci_cc_le_set_privacy_mode(struct hci_dev *hdev, void *data,
params = hci_conn_params_lookup(hdev, &cp->bdaddr, cp->bdaddr_type);
if (params)
- params->privacy_mode = cp->mode;
+ WRITE_ONCE(params->privacy_mode, cp->mode);
hci_dev_unlock(hdev);
@@ -2804,8 +2804,8 @@ static void hci_cs_disconnect(struct hci_dev *hdev, u8 status)
case HCI_AUTO_CONN_DIRECT:
case HCI_AUTO_CONN_ALWAYS:
- list_del_init(¶ms->action);
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_del_init(params);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
break;
default:
@@ -3423,8 +3423,8 @@ static void hci_disconn_complete_evt(struct hci_dev *hdev, void *data,
case HCI_AUTO_CONN_DIRECT:
case HCI_AUTO_CONN_ALWAYS:
- list_del_init(¶ms->action);
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_del_init(params);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
hci_update_passive_scan(hdev);
break;
@@ -5961,7 +5961,7 @@ static void le_conn_complete_evt(struct hci_dev *hdev, u8 status,
params = hci_pend_le_action_lookup(&hdev->pend_le_conns, &conn->dst,
conn->dst_type);
if (params) {
- list_del_init(¶ms->action);
+ hci_pend_le_list_del_init(params);
if (params->conn) {
hci_conn_drop(params->conn);
hci_conn_put(params->conn);
diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c
index b5b1b610df335..1bcb54272dc67 100644
--- a/net/bluetooth/hci_sync.c
+++ b/net/bluetooth/hci_sync.c
@@ -2160,15 +2160,23 @@ static int hci_le_del_accept_list_sync(struct hci_dev *hdev,
return 0;
}
+struct conn_params {
+ bdaddr_t addr;
+ u8 addr_type;
+ hci_conn_flags_t flags;
+ u8 privacy_mode;
+};
+
/* Adds connection to resolve list if needed.
* Setting params to NULL programs local hdev->irk
*/
static int hci_le_add_resolve_list_sync(struct hci_dev *hdev,
- struct hci_conn_params *params)
+ struct conn_params *params)
{
struct hci_cp_le_add_to_resolv_list cp;
struct smp_irk *irk;
struct bdaddr_list_with_irk *entry;
+ struct hci_conn_params *p;
if (!use_ll_privacy(hdev))
return 0;
@@ -2203,6 +2211,16 @@ static int hci_le_add_resolve_list_sync(struct hci_dev *hdev,
/* Default privacy mode is always Network */
params->privacy_mode = HCI_NETWORK_PRIVACY;
+ rcu_read_lock();
+ p = hci_pend_le_action_lookup(&hdev->pend_le_conns,
+ ¶ms->addr, params->addr_type);
+ if (!p)
+ p = hci_pend_le_action_lookup(&hdev->pend_le_reports,
+ ¶ms->addr, params->addr_type);
+ if (p)
+ WRITE_ONCE(p->privacy_mode, HCI_NETWORK_PRIVACY);
+ rcu_read_unlock();
+
done:
if (hci_dev_test_flag(hdev, HCI_PRIVACY))
memcpy(cp.local_irk, hdev->irk, 16);
@@ -2215,7 +2233,7 @@ static int hci_le_add_resolve_list_sync(struct hci_dev *hdev,
/* Set Device Privacy Mode. */
static int hci_le_set_privacy_mode_sync(struct hci_dev *hdev,
- struct hci_conn_params *params)
+ struct conn_params *params)
{
struct hci_cp_le_set_privacy_mode cp;
struct smp_irk *irk;
@@ -2240,6 +2258,8 @@ static int hci_le_set_privacy_mode_sync(struct hci_dev *hdev,
bacpy(&cp.bdaddr, &irk->bdaddr);
cp.mode = HCI_DEVICE_PRIVACY;
+ /* Note: params->privacy_mode is not updated since it is a copy */
+
return __hci_cmd_sync_status(hdev, HCI_OP_LE_SET_PRIVACY_MODE,
sizeof(cp), &cp, HCI_CMD_TIMEOUT);
}
@@ -2249,7 +2269,7 @@ static int hci_le_set_privacy_mode_sync(struct hci_dev *hdev,
* properly set the privacy mode.
*/
static int hci_le_add_accept_list_sync(struct hci_dev *hdev,
- struct hci_conn_params *params,
+ struct conn_params *params,
u8 *num_entries)
{
struct hci_cp_le_add_to_accept_list cp;
@@ -2447,6 +2467,52 @@ struct sk_buff *hci_read_local_oob_data_sync(struct hci_dev *hdev,
return __hci_cmd_sync_sk(hdev, opcode, 0, NULL, 0, HCI_CMD_TIMEOUT, sk);
}
+static struct conn_params *conn_params_copy(struct list_head *list, size_t *n)
+{
+ struct hci_conn_params *params;
+ struct conn_params *p;
+ size_t i;
+
+ rcu_read_lock();
+
+ i = 0;
+ list_for_each_entry_rcu(params, list, action)
+ ++i;
+ *n = i;
+
+ rcu_read_unlock();
+
+ p = kvcalloc(*n, sizeof(struct conn_params), GFP_KERNEL);
+ if (!p)
+ return NULL;
+
+ rcu_read_lock();
+
+ i = 0;
+ list_for_each_entry_rcu(params, list, action) {
+ /* Racing adds are handled in next scan update */
+ if (i >= *n)
+ break;
+
+ /* No hdev->lock, but: addr, addr_type are immutable.
+ * privacy_mode is only written by us or in
+ * hci_cc_le_set_privacy_mode that we wait for.
+ * We should be idempotent so MGMT updating flags
+ * while we are processing is OK.
+ */
+ bacpy(&p[i].addr, ¶ms->addr);
+ p[i].addr_type = params->addr_type;
+ p[i].flags = READ_ONCE(params->flags);
+ p[i].privacy_mode = READ_ONCE(params->privacy_mode);
+ ++i;
+ }
+
+ rcu_read_unlock();
+
+ *n = i;
+ return p;
+}
+
/* Device must not be scanning when updating the accept list.
*
* Update is done using the following sequence:
@@ -2466,11 +2532,12 @@ struct sk_buff *hci_read_local_oob_data_sync(struct hci_dev *hdev,
*/
static u8 hci_update_accept_list_sync(struct hci_dev *hdev)
{
- struct hci_conn_params *params;
+ struct conn_params *params;
struct bdaddr_list *b, *t;
u8 num_entries = 0;
bool pend_conn, pend_report;
u8 filter_policy;
+ size_t i, n;
int err;
/* Pause advertising if resolving list can be used as controllers
@@ -2504,6 +2571,7 @@ static u8 hci_update_accept_list_sync(struct hci_dev *hdev)
if (hci_conn_hash_lookup_le(hdev, &b->bdaddr, b->bdaddr_type))
continue;
+ /* Pointers not dereferenced, no locks needed */
pend_conn = hci_pend_le_action_lookup(&hdev->pend_le_conns,
&b->bdaddr,
b->bdaddr_type);
@@ -2532,23 +2600,50 @@ static u8 hci_update_accept_list_sync(struct hci_dev *hdev)
* available accept list entries in the controller, then
* just abort and return filer policy value to not use the
* accept list.
+ *
+ * The list and params may be mutated while we wait for events,
+ * so make a copy and iterate it.
*/
- list_for_each_entry(params, &hdev->pend_le_conns, action) {
- err = hci_le_add_accept_list_sync(hdev, params, &num_entries);
- if (err)
+
+ params = conn_params_copy(&hdev->pend_le_conns, &n);
+ if (!params) {
+ err = -ENOMEM;
+ goto done;
+ }
+
+ for (i = 0; i < n; ++i) {
+ err = hci_le_add_accept_list_sync(hdev, ¶ms[i],
+ &num_entries);
+ if (err) {
+ kvfree(params);
goto done;
+ }
}
+ kvfree(params);
+
/* After adding all new pending connections, walk through
* the list of pending reports and also add these to the
* accept list if there is still space. Abort if space runs out.
*/
- list_for_each_entry(params, &hdev->pend_le_reports, action) {
- err = hci_le_add_accept_list_sync(hdev, params, &num_entries);
- if (err)
+
+ params = conn_params_copy(&hdev->pend_le_reports, &n);
+ if (!params) {
+ err = -ENOMEM;
+ goto done;
+ }
+
+ for (i = 0; i < n; ++i) {
+ err = hci_le_add_accept_list_sync(hdev, ¶ms[i],
+ &num_entries);
+ if (err) {
+ kvfree(params);
goto done;
+ }
}
+ kvfree(params);
+
/* Use the allowlist unless the following conditions are all true:
* - We are not currently suspending
* - There are 1 or more ADV monitors registered and it's not offloaded
@@ -4839,12 +4934,12 @@ static void hci_pend_le_actions_clear(struct hci_dev *hdev)
struct hci_conn_params *p;
list_for_each_entry(p, &hdev->le_conn_params, list) {
+ hci_pend_le_list_del_init(p);
if (p->conn) {
hci_conn_drop(p->conn);
hci_conn_put(p->conn);
p->conn = NULL;
}
- list_del_init(&p->action);
}
BT_DBG("All LE pending actions cleared");
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index f7b2d0971f240..1e07d0f289723 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -1297,15 +1297,15 @@ static void restart_le_actions(struct hci_dev *hdev)
/* Needed for AUTO_OFF case where might not "really"
* have been powered off.
*/
- list_del_init(&p->action);
+ hci_pend_le_list_del_init(p);
switch (p->auto_connect) {
case HCI_AUTO_CONN_DIRECT:
case HCI_AUTO_CONN_ALWAYS:
- list_add(&p->action, &hdev->pend_le_conns);
+ hci_pend_le_list_add(p, &hdev->pend_le_conns);
break;
case HCI_AUTO_CONN_REPORT:
- list_add(&p->action, &hdev->pend_le_reports);
+ hci_pend_le_list_add(p, &hdev->pend_le_reports);
break;
default:
break;
@@ -5169,7 +5169,7 @@ static int set_device_flags(struct sock *sk, struct hci_dev *hdev, void *data,
goto unlock;
}
- params->flags = current_flags;
+ WRITE_ONCE(params->flags, current_flags);
status = MGMT_STATUS_SUCCESS;
/* Update passive scan if HCI_CONN_FLAG_DEVICE_PRIVACY
@@ -7580,7 +7580,7 @@ static int hci_conn_params_set(struct hci_dev *hdev, bdaddr_t *addr,
if (params->auto_connect == auto_connect)
return 0;
- list_del_init(¶ms->action);
+ hci_pend_le_list_del_init(params);
switch (auto_connect) {
case HCI_AUTO_CONN_DISABLED:
@@ -7589,18 +7589,18 @@ static int hci_conn_params_set(struct hci_dev *hdev, bdaddr_t *addr,
* connect to device, keep connecting.
*/
if (params->explicit_connect)
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
break;
case HCI_AUTO_CONN_REPORT:
if (params->explicit_connect)
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
else
- list_add(¶ms->action, &hdev->pend_le_reports);
+ hci_pend_le_list_add(params, &hdev->pend_le_reports);
break;
case HCI_AUTO_CONN_DIRECT:
case HCI_AUTO_CONN_ALWAYS:
if (!is_connected(hdev, addr, addr_type))
- list_add(¶ms->action, &hdev->pend_le_conns);
+ hci_pend_le_list_add(params, &hdev->pend_le_conns);
break;
}
@@ -7823,9 +7823,7 @@ static int remove_device(struct sock *sk, struct hci_dev *hdev,
goto unlock;
}
- list_del(¶ms->action);
- list_del(¶ms->list);
- kfree(params);
+ hci_conn_params_free(params);
device_removed(sk, hdev, &cp->addr.bdaddr, cp->addr.type);
} else {
@@ -7856,9 +7854,7 @@ static int remove_device(struct sock *sk, struct hci_dev *hdev,
p->auto_connect = HCI_AUTO_CONN_EXPLICIT;
continue;
}
- list_del(&p->action);
- list_del(&p->list);
- kfree(p);
+ hci_conn_params_free(p);
}
bt_dev_dbg(hdev, "All LE connection parameters were removed");
--
2.39.2
next prev parent reply other threads:[~2023-07-25 10:57 UTC|newest]
Thread overview: 283+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-25 10:42 [PATCH 6.4 000/227] 6.4.7-rc1 review Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 001/227] io_uring: treat -EAGAIN for REQ_F_NOWAIT as final for io-wq Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 002/227] io_uring: Fix io_uring mmap() by using architecture-provided get_unmapped_area() Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 003/227] ALSA: hda/realtek - remove 3k pull low procedure Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 004/227] ALSA: hda/realtek: Add quirk for Clevo NS70AU Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 005/227] ALSA: hda/realtek: Enable Mute LED on HP Laptop 15s-eq2xxx Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 006/227] maple_tree: set the node limit when creating a new root node Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 007/227] mm/mlock: fix vma iterator conversion of apply_vma_lock_flags() Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 008/227] maple_tree: fix node allocation testing on 32 bit Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 009/227] selftests/mm: mkdirty: fix incorrect position of #endif Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 010/227] keys: Fix linking a duplicate key to a keyrings assoc_array Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 011/227] prctl: move PR_GET_AUXV out of PR_MCE_KILL Greg Kroah-Hartman
2023-07-25 10:42 ` [PATCH 6.4 012/227] perf probe: Add test for regression introduced by switch to die_get_decl_file() Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 013/227] perf probe: Read DWARF files from the correct CU Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 014/227] btrfs: fix iput() on error pointer after error during orphan cleanup Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 015/227] btrfs: fix warning when putting transaction with qgroups enabled after abort Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 016/227] fuse: revalidate: dont invalidate if interrupted Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 017/227] fuse: add feature flag for expire-only Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 018/227] fuse: Apply flags2 only when userspace set the FUSE_INIT_EXT Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 019/227] btrfs: raid56: always verify the P/Q contents for scrub Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 020/227] btrfs: set_page_extent_mapped after read_folio in btrfs_cont_expand Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 021/227] btrfs: fix double iput() on inode after an error during orphan cleanup Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 022/227] btrfs: zoned: fix memory leak after finding block group with super blocks Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 023/227] fuse: ioctl: translate ENOSYS in outarg Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 024/227] btrfs: fix race between balance and cancel/pause Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 025/227] selftests: tc: set timeout to 15 minutes Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 026/227] accel/qaic: Fix a leak in map_user_pages() Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 027/227] selftests: tc: add ct action kconfig dep Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 028/227] regmap: Drop initial version of maximum transfer length fixes Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 029/227] s390/zcrypt: fix reply buffer calculations for CCA replies Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 030/227] of: Preserve "of-display" device name for compatibility Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 031/227] regmap: Account for register length in SMBus I/O limits Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 032/227] ia64: mmap: Consider pgoff when searching for free mapping Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 033/227] arm64/fpsimd: Ensure SME storage is allocated after SVE VL changes Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 034/227] can: mcp251xfd: __mcp251xfd_chip_set_mode(): increase poll timeout Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 035/227] can: bcm: Fix UAF in bcm_proc_show() Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 036/227] can: gs_usb: gs_can_open(): improve error handling Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 037/227] can: gs_usb: fix time stamp counter initialization Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 038/227] Revert "r8169: disable ASPM during NAPI poll" Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 039/227] selftests: tc: add ConnTrack procfs kconfig Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 040/227] accel/qaic: tighten bounds checking in encode_message() Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 041/227] accel/qaic: tighten bounds checking in decode_message() Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 042/227] accel/qaic: Add consistent integer overflow checks Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 043/227] dma-buf/dma-resv: Stop leaking on krealloc() failure Greg Kroah-Hartman
2023-07-25 10:43 ` Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 044/227] drm/amdgpu/vkms: relax timer deactivation by hrtimer_try_to_cancel Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 045/227] drm/amdgpu/pm: make gfxclock consistent for sienna cichlid Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 046/227] drm/amdgpu/pm: make mclk consistent for smu 13.0.7 Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 047/227] drm/nouveau/disp: PIOR DP uses GPIO for HPD, not PMGR AUX interrupts Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 048/227] drm/nouveau/kms/nv50-: init hpd_irq_lock for PIOR DP Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 049/227] drm/nouveau/i2c: fix number of aux event slots Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 050/227] drm/client: Fix memory leak in drm_client_target_cloned Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 051/227] drm/client: Fix memory leak in drm_client_modeset_probe Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 052/227] drm/amd/display: only accept async flips for fast updates Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 053/227] drm/amd/display: Disable MPC split by default on special asic Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 054/227] drm/amd/display: check TG is non-null before checking if enabled Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 055/227] drm/amd/display: Keep PHY active for DP displays on DCN31 Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 056/227] ASoC: fsl_sai: Disable bit clock with transmitter Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 057/227] ASoC: fsl_sai: Revert "ASoC: fsl_sai: Enable MCTL_MCLK_EN bit for master mode" Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 058/227] ASoC: tegra: Fix ADX byte map Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 059/227] ASoC: rt5640: Fix sleep in atomic context Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 060/227] ASoC: cs42l51: fix driver to properly autoload with automatic module loading Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 061/227] ASoC: codecs: wcd938x: fix missing clsh ctrl error handling Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 062/227] ASoC: cs35l45: Select REGMAP_IRQ Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 063/227] ASoC: codecs: wcd-mbhc-v2: fix resource leaks on component remove Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 064/227] ASoC: qdsp6: audioreach: fix topology probe deferral Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 065/227] ASoC: tegra: Fix AMX byte map Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 066/227] ASoC: codecs: wcd938x: fix resource leaks on component remove Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 067/227] ASoC: codecs: wcd938x: fix missing mbhc init error handling Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 068/227] ASoC: codecs: wcd934x: fix resource leaks on component remove Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 069/227] ASoC: codecs: wcd938x: fix codec initialisation race Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 070/227] ASoC: codecs: wcd938x: fix soundwire " Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 071/227] KVM: arm64: timers: Use CNTHCTL_EL2 when setting non-CNTKCTL_EL1 bits Greg Kroah-Hartman
2023-07-25 10:43 ` [PATCH 6.4 072/227] KVM: arm64: Correctly handle page aging notifiers for unaligned memslot Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 073/227] KVM: arm64: Disable preemption in kvm_arch_hardware_enable() Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 074/227] KVM: arm64: vgic-v4: Make the doorbell request robust w.r.t preemption Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 075/227] ext4: correct inline offset when handling xattrs in inode body Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 076/227] [PATCH AUTOSEL 5.4 01/12] drm/radeon: Fix integer overflow in radeon_cs_parser_init Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 077/227] [PATCH AUTOSEL 5.4 02/12] ALSA: emu10k1: roll up loops in DSP setup code for Audigy Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 078/227] [PATCH AUTOSEL 5.4 03/12] quota: Properly disable quotas when add_dquot_ref() fails Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 079/227] [PATCH AUTOSEL 5.4 04/12] quota: fix warning in dqgrab() Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 080/227] [PATCH AUTOSEL 5.4 05/12] HID: add quirk for 03f0:464a HP Elite Presenter Mouse Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 081/227] [PATCH AUTOSEL 5.4 06/12] ovl: check type and offset of struct vfsmount in ovl_entry Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 082/227] [PATCH AUTOSEL 5.4 07/12] udf: Fix uninitialized array access for some pathnames Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 083/227] [PATCH AUTOSEL 5.4 08/12] ALSA: hda/realtek: Add quirks for ROG ALLY CS35l41 audio Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 084/227] [PATCH AUTOSEL 5.4 09/12] fs: jfs: Fix UBSAN: array-index-out-of-bounds in dbAllocDmapLev Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 085/227] [PATCH AUTOSEL 5.4 10/12] MIPS: dec: prom: Address -Warray-bounds warning Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 086/227] [PATCH AUTOSEL 5.4 11/12] FS: JFS: Fix null-ptr-deref Read in txBegin Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 087/227] [PATCH AUTOSEL 5.4 12/12] FS: JFS: Check for read-only mounted filesystem " Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 088/227] md: fix data corruption for raid456 when reshape restart while grow up Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 089/227] md/raid10: prevent soft lockup while flush writes Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 090/227] scsi: sg: fix blktrace debugfs entries leakage Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 091/227] blk-mq: fix NULL dereference on q->elevator in blk_mq_elv_switch_none Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 092/227] posix-timers: Ensure timer ID search-loop limit is valid Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 093/227] btrfs: add xxhash to fast checksum implementations Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 094/227] btrfs: dont check PageError in __extent_writepage Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 095/227] btrfs: abort transaction at update_ref_for_cow() when ref count is zero Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 096/227] erofs: Fix detection of atomic context Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 097/227] ACPI: x86: Add skip i2c clients quirk for Nextbook Ares 8A Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 098/227] ACPI: button: Add lid disable DMI " Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 099/227] ACPI: x86: Add ACPI_QUIRK_UART1_SKIP for Lenovo Yoga Book yb1-x90f/l Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 100/227] ACPI: video: Add backlight=native DMI quirk for Apple iMac11,3 Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 101/227] ACPI: video: Add backlight=native DMI quirk for Lenovo ThinkPad X131e (3371 AMD version) Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 102/227] ACPI: resource: Remove "Zen" specific match and quirks Greg Kroah-Hartman
2023-07-26 23:06 ` August Wikerfors
2023-07-27 10:57 ` Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 103/227] arm64: set __exception_irq_entry with __irq_entry as a default Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 104/227] arm64: mm: fix VA-range sanity check Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 105/227] ACPI: video: Add backlight=native DMI quirk for Dell Studio 1569 Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 106/227] rcu-tasks: Avoid pr_info() with spin lock in cblist_init_generic() Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 107/227] rcu: Mark additional concurrent load from ->cpu_no_qs.b.exp Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 108/227] tools/nolibc: ensure stack protector guard is never zero Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 109/227] sched/fair: Dont balance task to its current running CPU Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 110/227] wifi: ath11k: fix registration of 6Ghz-only phy without the full channel range Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 111/227] bpf: Print a warning only if writing to unprivileged_bpf_disabled Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 112/227] bpf: Address KCSAN report on bpf_lru_list Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 113/227] spi: cadence-quadspi: Add compatible for AMD Pensando Elba SoC Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 114/227] bpf: drop unnecessary user-triggerable WARN_ONCE in verifierl log Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 115/227] bpf: tcp: Avoid taking fast sock lock in iterator Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 116/227] wifi: rtw88: sdio: Check the HISR RX_REQUEST bit in rtw_sdio_rx_isr() Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 117/227] bpf: Silence a warning in btf_type_id_size() Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 118/227] devlink: make health report on unregistered instance warn just once Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 119/227] wifi: ath11k: add support default regdb while searching board-2.bin for WCN6855 Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 120/227] wifi: mac80211_hwsim: Fix possible NULL dereference Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 121/227] spi: dw: Add compatible for Intel Mount Evans SoC Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 122/227] wifi: ath12k: Avoid NULL pointer access during management transmit cleanup Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 123/227] wifi: ath11k: fix memory leak in WMI firmware stats Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 124/227] wifi: iwlwifi: mvm: fix potential array out of bounds access Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 125/227] net: ethernet: litex: add support for 64 bit stats Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 126/227] devlink: report devlink_port_type_warn source device Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 127/227] wifi: iwlwifi: mvm: Add NULL check before dereferencing the pointer Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 128/227] wifi: wext-core: Fix -Wstringop-overflow warning in ioctl_standard_iw_point() Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 129/227] wifi: iwlwifi: Add support for new PCI Id Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 130/227] wifi: iwlwifi: mvm: avoid baid size integer overflow Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 131/227] wifi: iwlwifi: pcie: add device id 51F1 for killer 1675 Greg Kroah-Hartman
2023-07-25 10:44 ` [PATCH 6.4 132/227] igb: Fix igb_down hung on surprise removal Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 133/227] net: hns3: fix strncpy() not using dest-buf length as length issue Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 134/227] ASoC: amd: acp: fix for invalid dai id handling in acp_get_byte_count() Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 135/227] ASoC: codecs: wcd938x: fix mbhc impedance loglevel Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 136/227] ASoC: codecs: wcd938x: fix dB range for HPHL and HPHR Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 137/227] ASoC: qcom: q6apm: do not close GPR port before closing graph Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 138/227] iov_iter: Mark copy_iovec_from_user() noclone Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 139/227] sched/fair: Use recent_used_cpu to test p->cpus_ptr Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 140/227] sched/psi: use kernfs polling functions for PSI trigger polling Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 141/227] pinctrl: renesas: rzv2m: Handle non-unique subnode names Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 142/227] pinctrl: renesas: rzg2l: " Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 143/227] spi: bcm63xx: fix max prepend length Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 144/227] fbdev: imxfb: warn about invalid left/right margin Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 145/227] fbdev: imxfb: Removed unneeded release_mem_region Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 146/227] perf build: Fix library not found error when using CSLIBS Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 147/227] btrfs: be a bit more careful when setting mirror_num_ret in btrfs_map_block Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 148/227] spi: s3c64xx: clear loopback bit after loopback test Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 149/227] kallsyms: strip LTO-only suffixes from promoted global functions Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 150/227] smb: client: fix missed ses refcounting Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 151/227] arm64: Fix HFGxTR_EL2 field naming Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 152/227] dsa: mv88e6xxx: Do a final check before timing out Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 153/227] net: ethernet: ti: cpsw_ale: Fix cpsw_ale_get_field()/cpsw_ale_set_field() Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 154/227] bridge: Add extack warning when enabling STP in netns Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 155/227] net: ethernet: mtk_eth_soc: handle probe deferral Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 156/227] gso: fix dodgy bit handling for GSO_UDP_L4 Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 157/227] iommu/sva: Fix signedness bug in iommu_sva_alloc_pasid() Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 158/227] cifs: fix mid leak during reconnection after timeout threshold Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 159/227] ice: Unregister netdev and devlink_port only once Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 160/227] ice: prevent NULL pointer deref during reload Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 161/227] ASoC: SOF: ipc3-dtrace: uninitialized data in dfsentry_trace_filter_write() Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 162/227] regulator: da9063: fix null pointer deref with partial DT config Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 163/227] net: sched: cls_matchall: Undo tcf_bind_filter in case of failure after mall_set_parms Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 164/227] net: sched: cls_u32: Undo tcf_bind_filter if u32_replace_hw_knode Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 165/227] net: sched: cls_u32: Undo refcount decrement in case update failed Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 166/227] net: sched: cls_bpf: Undo tcf_bind_filter in case of an error Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 167/227] net: dsa: microchip: correct KSZ8795 static MAC table access Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 168/227] r8169: fix ASPM-related problem for chip version 42 and 43 Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 169/227] drm/i915/perf: add sentinel to xehp_oa_b_counters Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 170/227] iavf: Fix use-after-free in free_netdev Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 171/227] iavf: Fix out-of-bounds when setting channels on remove Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 172/227] iavf: use internal state to free traffic IRQs Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 173/227] iavf: make functions static where possible Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 174/227] iavf: Wait for reset in callbacks which trigger it Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 175/227] iavf: fix a deadlock caused by rtnl and drivers lock circular dependencies Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 176/227] iavf: fix reset task race with iavf_remove() Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 177/227] security: keys: Modify mismatched function name Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 178/227] vrf: Fix lockdep splat in output path Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 179/227] octeontx2-pf: Dont allocate BPIDs for LBK interfaces Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 180/227] bpf: Fix subprog idx logic in check_max_stack_depth Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 181/227] bpf: Repeat check_max_stack_depth for async callbacks Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 182/227] bpf, arm64: Fix BTI type used for freplace attached functions Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 183/227] igc: Avoid transmit queue timeout for XDP Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 184/227] igc: Prevent garbled TX queue with XDP ZEROCOPY Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 185/227] net: ipv4: use consistent txhash in TIME_WAIT and SYN_RECV Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 186/227] tcp: annotate data-races around tcp_rsk(req)->txhash Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 187/227] tcp: annotate data-races around tcp_rsk(req)->ts_recent Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 188/227] net: ipv4: Use kfree_sensitive instead of kfree Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 189/227] net:ipv6: check return value of pskb_trim() Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 190/227] Revert "tcp: avoid the lookup process failing to get sk in ehash table" Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 191/227] net: ethernet: mtk_eth_soc: always mtk_get_ib1_pkt_type Greg Kroah-Hartman
2023-07-25 10:45 ` [PATCH 6.4 192/227] fbdev: au1200fb: Fix missing IRQ check in au1200fb_drv_probe Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 193/227] llc: Dont drop packet from non-root netns Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 194/227] ALSA: hda/realtek: Fix generic fixup definition for cs35l41 amp Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 195/227] netfilter: nf_tables: fix spurious set element insertion failure Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 196/227] netfilter: nf_tables: cant schedule in nft_chain_validate Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 197/227] netfilter: nft_set_pipapo: fix improper element removal Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 198/227] netfilter: nf_tables: skip bound chain in netns release path Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 199/227] netfilter: nf_tables: skip bound chain on rule flush Greg Kroah-Hartman
2023-07-25 10:46 ` Greg Kroah-Hartman [this message]
2023-07-25 10:46 ` [PATCH 6.4 201/227] Bluetooth: hci_event: call disconnect callback before deleting conn Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 202/227] Bluetooth: ISO: fix iso_conn related locking and validity issues Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 203/227] Bluetooth: hci_sync: Avoid use-after-free in dbg for hci_remove_adv_monitor() Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 204/227] Bluetooth: hci_conn: return ERR_PTR instead of NULL when there is no link Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 205/227] Bluetooth: SCO: fix sco_conn related locking and validity issues Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 206/227] Bluetooth: btusb: Fix bluetooth on Intel Macbook 2014 Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 207/227] tcp: annotate data-races around tp->tcp_tx_delay Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 208/227] tcp: annotate data-races around tp->tsoffset Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 209/227] tcp: annotate data-races around tp->keepalive_time Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 210/227] tcp: annotate data-races around tp->keepalive_intvl Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 211/227] tcp: annotate data-races around tp->keepalive_probes Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 212/227] tcp: annotate data-races around icsk->icsk_syn_retries Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 213/227] tcp: annotate data-races around tp->linger2 Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 214/227] tcp: annotate data-races around rskq_defer_accept Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 215/227] tcp: annotate data-races around tp->notsent_lowat Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 216/227] tcp: annotate data-races around icsk->icsk_user_timeout Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 217/227] tcp: annotate data-races around fastopenq.max_qlen Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 218/227] net: phy: prevent stale pointer dereference in phy_init() Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 219/227] jbd2: recheck chechpointing non-dirty buffer Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 220/227] kbuild: rust: avoid creating temporary files Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 221/227] tracing/histograms: Return an error if we fail to add histogram to hist_vars list Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 222/227] drm/ttm: fix bulk_move corruption when adding a entry Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 223/227] spi: dw: Remove misleading comment for Mount Evans SoC Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 224/227] scsi/sg: dont grab scsi host module reference Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 225/227] scsi: sg: Fix checking return value of blk_get_queue() Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 226/227] drm/amd/display: Clean up errors & warnings in amdgpu_dm.c Greg Kroah-Hartman
2023-07-25 10:46 ` [PATCH 6.4 227/227] drm/amd/display: Add polling method to handle MST reply packet Greg Kroah-Hartman
2023-07-25 16:27 ` [PATCH 6.4 000/227] 6.4.7-rc1 review Jon Hunter
2023-07-25 18:12 ` SeongJae Park
2023-07-25 20:14 ` Shuah Khan
2023-07-25 23:05 ` Florian Fainelli
2023-07-26 6:14 ` Bagas Sanjaya
2023-07-26 6:58 ` Fenil Jain
2023-07-26 9:29 ` Conor Dooley
2023-07-26 9:34 ` Ron Economos
2023-07-26 10:11 ` Naresh Kamboju
2023-07-27 0:03 ` Guenter Roeck
2023-07-27 3:58 ` Joel Fernandes
2023-07-27 11:35 ` Pavel Machek
2023-07-27 13:26 ` Joel Fernandes
2023-07-27 14:06 ` Paul E. McKenney
2023-07-27 14:39 ` Guenter Roeck
2023-07-27 16:07 ` Paul E. McKenney
2023-07-27 17:39 ` Guenter Roeck
2023-07-27 20:33 ` Paul E. McKenney
2023-07-27 23:18 ` Joel Fernandes
[not found] ` <99B56FC7-9474-4968-B1DD-5862572FD0BA@joelfernandes.org>
2023-07-28 22:58 ` Paul E. McKenney
2023-07-29 1:25 ` Joel Fernandes
2023-07-29 5:50 ` Paul E. McKenney
2023-07-30 4:00 ` scheduler problems in -next (was: Re: [PATCH 6.4 000/227] 6.4.7-rc1 review) Guenter Roeck
2023-07-31 14:19 ` Peter Zijlstra
2023-07-31 14:35 ` Guenter Roeck
2023-07-31 14:47 ` Peter Zijlstra
2023-07-31 15:03 ` Guenter Roeck
2023-07-31 14:39 ` Peter Zijlstra
2023-07-31 14:48 ` Guenter Roeck
2023-07-31 14:52 ` Peter Zijlstra
2023-07-31 16:08 ` Roy Hopkins
2023-07-31 16:14 ` Peter Zijlstra
2023-07-31 16:30 ` Roy Hopkins
2023-07-31 16:34 ` Guenter Roeck
2023-07-31 21:15 ` Peter Zijlstra
2023-08-01 17:32 ` Guenter Roeck
2023-08-01 19:08 ` Peter Zijlstra
2023-08-01 21:32 ` Paul E. McKenney
2023-08-01 19:11 ` Paul E. McKenney
2023-08-01 19:14 ` Paul E. McKenney
2023-08-02 13:57 ` Roy Hopkins
2023-08-02 15:05 ` Paul E. McKenney
2023-08-02 15:31 ` Roy Hopkins
2023-08-02 16:51 ` Paul E. McKenney
2023-08-02 15:45 ` Guenter Roeck
2023-08-02 17:20 ` Paul E. McKenney
2023-08-02 17:14 ` Linus Torvalds
2023-08-02 17:48 ` Paul E. McKenney
2023-07-28 4:22 ` [PATCH 6.4 000/227] 6.4.7-rc1 review Guenter Roeck
2023-07-31 3:54 ` Paul E. McKenney
2023-07-31 3:56 ` Paul E. McKenney
2023-07-31 4:16 ` Guenter Roeck
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=20230725104523.073988223@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=luiz.von.dentz@intel.com \
--cc=patches@lists.linux.dev \
--cc=pav@iki.fi \
--cc=sashal@kernel.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.