From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev,
syzbot+d32d77220b92eddd89ad@syzkaller.appspotmail.com,
Pauli Virtanen <pav@iki.fi>,
Luiz Augusto von Dentz <luiz.von.dentz@intel.com>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.17 008/146] Bluetooth: hci_core: lookup hci_conn on RX path on protocol side
Date: Wed, 3 Dec 2025 16:26:26 +0100 [thread overview]
Message-ID: <20251203152346.770142653@linuxfoundation.org> (raw)
In-Reply-To: <20251203152346.456176474@linuxfoundation.org>
6.17-stable review patch. If anyone has any objections, please let me know.
------------------
From: Pauli Virtanen <pav@iki.fi>
[ Upstream commit 79a2d4678ba90bdba577dc3af88cc900d6dcd5ee ]
The hdev lock/lookup/unlock/use pattern in the packet RX path doesn't
ensure hci_conn* is not concurrently modified/deleted. This locking
appears to be leftover from before conn_hash started using RCU
commit bf4c63252490b ("Bluetooth: convert conn hash to RCU")
and not clear if it had purpose since then.
Currently, there are code paths that delete hci_conn* from elsewhere
than the ordered hdev->workqueue where the RX work runs in. E.g.
commit 5af1f84ed13a ("Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync")
introduced some of these, and there probably were a few others before
it. It's better to do the locking so that even if these run
concurrently no UAF is possible.
Move the lookup of hci_conn and associated socket-specific conn to
protocol recv handlers, and do them within a single critical section
to cover hci_conn* usage and lookup.
syzkaller has reported a crash that appears to be this issue:
[Task hdev->workqueue] [Task 2]
hci_disconnect_all_sync
l2cap_recv_acldata(hcon)
hci_conn_get(hcon)
hci_abort_conn_sync(hcon)
hci_dev_lock
hci_dev_lock
hci_conn_del(hcon)
v-------------------------------- hci_dev_unlock
hci_conn_put(hcon)
conn = hcon->l2cap_data (UAF)
Fixes: 5af1f84ed13a ("Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync")
Reported-by: syzbot+d32d77220b92eddd89ad@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=d32d77220b92eddd89ad
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 | 20 ++++++---
net/bluetooth/hci_core.c | 73 +++++++++++---------------------
net/bluetooth/iso.c | 30 ++++++++++---
net/bluetooth/l2cap_core.c | 23 +++++++---
net/bluetooth/sco.c | 35 +++++++++++----
5 files changed, 108 insertions(+), 73 deletions(-)
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index 4ccb462a0a4b8..b020ce30929e6 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -855,11 +855,12 @@ extern struct mutex hci_cb_list_lock;
/* ----- HCI interface to upper protocols ----- */
int l2cap_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr);
int l2cap_disconn_ind(struct hci_conn *hcon);
-void l2cap_recv_acldata(struct hci_conn *hcon, struct sk_buff *skb, u16 flags);
+int l2cap_recv_acldata(struct hci_dev *hdev, u16 handle, struct sk_buff *skb,
+ u16 flags);
#if IS_ENABLED(CONFIG_BT_BREDR)
int sco_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr, __u8 *flags);
-void sco_recv_scodata(struct hci_conn *hcon, struct sk_buff *skb);
+int sco_recv_scodata(struct hci_dev *hdev, u16 handle, struct sk_buff *skb);
#else
static inline int sco_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
__u8 *flags)
@@ -867,23 +868,30 @@ static inline int sco_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
return 0;
}
-static inline void sco_recv_scodata(struct hci_conn *hcon, struct sk_buff *skb)
+static inline int sco_recv_scodata(struct hci_dev *hdev, u16 handle,
+ struct sk_buff *skb)
{
+ kfree_skb(skb);
+ return -ENOENT;
}
#endif
#if IS_ENABLED(CONFIG_BT_LE)
int iso_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr, __u8 *flags);
-void iso_recv(struct hci_conn *hcon, struct sk_buff *skb, u16 flags);
+int iso_recv(struct hci_dev *hdev, u16 handle, struct sk_buff *skb,
+ u16 flags);
#else
static inline int iso_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
__u8 *flags)
{
return 0;
}
-static inline void iso_recv(struct hci_conn *hcon, struct sk_buff *skb,
- u16 flags)
+
+static inline int iso_recv(struct hci_dev *hdev, u16 handle,
+ struct sk_buff *skb, u16 flags)
{
+ kfree_skb(skb);
+ return -ENOENT;
}
#endif
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index 72c7607aac209..057ec1a5230d9 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -3804,13 +3804,14 @@ static void hci_tx_work(struct work_struct *work)
static void hci_acldata_packet(struct hci_dev *hdev, struct sk_buff *skb)
{
struct hci_acl_hdr *hdr;
- struct hci_conn *conn;
__u16 handle, flags;
+ int err;
hdr = skb_pull_data(skb, sizeof(*hdr));
if (!hdr) {
bt_dev_err(hdev, "ACL packet too small");
- goto drop;
+ kfree_skb(skb);
+ return;
}
handle = __le16_to_cpu(hdr->handle);
@@ -3822,36 +3823,27 @@ static void hci_acldata_packet(struct hci_dev *hdev, struct sk_buff *skb)
hdev->stat.acl_rx++;
- hci_dev_lock(hdev);
- conn = hci_conn_hash_lookup_handle(hdev, handle);
- hci_dev_unlock(hdev);
-
- if (conn) {
- hci_conn_enter_active_mode(conn, BT_POWER_FORCE_ACTIVE_OFF);
-
- /* Send to upper protocol */
- l2cap_recv_acldata(conn, skb, flags);
- return;
- } else {
+ err = l2cap_recv_acldata(hdev, handle, skb, flags);
+ if (err == -ENOENT)
bt_dev_err(hdev, "ACL packet for unknown connection handle %d",
handle);
- }
-
-drop:
- kfree_skb(skb);
+ else if (err)
+ bt_dev_dbg(hdev, "ACL packet recv for handle %d failed: %d",
+ handle, err);
}
/* SCO data packet */
static void hci_scodata_packet(struct hci_dev *hdev, struct sk_buff *skb)
{
struct hci_sco_hdr *hdr;
- struct hci_conn *conn;
__u16 handle, flags;
+ int err;
hdr = skb_pull_data(skb, sizeof(*hdr));
if (!hdr) {
bt_dev_err(hdev, "SCO packet too small");
- goto drop;
+ kfree_skb(skb);
+ return;
}
handle = __le16_to_cpu(hdr->handle);
@@ -3863,34 +3855,28 @@ static void hci_scodata_packet(struct hci_dev *hdev, struct sk_buff *skb)
hdev->stat.sco_rx++;
- hci_dev_lock(hdev);
- conn = hci_conn_hash_lookup_handle(hdev, handle);
- hci_dev_unlock(hdev);
+ hci_skb_pkt_status(skb) = flags & 0x03;
- if (conn) {
- /* Send to upper protocol */
- hci_skb_pkt_status(skb) = flags & 0x03;
- sco_recv_scodata(conn, skb);
- return;
- } else {
+ err = sco_recv_scodata(hdev, handle, skb);
+ if (err == -ENOENT)
bt_dev_err_ratelimited(hdev, "SCO packet for unknown connection handle %d",
handle);
- }
-
-drop:
- kfree_skb(skb);
+ else if (err)
+ bt_dev_dbg(hdev, "SCO packet recv for handle %d failed: %d",
+ handle, err);
}
static void hci_isodata_packet(struct hci_dev *hdev, struct sk_buff *skb)
{
struct hci_iso_hdr *hdr;
- struct hci_conn *conn;
__u16 handle, flags;
+ int err;
hdr = skb_pull_data(skb, sizeof(*hdr));
if (!hdr) {
bt_dev_err(hdev, "ISO packet too small");
- goto drop;
+ kfree_skb(skb);
+ return;
}
handle = __le16_to_cpu(hdr->handle);
@@ -3900,22 +3886,13 @@ static void hci_isodata_packet(struct hci_dev *hdev, struct sk_buff *skb)
bt_dev_dbg(hdev, "len %d handle 0x%4.4x flags 0x%4.4x", skb->len,
handle, flags);
- hci_dev_lock(hdev);
- conn = hci_conn_hash_lookup_handle(hdev, handle);
- hci_dev_unlock(hdev);
-
- if (!conn) {
+ err = iso_recv(hdev, handle, skb, flags);
+ if (err == -ENOENT)
bt_dev_err(hdev, "ISO packet for unknown connection handle %d",
handle);
- goto drop;
- }
-
- /* Send to upper protocol */
- iso_recv(conn, skb, flags);
- return;
-
-drop:
- kfree_skb(skb);
+ else if (err)
+ bt_dev_dbg(hdev, "ISO packet recv for handle %d failed: %d",
+ handle, err);
}
static bool hci_req_is_complete(struct hci_dev *hdev)
diff --git a/net/bluetooth/iso.c b/net/bluetooth/iso.c
index 3d98cb6291da6..616c2fef91d24 100644
--- a/net/bluetooth/iso.c
+++ b/net/bluetooth/iso.c
@@ -2314,14 +2314,31 @@ static void iso_disconn_cfm(struct hci_conn *hcon, __u8 reason)
iso_conn_del(hcon, bt_to_errno(reason));
}
-void iso_recv(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
+int iso_recv(struct hci_dev *hdev, u16 handle, struct sk_buff *skb, u16 flags)
{
- struct iso_conn *conn = hcon->iso_data;
+ struct hci_conn *hcon;
+ struct iso_conn *conn;
struct skb_shared_hwtstamps *hwts;
__u16 pb, ts, len, sn;
- if (!conn)
- goto drop;
+ hci_dev_lock(hdev);
+
+ hcon = hci_conn_hash_lookup_handle(hdev, handle);
+ if (!hcon) {
+ hci_dev_unlock(hdev);
+ kfree_skb(skb);
+ return -ENOENT;
+ }
+
+ conn = iso_conn_hold_unless_zero(hcon->iso_data);
+ hcon = NULL;
+
+ hci_dev_unlock(hdev);
+
+ if (!conn) {
+ kfree_skb(skb);
+ return -EINVAL;
+ }
pb = hci_iso_flags_pb(flags);
ts = hci_iso_flags_ts(flags);
@@ -2377,7 +2394,7 @@ void iso_recv(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
hci_skb_pkt_status(skb) = flags & 0x03;
hci_skb_pkt_seqnum(skb) = sn;
iso_recv_frame(conn, skb);
- return;
+ goto done;
}
if (pb == ISO_SINGLE) {
@@ -2455,6 +2472,9 @@ void iso_recv(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
drop:
kfree_skb(skb);
+done:
+ iso_conn_put(conn);
+ return 0;
}
static struct hci_cb iso_cb = {
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index 35c57657bcf4e..07b493331fd78 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -7510,13 +7510,24 @@ struct l2cap_conn *l2cap_conn_hold_unless_zero(struct l2cap_conn *c)
return c;
}
-void l2cap_recv_acldata(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
+int l2cap_recv_acldata(struct hci_dev *hdev, u16 handle,
+ struct sk_buff *skb, u16 flags)
{
+ struct hci_conn *hcon;
struct l2cap_conn *conn;
int len;
- /* Lock hdev to access l2cap_data to avoid race with l2cap_conn_del */
- hci_dev_lock(hcon->hdev);
+ /* Lock hdev for hci_conn, and race on l2cap_data vs. l2cap_conn_del */
+ hci_dev_lock(hdev);
+
+ hcon = hci_conn_hash_lookup_handle(hdev, handle);
+ if (!hcon) {
+ hci_dev_unlock(hdev);
+ kfree_skb(skb);
+ return -ENOENT;
+ }
+
+ hci_conn_enter_active_mode(hcon, BT_POWER_FORCE_ACTIVE_OFF);
conn = hcon->l2cap_data;
@@ -7524,12 +7535,13 @@ void l2cap_recv_acldata(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
conn = l2cap_conn_add(hcon);
conn = l2cap_conn_hold_unless_zero(conn);
+ hcon = NULL;
- hci_dev_unlock(hcon->hdev);
+ hci_dev_unlock(hdev);
if (!conn) {
kfree_skb(skb);
- return;
+ return -EINVAL;
}
BT_DBG("conn %p len %u flags 0x%x", conn, skb->len, flags);
@@ -7643,6 +7655,7 @@ void l2cap_recv_acldata(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
unlock:
mutex_unlock(&conn->lock);
l2cap_conn_put(conn);
+ return 0;
}
static struct hci_cb l2cap_cb = {
diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c
index ab0cf442d57b9..298c2a9ab4df8 100644
--- a/net/bluetooth/sco.c
+++ b/net/bluetooth/sco.c
@@ -1458,22 +1458,39 @@ static void sco_disconn_cfm(struct hci_conn *hcon, __u8 reason)
sco_conn_del(hcon, bt_to_errno(reason));
}
-void sco_recv_scodata(struct hci_conn *hcon, struct sk_buff *skb)
+int sco_recv_scodata(struct hci_dev *hdev, u16 handle, struct sk_buff *skb)
{
- struct sco_conn *conn = hcon->sco_data;
+ struct hci_conn *hcon;
+ struct sco_conn *conn;
- if (!conn)
- goto drop;
+ hci_dev_lock(hdev);
+
+ hcon = hci_conn_hash_lookup_handle(hdev, handle);
+ if (!hcon) {
+ hci_dev_unlock(hdev);
+ kfree_skb(skb);
+ return -ENOENT;
+ }
+
+ conn = sco_conn_hold_unless_zero(hcon->sco_data);
+ hcon = NULL;
+
+ hci_dev_unlock(hdev);
+
+ if (!conn) {
+ kfree_skb(skb);
+ return -EINVAL;
+ }
BT_DBG("conn %p len %u", conn, skb->len);
- if (skb->len) {
+ if (skb->len)
sco_recv_frame(conn, skb);
- return;
- }
+ else
+ kfree_skb(skb);
-drop:
- kfree_skb(skb);
+ sco_conn_put(conn);
+ return 0;
}
static struct hci_cb sco_cb = {
--
2.51.0
next prev parent reply other threads:[~2025-12-03 15:49 UTC|newest]
Thread overview: 173+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-03 15:26 [PATCH 6.17 000/146] 6.17.11-rc1 review Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 001/146] can: kvaser_usb: leaf: Fix potential infinite loop in command parsers Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 002/146] can: gs_usb: gs_usb_xmit_callback(): fix handling of failed transmitted URBs Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 003/146] can: gs_usb: gs_usb_receive_bulk_callback(): check actual_length before accessing header Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 004/146] can: gs_usb: gs_usb_receive_bulk_callback(): check actual_length before accessing data Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 005/146] Bluetooth: btusb: mediatek: Fix kernel crash when releasing mtk iso interface Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 006/146] Bluetooth: hci_core: Fix triggering cmd_timer for HCI_OP_NOP Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 007/146] Bluetooth: hci_sock: Prevent race in socket write iter and sock bind Greg Kroah-Hartman
2025-12-03 15:26 ` Greg Kroah-Hartman [this message]
2025-12-03 15:26 ` [PATCH 6.17 009/146] Bluetooth: SMP: Fix not generating mackey and ltk when repairing Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 010/146] veth: reduce XDP no_direct return section to fix race Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 011/146] drm/bridge: sii902x: Fix HDMI detection with DRM_BRIDGE_ATTACH_NO_CONNECTOR Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 012/146] net: phy: mxl-gpy: fix bogus error on USXGMII and integrated PHY Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 013/146] platform/x86: intel: punit_ipc: fix memory corruption Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 014/146] net: aquantia: Add missing descriptor cache invalidation on ATL2 Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 015/146] net: phy: mxl-gpy: fix link properties on USXGMII and internal PHYs Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 016/146] net: lan966x: Fix the initialization of taprio Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 017/146] drm/xe: Fix conversion from clock ticks to milliseconds Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 018/146] net/mlx5e: Fix validation logic in rate limiting Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 019/146] team: Move team device type change at the end of team_port_add Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 020/146] net: sxgbe: fix potential NULL dereference in sxgbe_rx() Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 021/146] xsk: avoid overwriting skb fields for multi-buffer traffic Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 022/146] xsk: avoid data corruption on cq descriptor number Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 023/146] drm/amdgpu: fix cyan_skillfish2 gpu info fw handling Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 024/146] dma-direct: Fix missing sg_dma_len assignment in P2PDMA bus mappings Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 025/146] net: wwan: mhi: Keep modem name match with Foxconn T99W640 Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 026/146] net: dsa: sja1105: fix SGMII linking at 10M or 100M but not passing traffic Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 027/146] eth: fbnic: Fix counter roll-over issue Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 028/146] net: atlantic: fix fragment overflow handling in RX path Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 029/146] net: mctp: unconditionally set skb->dev on dst output Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 030/146] net: fec: cancel perout_timer when PEROUT is disabled Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 031/146] net: fec: do not update PEROUT if it is enabled Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 032/146] net: fec: do not allow enabling PPS and PEROUT simultaneously Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 033/146] net: fec: do not register PPS event for PEROUT Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 034/146] iio: st_lsm6dsx: Fixed calibrated timestamp calculation Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 035/146] usb: gadget: renesas_usbf: Handle devm_pm_runtime_enable() errors Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 036/146] mailbox: mailbox-test: Fix debugfs_create_dir error checking Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 037/146] mailbox: mtk-cmdq: Refine DMA address handling for the command buffer Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 038/146] mailbox: pcc: dont zero error register Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 039/146] spi: spi-cadence-quadspi: Remove duplicate pm_runtime_put_autosuspend() call Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 040/146] spi: spi-cadence-quadspi: Enable pm runtime earlier to avoid imbalance Greg Kroah-Hartman
2025-12-03 15:26 ` [PATCH 6.17 041/146] fs/namespace: fix reference leak in grab_requested_mnt_ns Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 042/146] afs: Fix delayed allocation of a cells anonymous key Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 043/146] ovl: fail ovl_lock_rename_workdir() if either target is unhashed Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 044/146] riscv: dts: allwinner: d1: fix vlenb property Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 045/146] spi: tegra114: remove Kconfig dependency on TEGRA20_APB_DMA Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 046/146] spi: amlogic-spifc-a1: Handle devm_pm_runtime_enable() errors Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 047/146] spi: spi-nxp-fspi: Add OCT-DTR mode support Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 048/146] spi: nxp-fspi: Propagate fwnode in ACPI case as well Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 049/146] spi: bcm63xx: fix premature CS deassertion on RX-only transactions Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 050/146] afs: Fix uninit var in afs_alloc_anon_key() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 051/146] timekeeping: Fix error code in tk_aux_sysfs_init() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 052/146] Revert "drm/amd/display: Move setup_stream_attribute" Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 053/146] Revert "perf/x86: Always store regs->ip in perf_callchain_kernel()" Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 054/146] iio: buffer-dma: support getting the DMA channel Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 055/146] iio: buffer-dmaengine: enable .get_dma_dev() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 056/146] iio: buffer: support getting dma channel from the buffer Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 057/146] iio: humditiy: hdc3020: fix units for temperature and humidity measurement Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 058/146] iio: humditiy: hdc3020: fix units for thresholds and hysteresis Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 059/146] iio: imu: st_lsm6dsx: fix array size for st_lsm6dsx_settings fields Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 060/146] iio: pressure: bmp280: correct meas_time_us calculation Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 061/146] iio:common:ssp_sensors: Fix an error handling path ssp_probe() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 062/146] iio: adc: stm32-dfsdm: fix st,adc-alt-channel property handling Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 063/146] iio: accel: bmc150: Fix irq assumption regression Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 064/146] iio: accel: fix ADXL355 startup race condition Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 065/146] iio: adc: ad4030: Fix _scale value for common-mode channels Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 066/146] iio: adc: ad7124: fix temperature channel Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 067/146] iio: adc: ad7280a: fix ad7280_store_balance_timer() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 068/146] iio: adc: ad7380: fix SPI offload trigger rate Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 069/146] iio: adc: rtq6056: Correct the sign bit index Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 070/146] MIPS: mm: Prevent a TLB shutdown on initial uniquification Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 071/146] MIPS: mm: kmalloc tlb_vpn array to avoid stack overflow Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 072/146] virtio-net: avoid unnecessary checksum calculation on guest RX Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 073/146] vhost: rewind next_avail_head while discarding descriptors Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 074/146] tracing: Fix WARN_ON in tracing_buffers_mmap_close for split VMAs Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 075/146] ALSA: hda/cirrus fix cs420x MacPro 6,1 inverted jack detection Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 076/146] ALSA: usb-audio: Add DSD quirk for LEAK Stereo 230 Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 077/146] arm64: dts: imx8dxl-ss-conn: swap interrupts number of eqos Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 078/146] arm64: dts: imx8dxl: Correct pcie-ep interrupt number Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 079/146] arm64: dts: imx8qm-mek: fix mux-controller select/enable-gpios polarity Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 080/146] ARM: dts: nxp: imx6ul: correct SAI3 interrupt line Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 081/146] atm/fore200e: Fix possible data race in fore200e_open() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 082/146] Bluetooth: btusb: mediatek: Avoid btusb_mtk_claim_iso_intf() NULL deref Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 083/146] can: rcar_canfd: Fix CAN-FD mode as default Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 084/146] can: sja1000: fix max irq loop handling Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 085/146] can: sun4i_can: sun4i_can_interrupt(): " Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 086/146] ceph: fix crash in process_v2_sparse_read() for encrypted directories Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 087/146] counter: microchip-tcb-capture: Allow shared IRQ for multi-channel TCBs Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 088/146] dm-verity: fix unreliable memory allocation Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 089/146] drivers/usb/dwc3: fix PCI parent check Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 090/146] drm, fbcon, vga_switcheroo: Avoid race condition in fbcon setup Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 091/146] smb: client: fix memory leak in cifs_construct_tcon() Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 092/146] thunderbolt: Add support for Intel Wildcat Lake Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 093/146] slimbus: ngd: Fix reference count leak in qcom_slim_ngd_notify_slaves Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 094/146] nvmem: layouts: fix nvmem_layout_bus_uevent Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 095/146] pmdomain: tegra: Add GENPD_FLAG_NO_STAY_ON flag Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 096/146] r8169: fix RTL8127 hang on suspend/shutdown Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 097/146] regulator: rtq2208: Correct buck group2 phase mapping logic Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 098/146] regulator: rtq2208: Correct LDO2 logic judgment bits Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 099/146] io_uring/net: ensure vectored buffer node import is tied to notification Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 100/146] firmware: stratix10-svc: fix bug in saving controller data Greg Kroah-Hartman
2025-12-03 15:27 ` [PATCH 6.17 101/146] iommufd/driver: Fix counter initialization for counted_by annotation Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 102/146] mm/huge_memory: fix NULL pointer deference when splitting folio Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 103/146] mm/memfd: fix information leak in hugetlb folios Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 104/146] mmc: sdhci-of-dwcmshc: Promote the th1520 reset handling to ip level Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 105/146] mptcp: clear scheduled subflows on retransmit Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 106/146] mptcp: Initialise rcv_mss before calling tcp_send_active_reset() in mptcp_do_fastclose() Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 107/146] serial: 8250: Fix 8250_rsa symbol loop Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 108/146] serial: amba-pl011: prefer dma_mapping_error() over explicit address checking Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 109/146] most: usb: fix double free on late probe failure Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 110/146] usb: cdns3: Fix double resource release in cdns3_pci_probe Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 111/146] usb: gadget: f_eem: Fix memory leak in eem_unwrap Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 112/146] usb: renesas_usbhs: Fix synchronous external abort on unbind Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 113/146] usb: storage: Fix memory leak in USB bulk transport Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 114/146] USB: storage: Remove subclass and protocol overrides from Novatek quirk Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 115/146] usb: storage: sddr55: Reject out-of-bound new_pba Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 116/146] usb: typec: ucsi: psy: Set max current to zero when disconnected Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 117/146] usb: uas: fix urb unmapping issue when the uas device is remove during ongoing data transfer Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 118/146] usb: dwc3: pci: add support for the Intel Nova Lake -S Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 119/146] usb: dwc3: pci: Sort out the Intel device IDs Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 120/146] usb: dwc3: Fix race condition between concurrent dwc3_remove_requests() call paths Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 121/146] xhci: fix stale flag preventig URBs after link state error is cleared Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 122/146] xhci: dbgtty: Fix data corruption when transmitting data form DbC to host Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 123/146] xhci: dbgtty: fix device unregister Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 124/146] USB: serial: ftdi_sio: add support for u-blox EVK-M101 Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 125/146] USB: serial: option: add support for Rolling RW101R-GL Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 126/146] drm: sti: fix device leaks at component probe Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 127/146] drm/i915/psr: Reject async flips when selective fetch is enabled Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 128/146] drm/xe/guc: Fix stack_depot usage Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 129/146] drm/amdgpu: attach tlb fence to the PTs update Greg Kroah-Hartman
2025-12-03 16:03 ` Christian König
2025-12-03 16:24 ` Greg Kroah-Hartman
2025-12-04 8:07 ` Christian König
2025-12-04 16:14 ` Greg Kroah-Hartman
2025-12-03 16:48 ` Deucher, Alexander
2025-12-08 15:31 ` Deucher, Alexander
2025-12-08 23:13 ` Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 130/146] drm/amd/amdgpu: reserve vm invalidation engine for uni_mes Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 131/146] drm/amd/display: Check NULL before accessing Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 132/146] drm/amd/display: Dont change brightness for disabled connectors Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 133/146] drm/amd/display: Increase EDID read retries Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 134/146] net: dsa: microchip: common: Fix checks on irq_find_mapping() Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 135/146] net: dsa: microchip: ptp: " Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 136/146] net: dsa: microchip: Dont free uninitialized ksz_irq Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 137/146] net: dsa: microchip: Free previously initialized ports on init failures Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 138/146] net: dsa: microchip: Fix symetry in ksz_ptp_msg_irq_{setup/free}() Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 139/146] libceph: fix potential use-after-free in have_mon_and_osd_map() Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 140/146] libceph: prevent potential out-of-bounds writes in handle_auth_session_key() Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 141/146] libceph: replace BUG_ON with bounds check for map->max_osd Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 142/146] mm: swap: remove duplicate nr_swap_pages decrement in get_swap_page_of_type() Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 143/146] usb: udc: Add trace event for usb_gadget_set_state Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 144/146] usb: gadget: udc: fix use-after-free in usb_gadget_state_work Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 145/146] Revert "ACPI: Suppress misleading SPCR console message when SPCR table is absent" Greg Kroah-Hartman
2025-12-03 15:28 ` [PATCH 6.17 146/146] spi: cadence-quadspi: Fix cqspi_probe() error handling for runtime pm Greg Kroah-Hartman
2025-12-03 17:23 ` [PATCH 6.17 000/146] 6.17.11-rc1 review Ronald Warsow
2025-12-03 19:02 ` Florian Fainelli
2025-12-03 20:36 ` Achill Gilgenast
2025-12-03 20:56 ` Takeshi Ogasawara
2025-12-03 23:43 ` Shuah Khan
2025-12-04 9:08 ` Jeffrin Thalakkottoor
2025-12-04 16:16 ` Greg Kroah-Hartman
2025-12-05 8:20 ` Jeffrin Thalakkottoor
2025-12-05 11:51 ` Jeffrin Thalakkottoor
2025-12-05 12:11 ` Slade Watkins
2025-12-05 16:19 ` Jeffrin Thalakkottoor
2025-12-04 9:50 ` Naresh Kamboju
2025-12-04 9:50 ` Peter Schneider
2025-12-04 10:00 ` Jon Hunter
2025-12-04 10:27 ` Ron Economos
2025-12-04 10:36 ` Dileep malepu
2025-12-04 11:29 ` Mark Brown
2025-12-05 9:35 ` Miguel Ojeda
2025-12-05 10:51 ` Brett A C Sheffield
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=20251203152346.770142653@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 \
--cc=syzbot+d32d77220b92eddd89ad@syzkaller.appspotmail.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