From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev,
syzbot+4b87489410b4efd181bf@syzkaller.appspotmail.com,
Zhu Yanjun <yanjun.zhu@linux.dev>,
Leon Romanovsky <leon@kernel.org>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.12 053/156] RDMA/rxe: Remove the direct link to net_device
Date: Mon, 6 Jan 2025 16:15:39 +0100 [thread overview]
Message-ID: <20250106151143.732303306@linuxfoundation.org> (raw)
In-Reply-To: <20250106151141.738050441@linuxfoundation.org>
6.12-stable review patch. If anyone has any objections, please let me know.
------------------
From: Zhu Yanjun <yanjun.zhu@linux.dev>
[ Upstream commit 2ac5415022d16d63d912a39a06f32f1f51140261 ]
The similar patch in siw is in the link:
https://git.kernel.org/rdma/rdma/c/16b87037b48889
This problem also occurred in RXE. The following analyze this problem.
In the following Call Traces:
"
BUG: KASAN: slab-use-after-free in dev_get_flags+0x188/0x1d0 net/core/dev.c:8782
Read of size 4 at addr ffff8880554640b0 by task kworker/1:4/5295
CPU: 1 UID: 0 PID: 5295 Comm: kworker/1:4 Not tainted
6.12.0-rc3-syzkaller-00399-g9197b73fd7bb #0
Hardware name: Google Compute Engine/Google Compute Engine,
BIOS Google 09/13/2024
Workqueue: infiniband ib_cache_event_task
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
print_address_description mm/kasan/report.c:377 [inline]
print_report+0x169/0x550 mm/kasan/report.c:488
kasan_report+0x143/0x180 mm/kasan/report.c:601
dev_get_flags+0x188/0x1d0 net/core/dev.c:8782
rxe_query_port+0x12d/0x260 drivers/infiniband/sw/rxe/rxe_verbs.c:60
__ib_query_port drivers/infiniband/core/device.c:2111 [inline]
ib_query_port+0x168/0x7d0 drivers/infiniband/core/device.c:2143
ib_cache_update+0x1a9/0xb80 drivers/infiniband/core/cache.c:1494
ib_cache_event_task+0xf3/0x1e0 drivers/infiniband/core/cache.c:1568
process_one_work kernel/workqueue.c:3229 [inline]
process_scheduled_works+0xa65/0x1850 kernel/workqueue.c:3310
worker_thread+0x870/0xd30 kernel/workqueue.c:3391
kthread+0x2f2/0x390 kernel/kthread.c:389
ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
</TASK>
"
1). In the link [1],
"
infiniband syz2: set down
"
This means that on 839.350575, the event ib_cache_event_task was sent andi
queued in ib_wq.
2). In the link [1],
"
team0 (unregistering): Port device team_slave_0 removed
"
It indicates that before 843.251853, the net device should be freed.
3). In the link [1],
"
BUG: KASAN: slab-use-after-free in dev_get_flags+0x188/0x1d0
"
This means that on 850.559070, this slab-use-after-free problem occurred.
In all, on 839.350575, the event ib_cache_event_task was sent and queued
in ib_wq,
before 843.251853, the net device veth was freed.
on 850.559070, this event was executed, and the mentioned freed net device
was called. Thus, the above call trace occurred.
[1] https://syzkaller.appspot.com/x/log.txt?x=12e7025f980000
Reported-by: syzbot+4b87489410b4efd181bf@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=4b87489410b4efd181bf
Fixes: 8700e3e7c485 ("Soft RoCE driver")
Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev>
Link: https://patch.msgid.link/20241220222325.2487767-1-yanjun.zhu@linux.dev
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/infiniband/sw/rxe/rxe.c | 23 +++++++++++++++++++----
drivers/infiniband/sw/rxe/rxe.h | 3 ++-
drivers/infiniband/sw/rxe/rxe_mcast.c | 22 ++++++++++++++++++++--
drivers/infiniband/sw/rxe/rxe_net.c | 24 ++++++++++++++++++++----
drivers/infiniband/sw/rxe/rxe_verbs.c | 26 +++++++++++++++++++++-----
drivers/infiniband/sw/rxe/rxe_verbs.h | 11 ++++++++---
6 files changed, 90 insertions(+), 19 deletions(-)
diff --git a/drivers/infiniband/sw/rxe/rxe.c b/drivers/infiniband/sw/rxe/rxe.c
index 255677bc12b2..1ba4a0c8726a 100644
--- a/drivers/infiniband/sw/rxe/rxe.c
+++ b/drivers/infiniband/sw/rxe/rxe.c
@@ -40,6 +40,8 @@ void rxe_dealloc(struct ib_device *ib_dev)
/* initialize rxe device parameters */
static void rxe_init_device_param(struct rxe_dev *rxe)
{
+ struct net_device *ndev;
+
rxe->max_inline_data = RXE_MAX_INLINE_DATA;
rxe->attr.vendor_id = RXE_VENDOR_ID;
@@ -71,8 +73,15 @@ static void rxe_init_device_param(struct rxe_dev *rxe)
rxe->attr.max_fast_reg_page_list_len = RXE_MAX_FMR_PAGE_LIST_LEN;
rxe->attr.max_pkeys = RXE_MAX_PKEYS;
rxe->attr.local_ca_ack_delay = RXE_LOCAL_CA_ACK_DELAY;
+
+ ndev = rxe_ib_device_get_netdev(&rxe->ib_dev);
+ if (!ndev)
+ return;
+
addrconf_addr_eui48((unsigned char *)&rxe->attr.sys_image_guid,
- rxe->ndev->dev_addr);
+ ndev->dev_addr);
+
+ dev_put(ndev);
rxe->max_ucontext = RXE_MAX_UCONTEXT;
}
@@ -109,10 +118,15 @@ static void rxe_init_port_param(struct rxe_port *port)
static void rxe_init_ports(struct rxe_dev *rxe)
{
struct rxe_port *port = &rxe->port;
+ struct net_device *ndev;
rxe_init_port_param(port);
+ ndev = rxe_ib_device_get_netdev(&rxe->ib_dev);
+ if (!ndev)
+ return;
addrconf_addr_eui48((unsigned char *)&port->port_guid,
- rxe->ndev->dev_addr);
+ ndev->dev_addr);
+ dev_put(ndev);
spin_lock_init(&port->port_lock);
}
@@ -167,12 +181,13 @@ void rxe_set_mtu(struct rxe_dev *rxe, unsigned int ndev_mtu)
/* called by ifc layer to create new rxe device.
* The caller should allocate memory for rxe by calling ib_alloc_device.
*/
-int rxe_add(struct rxe_dev *rxe, unsigned int mtu, const char *ibdev_name)
+int rxe_add(struct rxe_dev *rxe, unsigned int mtu, const char *ibdev_name,
+ struct net_device *ndev)
{
rxe_init(rxe);
rxe_set_mtu(rxe, mtu);
- return rxe_register_device(rxe, ibdev_name);
+ return rxe_register_device(rxe, ibdev_name, ndev);
}
static int rxe_newlink(const char *ibdev_name, struct net_device *ndev)
diff --git a/drivers/infiniband/sw/rxe/rxe.h b/drivers/infiniband/sw/rxe/rxe.h
index d8fb2c7af30a..fe7f97066732 100644
--- a/drivers/infiniband/sw/rxe/rxe.h
+++ b/drivers/infiniband/sw/rxe/rxe.h
@@ -139,7 +139,8 @@ enum resp_states {
void rxe_set_mtu(struct rxe_dev *rxe, unsigned int dev_mtu);
-int rxe_add(struct rxe_dev *rxe, unsigned int mtu, const char *ibdev_name);
+int rxe_add(struct rxe_dev *rxe, unsigned int mtu, const char *ibdev_name,
+ struct net_device *ndev);
void rxe_rcv(struct sk_buff *skb);
diff --git a/drivers/infiniband/sw/rxe/rxe_mcast.c b/drivers/infiniband/sw/rxe/rxe_mcast.c
index 86cc2e18a7fd..07ff47bae31d 100644
--- a/drivers/infiniband/sw/rxe/rxe_mcast.c
+++ b/drivers/infiniband/sw/rxe/rxe_mcast.c
@@ -31,10 +31,19 @@
static int rxe_mcast_add(struct rxe_dev *rxe, union ib_gid *mgid)
{
unsigned char ll_addr[ETH_ALEN];
+ struct net_device *ndev;
+ int ret;
+
+ ndev = rxe_ib_device_get_netdev(&rxe->ib_dev);
+ if (!ndev)
+ return -ENODEV;
ipv6_eth_mc_map((struct in6_addr *)mgid->raw, ll_addr);
- return dev_mc_add(rxe->ndev, ll_addr);
+ ret = dev_mc_add(ndev, ll_addr);
+ dev_put(ndev);
+
+ return ret;
}
/**
@@ -47,10 +56,19 @@ static int rxe_mcast_add(struct rxe_dev *rxe, union ib_gid *mgid)
static int rxe_mcast_del(struct rxe_dev *rxe, union ib_gid *mgid)
{
unsigned char ll_addr[ETH_ALEN];
+ struct net_device *ndev;
+ int ret;
+
+ ndev = rxe_ib_device_get_netdev(&rxe->ib_dev);
+ if (!ndev)
+ return -ENODEV;
ipv6_eth_mc_map((struct in6_addr *)mgid->raw, ll_addr);
- return dev_mc_del(rxe->ndev, ll_addr);
+ ret = dev_mc_del(ndev, ll_addr);
+ dev_put(ndev);
+
+ return ret;
}
/**
diff --git a/drivers/infiniband/sw/rxe/rxe_net.c b/drivers/infiniband/sw/rxe/rxe_net.c
index 75d1407db52d..8cc64ceeb356 100644
--- a/drivers/infiniband/sw/rxe/rxe_net.c
+++ b/drivers/infiniband/sw/rxe/rxe_net.c
@@ -524,7 +524,16 @@ struct sk_buff *rxe_init_packet(struct rxe_dev *rxe, struct rxe_av *av,
*/
const char *rxe_parent_name(struct rxe_dev *rxe, unsigned int port_num)
{
- return rxe->ndev->name;
+ struct net_device *ndev;
+ char *ndev_name;
+
+ ndev = rxe_ib_device_get_netdev(&rxe->ib_dev);
+ if (!ndev)
+ return NULL;
+ ndev_name = ndev->name;
+ dev_put(ndev);
+
+ return ndev_name;
}
int rxe_net_add(const char *ibdev_name, struct net_device *ndev)
@@ -536,10 +545,9 @@ int rxe_net_add(const char *ibdev_name, struct net_device *ndev)
if (!rxe)
return -ENOMEM;
- rxe->ndev = ndev;
ib_mark_name_assigned_by_user(&rxe->ib_dev);
- err = rxe_add(rxe, ndev->mtu, ibdev_name);
+ err = rxe_add(rxe, ndev->mtu, ibdev_name, ndev);
if (err) {
ib_dealloc_device(&rxe->ib_dev);
return err;
@@ -587,10 +595,18 @@ void rxe_port_down(struct rxe_dev *rxe)
void rxe_set_port_state(struct rxe_dev *rxe)
{
- if (netif_running(rxe->ndev) && netif_carrier_ok(rxe->ndev))
+ struct net_device *ndev;
+
+ ndev = rxe_ib_device_get_netdev(&rxe->ib_dev);
+ if (!ndev)
+ return;
+
+ if (netif_running(ndev) && netif_carrier_ok(ndev))
rxe_port_up(rxe);
else
rxe_port_down(rxe);
+
+ dev_put(ndev);
}
static int rxe_notify(struct notifier_block *not_blk,
diff --git a/drivers/infiniband/sw/rxe/rxe_verbs.c b/drivers/infiniband/sw/rxe/rxe_verbs.c
index 5c18f7e342f2..8a5fc20fd186 100644
--- a/drivers/infiniband/sw/rxe/rxe_verbs.c
+++ b/drivers/infiniband/sw/rxe/rxe_verbs.c
@@ -41,6 +41,7 @@ static int rxe_query_port(struct ib_device *ibdev,
u32 port_num, struct ib_port_attr *attr)
{
struct rxe_dev *rxe = to_rdev(ibdev);
+ struct net_device *ndev;
int err, ret;
if (port_num != 1) {
@@ -49,6 +50,12 @@ static int rxe_query_port(struct ib_device *ibdev,
goto err_out;
}
+ ndev = rxe_ib_device_get_netdev(ibdev);
+ if (!ndev) {
+ err = -ENODEV;
+ goto err_out;
+ }
+
memcpy(attr, &rxe->port.attr, sizeof(*attr));
mutex_lock(&rxe->usdev_lock);
@@ -57,13 +64,14 @@ static int rxe_query_port(struct ib_device *ibdev,
if (attr->state == IB_PORT_ACTIVE)
attr->phys_state = IB_PORT_PHYS_STATE_LINK_UP;
- else if (dev_get_flags(rxe->ndev) & IFF_UP)
+ else if (dev_get_flags(ndev) & IFF_UP)
attr->phys_state = IB_PORT_PHYS_STATE_POLLING;
else
attr->phys_state = IB_PORT_PHYS_STATE_DISABLED;
mutex_unlock(&rxe->usdev_lock);
+ dev_put(ndev);
return ret;
err_out:
@@ -1425,9 +1433,16 @@ static const struct attribute_group rxe_attr_group = {
static int rxe_enable_driver(struct ib_device *ib_dev)
{
struct rxe_dev *rxe = container_of(ib_dev, struct rxe_dev, ib_dev);
+ struct net_device *ndev;
+
+ ndev = rxe_ib_device_get_netdev(ib_dev);
+ if (!ndev)
+ return -ENODEV;
rxe_set_port_state(rxe);
- dev_info(&rxe->ib_dev.dev, "added %s\n", netdev_name(rxe->ndev));
+ dev_info(&rxe->ib_dev.dev, "added %s\n", netdev_name(ndev));
+
+ dev_put(ndev);
return 0;
}
@@ -1495,7 +1510,8 @@ static const struct ib_device_ops rxe_dev_ops = {
INIT_RDMA_OBJ_SIZE(ib_mw, rxe_mw, ibmw),
};
-int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name)
+int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name,
+ struct net_device *ndev)
{
int err;
struct ib_device *dev = &rxe->ib_dev;
@@ -1507,13 +1523,13 @@ int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name)
dev->num_comp_vectors = num_possible_cpus();
dev->local_dma_lkey = 0;
addrconf_addr_eui48((unsigned char *)&dev->node_guid,
- rxe->ndev->dev_addr);
+ ndev->dev_addr);
dev->uverbs_cmd_mask |= BIT_ULL(IB_USER_VERBS_CMD_POST_SEND) |
BIT_ULL(IB_USER_VERBS_CMD_REQ_NOTIFY_CQ);
ib_set_device_ops(dev, &rxe_dev_ops);
- err = ib_device_set_netdev(&rxe->ib_dev, rxe->ndev, 1);
+ err = ib_device_set_netdev(&rxe->ib_dev, ndev, 1);
if (err)
return err;
diff --git a/drivers/infiniband/sw/rxe/rxe_verbs.h b/drivers/infiniband/sw/rxe/rxe_verbs.h
index 3c1354f82283..6573ceec0ef5 100644
--- a/drivers/infiniband/sw/rxe/rxe_verbs.h
+++ b/drivers/infiniband/sw/rxe/rxe_verbs.h
@@ -370,6 +370,7 @@ struct rxe_port {
u32 qp_gsi_index;
};
+#define RXE_PORT 1
struct rxe_dev {
struct ib_device ib_dev;
struct ib_device_attr attr;
@@ -377,8 +378,6 @@ struct rxe_dev {
int max_inline_data;
struct mutex usdev_lock;
- struct net_device *ndev;
-
struct rxe_pool uc_pool;
struct rxe_pool pd_pool;
struct rxe_pool ah_pool;
@@ -406,6 +405,11 @@ struct rxe_dev {
struct crypto_shash *tfm;
};
+static inline struct net_device *rxe_ib_device_get_netdev(struct ib_device *dev)
+{
+ return ib_device_get_netdev(dev, RXE_PORT);
+}
+
static inline void rxe_counter_inc(struct rxe_dev *rxe, enum rxe_counters index)
{
atomic64_inc(&rxe->stats_counters[index]);
@@ -471,6 +475,7 @@ static inline struct rxe_pd *rxe_mw_pd(struct rxe_mw *mw)
return to_rpd(mw->ibmw.pd);
}
-int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name);
+int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name,
+ struct net_device *ndev);
#endif /* RXE_VERBS_H */
--
2.39.5
next prev parent reply other threads:[~2025-01-06 15:37 UTC|newest]
Thread overview: 175+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-06 15:14 [PATCH 6.12 000/156] 6.12.9-rc1 review Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 001/156] platform/x86: mlx-platform: call pci_dev_put() to balance the refcount Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 002/156] drm/amdgpu: fix backport of commit 73dae652dcac Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 003/156] platform/x86: thinkpad-acpi: Add support for hotkey 0x1401 Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 004/156] platform/x86: hp-wmi: mark 8A15 board for timed OMEN thermal profile Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 005/156] selinux: ignore unknown extended permissions Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 006/156] mmc: sdhci-msm: fix crypto key eviction Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 007/156] pmdomain: imx: gpcv2: fix an OF node reference leak in imx_gpcv2_probe() Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 008/156] pmdomain: core: add dummy release function to genpd device Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 009/156] tracing: Have process_string() also allow arrays Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 010/156] block: lift bio_is_zone_append to bio.h Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 011/156] btrfs: use bio_is_zone_append() in the completion handler Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 012/156] RDMA/bnxt_re: Remove always true dattr validity check Greg Kroah-Hartman
2025-01-06 15:14 ` [PATCH 6.12 013/156] sched_ext: fix application of sizeof to pointer Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 014/156] RDMA/mlx5: Enforce same type port association for multiport RoCE Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 015/156] RDMA/bnxt_re: Fix max SGEs for the Work Request Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 016/156] RDMA/bnxt_re: Avoid initializing the software queue for user queues Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 017/156] RDMA/bnxt_re: Avoid sending the modify QP workaround for latest adapters Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 018/156] RDMA/core: Fix ENODEV error for iWARP test over vlan Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 019/156] nvme-pci: 512 byte aligned dma pool segment quirk Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 020/156] wifi: iwlwifi: fix CRF name for Bz Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 021/156] RDMA/bnxt_re: Fix the check for 9060 condition Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 022/156] RDMA/bnxt_re: Add check for path mtu in modify_qp Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 023/156] RDMA/bnxt_re: Fix reporting hw_ver in query_device Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 024/156] RDMA/nldev: Set error code in rdma_nl_notify_event Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 025/156] RDMA/siw: Remove direct link to net_device Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 026/156] RDMA/bnxt_re: Fix max_qp_wrs reported Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 027/156] RDMA/bnxt_re: Disable use of reserved wqes Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 028/156] RDMA/bnxt_re: Add send queue size check for variable wqe Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 029/156] RDMA/bnxt_re: Fix MSN table size for variable wqe mode Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 030/156] RDMA/bnxt_re: Fix the locking while accessing the QP table Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 031/156] net: phy: micrel: Dynamically control external clock of KSZ PHY Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 032/156] drm/bridge: adv7511_audio: Update Audio InfoFrame properly Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 033/156] net: dsa: microchip: Fix KSZ9477 set_ageing_time function Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 034/156] net: dsa: microchip: Fix LAN937X " Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 035/156] selftests: net: local_termination: require mausezahn Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 036/156] netdev-genl: avoid empty messages in napi get Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 037/156] RDMA/hns: Fix mapping error of zero-hop WQE buffer Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 038/156] RDMA/hns: Fix accessing invalid dip_ctx during destroying QP Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 039/156] RDMA/hns: Fix warning storm caused by invalid input in IO path Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 040/156] RDMA/hns: Fix missing flush CQE for DWQE Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 041/156] drm/xe: Revert some changes that break a mesa debug tool Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 042/156] drm/xe/pf: Use correct function to check LMEM provisioning Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 043/156] drm/xe: Fix fault on fd close after unbind Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 044/156] net: stmmac: restructure the error path of stmmac_probe_config_dt() Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 045/156] net: fix memory leak in tcp_conn_request() Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 046/156] net: Fix netns for ip_tunnel_init_flow() Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 047/156] netrom: check buffer length before accessing it Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 048/156] net: pse-pd: tps23881: Fix power on/off issue Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 049/156] net/mlx5: DR, select MSIX vector 0 for completion queue creation Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 050/156] net/mlx5e: macsec: Maintain TX SA from encoding_sa Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 051/156] net/mlx5e: Skip restore TC rules for vport rep without loaded flag Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 052/156] net/mlx5e: Keep netdev when leave switchdev for devlink set legacy only Greg Kroah-Hartman
2025-01-06 15:15 ` Greg Kroah-Hartman [this message]
2025-01-06 15:15 ` [PATCH 6.12 054/156] drm/i915/cx0_phy: Fix C10 pll programming sequence Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 055/156] drm/i915/dg1: Fix power gate sequence Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 056/156] workqueue: add printf attribute to __alloc_workqueue() Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 057/156] netfilter: nft_set_hash: unaligned atomic read on struct nft_set_ext Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 058/156] net: llc: reset skb->transport_header Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 059/156] nvmet: Dont overflow subsysnqn Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 060/156] ALSA: usb-audio: US16x08: Initialize array before use Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 061/156] eth: bcmsysport: fix call balance of priv->clk handling routines Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 062/156] net: mv643xx_eth: fix an OF node reference leak Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 063/156] net: wwan: t7xx: Fix FSM command timeout issue Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 064/156] RDMA/rtrs: Ensure ib_sge list is accessible Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 065/156] RDMA/bnxt_re: Fix error recovery sequence Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 066/156] io_uring/net: always initialize kmsg->msg.msg_inq upfront Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 067/156] net: sfc: Correct key_len for efx_tc_ct_zone_ht_params Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 068/156] net: reenable NETIF_F_IPV6_CSUM offload for BIG TCP packets Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 069/156] net: restrict SO_REUSEPORT to inet sockets Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 070/156] net: wwan: iosm: Properly check for valid exec stage in ipc_mmio_init() Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 071/156] af_packet: fix vlan_get_tci() vs MSG_PEEK Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 072/156] af_packet: fix vlan_get_protocol_dgram() " Greg Kroah-Hartman
2025-01-06 15:15 ` [PATCH 6.12 073/156] ila: serialize calls to nf_register_net_hooks() Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 074/156] net: ti: icssg-prueth: Fix firmware load sequence Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 075/156] net: ti: icssg-prueth: Fix clearing of IEP_CMP_CFG registers during iep_init Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 076/156] btrfs: allow swap activation to be interruptible Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 077/156] perf/x86/intel: Add Arrow Lake U support Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 078/156] wifi: mac80211: fix mbss changed flags corruption on 32 bit systems Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 079/156] wifi: cfg80211: clear link ID from bitmap during link delete after clean up Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 080/156] wifi: mac80211: wake the queues in case of failure in resume Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 081/156] drm/amdgpu: use sjt mec fw on gfx943 for sriov Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 082/156] drm/amdkfd: Correct the migration DMA map direction Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 083/156] ALSA: hda: cs35l56: Remove calls to cs35l56_force_sync_asp1_registers_from_cache() Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 084/156] ALSA: hda/realtek - Add support for ASUS Zen AIO 27 Z272SD_A272SD audio Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 085/156] btrfs: handle bio_split() errors Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 086/156] btrfs: flush delalloc workers queue before stopping cleaner kthread during unmount Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 087/156] ALSA: hda/ca0132: Use standard HD-audio quirk matching helpers Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 088/156] ALSA: hda/realtek: Add new alc2xx-fixup-headset-mic model Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 089/156] sound: usb: enable DSD output for ddHiFi TC44C Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 090/156] sound: usb: format: dont warn that raw DSD is unsupported Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 091/156] spi: spi-cadence-qspi: Disable STIG mode for Altera SoCFPGA Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 092/156] ASoC: audio-graph-card: Call of_node_put() on correct node Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 093/156] ARC: build: disallow invalid PAE40 + 4K page config Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 094/156] ARC: build: Use __force to suppress per-CPU cmpxchg warnings Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 095/156] ARC: bpf: Correct conditional check in check_jmp_32 Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 096/156] bpf: fix potential error return Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 097/156] ksmbd: retry iterate_dir in smb2_query_dir Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 098/156] ksmbd: set ATTR_CTIME flags when setting mtime Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 099/156] smb: client: destroy cfid_put_wq on module exit Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 100/156] net: usb: qmi_wwan: add Telit FE910C04 compositions Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 101/156] Bluetooth: hci_core: Fix sleeping function called from invalid context Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 102/156] irqchip/gic: Correct declaration of *percpu_base pointer in union gic_base Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 103/156] ARC: build: Try to guess GCC variant of cross compiler Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 104/156] bpf: refactor bpf_helper_changes_pkt_data to use helper number Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 105/156] bpf: consider that tail calls invalidate packet pointers Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 106/156] clk: thead: Fix TH1520 emmc and shdci clock rate Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 107/156] scripts/mksysmap: Fix escape chars $ Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 108/156] modpost: fix the missed iteration for the max bit in do_input() Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 109/156] kbuild: pacman-pkg: provide versioned linux-api-headers package Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 110/156] Revert "ALSA: ump: Dont enumeration invalid groups for legacy rawmidi" Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 111/156] RDMA/mlx5: Enable multiplane mode only when it is supported Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 112/156] io_uring/kbuf: use pre-committed buffer address for non-pollable file Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 113/156] ALSA: seq: Check UMP support for midi_version change Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 114/156] ftrace: Fix function profilers filtering functionality Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 115/156] drm/xe: Use non-interruptible wait when moving BO to system Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 116/156] drm/xe: Wait for migration job before unmapping pages Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 117/156] ALSA hda/realtek: Add quirk for Framework F111:000C Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 118/156] ALSA: seq: oss: Fix races at processing SysEx messages Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 119/156] ocfs2: fix slab-use-after-free due to dangling pointer dqi_priv Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 120/156] kcov: mark in_softirq_really() as __always_inline Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 121/156] maple_tree: reload mas before the second call for mas_empty_area Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 122/156] clk: clk-imx8mp-audiomix: fix function signature Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 123/156] scripts/sorttable: fix orc_sort_cmp() to maintain symmetry and transitivity Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 124/156] sched_ext: Fix invalid irq restore in scx_ops_bypass() Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 125/156] RDMA/uverbs: Prevent integer overflow issue Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 126/156] pinctrl: mcp23s08: Fix sleeping in atomic context due to regmap locking Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 127/156] workqueue: Do not warn when cancelling WQ_MEM_RECLAIM work from !WQ_MEM_RECLAIM worker Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 128/156] sky2: Add device ID 11ab:4373 for Marvell 88E8075 Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 129/156] sched_ext: initialize kit->cursor.flags Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 130/156] net/sctp: Prevent autoclose integer overflow in sctp_association_init() Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 131/156] io_uring/rw: fix downgraded mshot read Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 132/156] drm: adv7511: Drop dsi single lane support Greg Kroah-Hartman
2025-01-06 15:16 ` [PATCH 6.12 133/156] dt-bindings: display: adi,adv7533: Drop " Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 134/156] drm: adv7511: Fix use-after-free in adv7533_attach_dsi() Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 135/156] wifi: iwlwifi: mvm: Fix __counted_by usage in cfg80211_wowlan_nd_* Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 136/156] fgraph: Add READ_ONCE() when accessing fgraph_array[] Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 137/156] net: ethernet: ti: am65-cpsw: default to round-robin for host port receive Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 138/156] mm/damon/core: fix ignored quota goals and filters of newly committed schemes Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 139/156] mm/damon/core: fix new damon_target objects leaks on damon_commit_targets() Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 140/156] mm: shmem: fix the update of shmem_falloc->nr_unswapped Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 141/156] mm: shmem: fix incorrect index alignment for within_size policy Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 142/156] fs/proc/task_mmu: fix pagemap flags with PMD THP entries on 32bit Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 143/156] gve: process XSK TX descriptors as part of RX NAPI Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 144/156] gve: clean XDP queues in gve_tx_stop_ring_gqi Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 145/156] gve: guard XSK operations on the existence of queues Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 146/156] gve: fix XDP allocation path in edge cases Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 147/156] gve: guard XDP xmit NDO on existence of xdp queues Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 148/156] gve: trigger RX NAPI instead of TX NAPI in gve_xsk_wakeup Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 149/156] mm/readahead: fix large folio support in async readahead Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 150/156] mm/kmemleak: fix sleeping function called from invalid context at print message Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 151/156] mm: vmscan: account for free pages to prevent infinite Loop in throttle_direct_reclaim() Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 152/156] mm: reinstate ability to map write-sealed memfd mappings read-only Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 153/156] mm: hugetlb: independent PMD page table shared count Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 154/156] mptcp: fix TCP options overflow Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 155/156] mptcp: fix recvbuffer adjust on sleeping rcvmsg Greg Kroah-Hartman
2025-01-06 15:17 ` [PATCH 6.12 156/156] mptcp: dont always assume copied data in mptcp_cleanup_rbuf() Greg Kroah-Hartman
2025-01-06 18:24 ` [PATCH 6.12 000/156] 6.12.9-rc1 review Pavel Machek
2025-01-06 20:26 ` Florian Fainelli
2025-01-06 23:18 ` Shuah Khan
2025-01-07 23:14 ` Shuah Khan
2025-01-06 23:31 ` Justin Forbes
2025-01-07 1:08 ` SeongJae Park
2025-01-07 1:39 ` Peter Schneider
2025-01-07 6:56 ` Ron Economos
2025-01-07 8:33 ` Naresh Kamboju
2025-01-07 9:36 ` Luna Jernberg
2025-01-07 10:29 ` Christian Heusel
2025-01-07 11:36 ` Takeshi Ogasawara
2025-01-07 12:44 ` Jon Hunter
2025-01-07 15:12 ` Mark Brown
2025-01-07 15:47 ` Theodore Ts'o
2025-01-07 16:56 ` Harshit Mogalapalli
2025-01-07 21:24 ` [PATCH 6.12] " Hardik Garg
2025-01-08 12:41 ` [PATCH 6.12 000/156] " Muhammad Usama Anjum
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=20250106151143.732303306@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=leon@kernel.org \
--cc=patches@lists.linux.dev \
--cc=sashal@kernel.org \
--cc=stable@vger.kernel.org \
--cc=syzbot+4b87489410b4efd181bf@syzkaller.appspotmail.com \
--cc=yanjun.zhu@linux.dev \
/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